Laravel Sanctum ile SPA ve Mobil API Güvenliği

Kaan Atalay

Kaan Atalay

09 May 2024

Modern web ve mobil uygulamalar, genellikle bir Single Page Application (SPA) veya mobil istemci ve bir API sunucusu şeklinde yapılandırılır. Laravel Sanctum, bu tür uygulamalar için basit ve güvenli bir kimlik doğrulama sistemi sunar.

1. Laravel Sanctum Nedir?

Sanctum, API token tabanlı kimlik doğrulama ve SPA kimlik doğrulaması için hafif bir çözüm sağlar. Kullanıcıların uygulamanıza güvenli bir şekilde erişmesini ve etkileşimde bulunmasını sağlar.

2. Kurulum

composer require laravel/sanctum

config/app.php dosyasında SanctumServiceProvider'ı kaydedin ve migrasyonları çalıştırın:

php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate

3. API Tokenları Oluşturma

Kullanıcılar için API tokenları oluşturabilirsiniz.

$token = $user->createToken('mobil-uygulama')->plainTextToken;

4. Token Doğrulama

API isteklerinde Authorization başlığında token'ı gönderin.

Authorization: Bearer YOUR_TOKEN_HERE

5. Middleware Ayarları

api middleware grubuna sanctum middleware'ini ekleyin.

Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
    return $request->user();
});

6. SPA Kimlik Doğrulaması

Sanctum, SPA'lar için oturum tabanlı kimlik doğrulaması sağlar. sessions, cookies ve CSRF protection kullanır.

  • kernel.php dosyasında EnsureFrontendRequestsAreStateful middleware'ini ekleyin.

7. CSRF Koruması

SPA'larda CSRF korumasını sağlamak için frontend tarafında ilk istekle sanctum/csrf-cookie endpoint'ine istek yapın.

8. CORS Ayarları

config/cors.php dosyasında izin verilen origin'leri ve başlıkları yapılandırın.

9. Mobil Uygulamalarda Kullanım

Mobil uygulamalarda API tokenlarını güvenli bir şekilde saklayın ve isteklerde kullanın. Keychain veya Secure Storage gibi yöntemlerle token'ı saklayabilirsiniz.

10. Token İzinleri ve Kapsamlar

Tokenlara belirli yetkiler atayabilirsiniz.

$token = $user->createToken('mobil-uygulama', ['create', 'update'])->plainTextToken;

Yetki kontrolü için middleware kullanabilirsiniz.

Sonuç

Laravel Sanctum, SPA ve mobil uygulamalarınız için basit ve etkili bir kimlik doğrulama çözümü sunar. Güvenliği artırmak ve kullanıcı deneyimini iyileştirmek için Sanctum'u projelerinize entegre edebilirsiniz. Atalay Tech olarak, güvenli ve ölçeklenebilir uygulamalar geliştirmek için uzman ekibimizle hizmetinizdeyiz. Daha fazla bilgi için bizimle iletişime geçin.

Dijital Dönüşüm Ortağınız

Atalay Tech, yenilikçi web yazılım, mobil uygulama ve e-ticaret çözümleri sunan dinamik bir teknoloji şirketidir. Müşteri odaklı yaklaşımımızla iş süreçlerinizi hızlandırıyor ve teknolojiyi verimli bir şekilde kullanmanıza yardımcı oluyoruz. Modern yazılım mimarileri ve yüksek performanslı uygulamalarla iş dünyasında öne çıkmanızı sağlıyoruz.

Kurumsal
İletişim
Blog

Telif Hakkı © 2025 atalay.tech