50 lines
1.2 KiB
Markdown
50 lines
1.2 KiB
Markdown
# NextAuth `authOptions` MCP Serve Dokümantasyonu
|
||
|
||
## Amaç
|
||
|
||
Bu dosya, aşağıdaki `authOptions` yapılandırmasının MCP Serve ortamında nasıl çalıştığını ve hangi davranışları içerdiğini açıklar:
|
||
|
||
- Google OAuth girişi
|
||
- GitHub OAuth girişi
|
||
- Credentials tabanlı giriş
|
||
- Backend access/refresh token yönetimi
|
||
- JWT refresh akışı
|
||
- Session içine token ve kullanıcı bilgisi ekleme
|
||
|
||
---
|
||
|
||
## Genel Bakış
|
||
|
||
Bu yapılandırma `NextAuth` kullanır ve oturum stratejisini `jwt` olarak ayarlar.
|
||
Yani kullanıcı oturumu server-side bir veritabanında değil, JWT içinde taşınır.
|
||
|
||
Bu yapılandırmada üç giriş yöntemi vardır:
|
||
|
||
1. **Google Provider**
|
||
2. **GitHub Provider**
|
||
3. **Credentials Provider**
|
||
|
||
Credentials girişinde backend API üzerinden `access` ve `refresh` token alınır.
|
||
Bu token’lar JWT callback içinde saklanır ve gerektiğinde yenilenir.
|
||
|
||
---
|
||
|
||
## Kullanılan Ortam Değişkenleri
|
||
|
||
Aşağıdaki environment variable’lar kullanılır:
|
||
|
||
- `API_BASE_URL`
|
||
- `NEXTAUTH_SECRET`
|
||
- `AUTH_SECRET`
|
||
- `GOOGLE_CLIENT_ID`
|
||
- `GOOGLE_CLIENT_SECRET`
|
||
- `GITHUB_CLIENT_ID`
|
||
- `GITHUB_CLIENT_SECRET`
|
||
|
||
### `API_BASE_URL`
|
||
Backend API adresini belirler.
|
||
|
||
Varsayılan değer:
|
||
|
||
```ts
|
||
http://localhost:8080 |