iToverDose/Yazılım· 9 MAYIS 2026 · 08:00

Laravel'de Yerel Passkey'ler:Tam bir Rehber

Laravel, yerel passkey desteğiyle birlikte geliyor. Artık üçüncü taraf paketlere ihtiyaç duymadan passkey ekleyebilirsiniz.

DEV Community1 dk okuma0 Yorumlar

Laravel'de uzun bir süredir passkey eklemek, üçüncü taraf paketlere başvurma veya WebAuthn törenlerini el ile oluşturma anlamına geliyordu. Ancak Nisan 2026'da Laravel, laravel/passkeys adlı bir paket çıkardı. Bu paket, Taylor Otwell tarafından yazılmış ve sunucu paketi, npm istemcisi ve Fortify entegrasyonu gibi üç parçadan oluşuyor. Bu parçalar, şifresiz kimlik doğrulama için birlikte çalışıyor.

Paketin İçeriği

Paket, üç bileşenden oluşuyor: sunucu tarafı paketi, npm istemcisi ve Fortify entegrasyonu. Sunucu tarafı paketi, WebAuthn törenlerini yönetiyor, passkeys veritabanı tablosunu yönetiyor ve oturum açma, onaylama ve kimlik bilgileri yönetimi için rotalar kaydediyor.

Npm istemcisi, tarayıcı tarafı tören koordinasyonunu yönetiyor ve React, Vue ve Svelte için ilk sınıf yardımcılar sunuyor.

Fortify entegrasyonu, paketi Fortify ile 함께 çalışmasını sağlıyor. Bu, Features::passkeys() metodunu kullanarak paketi etkinleştirmek ve config/fortify.php dosyasında passkeys bölümünü yapılandırmak anlamına geliyor.

Kurulum

Paketi kurmak için önce Composer paketini çekmelisiniz:

composer require laravel/passkeys

Ardından, göçleri çalıştırarak passkeys tablosunu oluşturmalısınız:

php artisan vendor:publish --tag=passkeys-migrations
php artisan migrate

Son olarak, .env dosyasınıza bir gizli anahtar eklemelisiniz. Bu, kullanıcıların passkey ilişkilerini özel tutmanıza yardımcı olur:

PASSKEYS_USER_HANDLE_SECRET=your-random-secret-here

Kullanıcı Modelini Yapılandırma

Kullanıcı modelinize PasskeyUser sözleşmesini ve PasskeyAuthenticatable özelliğini eklemelisiniz:

namespace AppModels;
use IlluminateFoundationAuthUser as Authenticatable;
use LaravelPasskeysContractsPasskeyUser;
use LaravelPasskeysPasskeyAuthenticatable;

class User extends Authenticatable implements PasskeyUser
{
    use PasskeyAuthenticatable;
    // Modelin geri kalanı...
}

Bu özelliğin varsayımı, users tablosunun name ve email sütunlarına sahip olmasıdır. Authenticators, bu değerleri kayıt sırasında ve hesap seçimi sırasında gösterecektir.

Fortify Entegrasyonu

Eğer Laravel Fortify kullanıyorsanız, passkey'leri etkinleştirmek için sadece bir satır kod yeter:

use LaravelFortifyFeatures;
'features' => [
    Features::registration(),
    Features::resetPasswords(),
    Features::emailVerification(),
    Features::passkeys(), // Bu satırı ekleyin
],

Fortify, otomatik olarak passkey rotalarını kaydeder ve sözleşmeleri bağlar. Sunucu tarafında başka bir değişiklik yoktur. Mevcut yetkilendirme kurulumuz, politikalar ve kapılar ile birlikte kalır.

Gelecekte, Laravel'in yerel passkey desteği, geliştiricilerin şifresiz kimlik doğrulama için daha basit ve güvenli bir yol sunmasını sağlayacaktır. Bu, özellikle kullanıcıların parolalarını hatırlamakta zorlandıkları veya parolaların güvenlik riskleri nedeniyle kullanılmadığı durumlarda faydalı olacaktır.

Yapay zeka özeti

Laravel, yerel passkey desteğiyle birlikte geliyor. Artık üçüncü taraf paketlere ihtiyaç duymadan passkey ekleyebilirsiniz. Şifresiz kimlik doğrulama için daha basit ve güvenli bir yol.

Yorumlar

00
YORUM BIRAK
ID #DXK43T

0 / 1200 KARAKTER

İnsan doğrulaması

3 + 8 = ?

Editör onayı sonrası yayına girer

Moderasyon · Spam koruması aktif

Henüz onaylı yorum yok. İlk yorumu sen bırak.