Kimlik Doğrulama & JWT Token'ları
Hedef Kitle: Geliştirici
Sayfa Türü: Referans
JWT Token Yapısı
Header.Payload.Signature
Payload şunları içerir:
├─ sub: user_id
├─ tenant_id: organization_id
├─ role: user_role
├─ email: user_email
├─ iat: issued_at
└─ exp: son kullanma (24 saat)
Token Alma
Giriş (Login) Endpoint'i
POST /auth/login
Request:
{
"email": "user@company.com",
"password": "password123"
}
Response:
{
"token": "eyJhbGc...",
"refreshToken": "eyJhbGc...",
"expiresIn": 86400
}
İsteklerde Token Kullanımı
GET /strategic-cycles
Headers:
Authorization: Bearer eyJhbGc...
X-Tenant-ID: tenant-123
Content-Type: application/json
Token Yenileme
POST /auth/refresh-token
Request:
{
"refreshToken": "eyJhbGc..."
}
Response:
{
"token": "new_jwt_token",
"expiresIn": 86400
}
Hatalar
401 Unauthorized
- Token invalid or expired
- Çözüm: Yenile veya yeniden giriş yap
403 Forbidden
- Token valid but no permission
- Çözüm: Rol/yetkileri kontrol et
Güvenlik İyi Uygulamaları
✅ Her zaman HTTPS kullanın
✅ Token'ı güvenli saklayın
✅ Süresi dolmadan yenileyin
✅ Çıkışta token'ı geçersiz kılın/atın