NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky

Open source

Passkeys for Laravel

Inštalácia
composer require roundly-consulting/passkeys-for-laravel
Vyžaduje: PHP ^8.4 · Laravel ^12.0|^13.0

Prehľad

Natívna WebAuthn / FIDO2 relying party pre prístupové kľúče (passkeys) v Laraveli. Pripraví možnosti, ktoré prehliadač potrebuje, overí podpísané odpovede, ktoré sa vrátia, a uloží každý kľúč k správnemu používateľovi — podľa ceremónií WebAuthn Level 2, s kľúčmi ES256, RS256 aj EdDSA. Balík je zámerne bez controllerov: routy, UI, obmedzovanie pokusov a vydávanie session či tokenov zostávajú vo vašej aplikácii. Licencia MIT a žiadna kryptografia tretích strán — kryptografiu zabezpečuje náš vlastný balík crypto-for-laravel.

Čo získate

Fasáda, DI alebo akcie

Ceremónie na dve volania fasády Passkeys — alebo si injektujte PasskeyService, prípadne spúšťajte jednoúčelové akcie priamo.

Bez mena aj ako druhý faktor

Predvolene prihlásenie bez zadania mena; možnosti viazané na používateľa a očakávania vlastníka pre step-up a viac guardov.

Žiadna kryptografia tretích strán

ES256, RS256 a voliteľne EdDSA overované cez náš vlastný crypto-for-laravel — žiadna externá WebAuthn knižnica.

Rebríček dôvery atestácie

ignore, self alebo basic — formáty packed a Apple, pribalené korene Apple a Google, allowlist AAGUID. Konfigurácia, nie kód.

Bezpečné od základu

Jednorazové challenge viazané na ceremóniu, kontrola originu a RP ID, počítadlo podpisov len dopredu na detekciu klonov a žiadna enumerácia používateľov.

Správa s kontrolou vlastníctva

Passkeys::for($user) vypíše, premenuje a odvolá len kľúče daného účtu — k tomu bezpečný PasskeyResource a udalosti na audit.

Testovanie v cene

Zaznamenávajúci Passkeys::fake() s aserciami pre každú ceremóniu a softvérový VirtualAuthenticator na skutočné end-to-end testy.

Dokumentácia

Inštalácia

Inštalácia cez Composer, publikovanie a spustenie migrácií, potom nastavenie ID relying party a povolených originov.

Konfigurácia

Každý konfiguračný kľúč s env premennou a predvolenou hodnotou — relying party, originy, algoritmy, challenge, atestácia a používateľ.

Model používateľa

Pridajte stĺpec s nepriehľadným identifikátorom, implementujte HasPasskeys cez trait InteractsWithPasskeys a spúšťajte ceremónie priamo z modelu.

Fasáda Passkeys

Celé verejné API na jednej fasáde — Passkeys::for($user) pre všetko, čo patrí jednému účtu, ploché volania pre prihlásenie bez mena.

DI a akcie

Injektujte PasskeyService a získate rovnaké API bez statických volaní, alebo z dôveryhodného kódu spustite jednoúčelovú akciu ceremónie.

Registrácia

Pripravte možnosti pre navigator.credentials.create(), overte atestačnú odpoveď a uložte prístupový kľúč s vlastným názvom.

Prihlásenie

Prihlásenie bez mena alebo viazané na používateľa — pripravte možnosti, overte podpis a zo získaného kľúča spustite vlastnú session.

Druhý faktor a očakávaný vlastník

Vyžiadajte si kľúč konkrétneho účtu, vyžadujte overenie používateľa pre jeden krok a obmedzte prihlásenie na jeden typ vlastníka.

Správa prístupových kľúčov

Všetko pre obrazovku „Vaše prístupové kľúče“ — výpis, premenovanie a odvolanie kľúčov a ich bezpečná serializácia cez PasskeyResource.

Model Passkey a schéma

Polymorfný model Passkey so soft delete — scopes, casty, skryté atribúty, schéma tabuľky a použitie vlastného modelu.

Algoritmy a Ed25519

ES256 a RS256 hneď po inštalácii, Ed25519 (EdDSA) voliteľne s ext-sodium — a žiadny nepreverený algoritmus sa neakceptuje.

Atestácia

Overte, čím autentifikátor naozaj je — trojstupňový rebríček dôvery, formáty packed a Apple, pribalené korene a allowlist AAGUID.

Udalosti

Päť udalostí pre audit a riešenie anomálií — registrácia, prihlásenie, pokles počítadla, odvolanie a premenovanie kľúča.

Výnimky

Jeden základ PasskeyException s typovanými potomkami pre chyby ceremónie, konfigurácie, dekódovania a atestácie — s lokalizovateľnými hláseniami.

Enumy

Prehľad všetkých enumov — overenie používateľa, rezidentný kľúč, typ autentifikátora, atestácia, dôvera a politika počítadla.

Rozšírenie

Vymeňte úložisko challenge, pridajte formát atestácie, nahraďte politiku dôvery alebo implementujte HasPasskeys sami — cez väzby v kontajneri.

Bezpečnostný model

Čo relying party vynucuje pri každej ceremónii — challenge, originy, podpisy, počítadlá, enumerácia — a čo ponecháva na vás.

Testovanie

Zaznamenajte a overte ceremónie cez Passkeys::fake(), alebo spúšťajte skutočné ceremónie end-to-end so softvérovým VirtualAuthenticator.

Požiadavky

PHP 8.4+, Laravel 12 alebo 13 a ext-json — plus ext-sodium, len ak zapnete kľúče Ed25519.

Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

Ďalšie spôsoby podpory vrátane kryptomien

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.