> ## Documentation Index
> Fetch the complete documentation index at: https://docs.befailproof.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Auth

title: Oturum aç
description: "FailproofAI'da CLI üzerinden oturum açarak hatırlatıcıları ve kişiselleştirilmiş özellikleri etkinleştirin"
-------------------------------------------------------------------------------------------------------------------------

```bash theme={null}
failproofai auth login    # email + one-time code
failproofai auth logout   # revoke this session
failproofai auth whoami   # print the signed-in identity
```

Eski `--login` / `--logout` / `--whoami` bayrak formu hala geriye dönük uyumluluk için takma ad olarak kabul edilmektedir.

Kimlik doğrulama isteğe bağlıdır. İlkeler, gösterge paneli, `/audit` sayfası ve diğer tüm yerel özellikler, oturum açmış olmanız veya olmamanız fark etmeksizin tamamen aynı şekilde çalışır. Oturum açma yüzeyi, **sabit bir kimliğe ihtiyaç duyan** özellikler (bugün yeniden denetim hatırlatıcıları, gelecekte daha fazlası) için bir bağlantı noktası sağlamak amacıyla mevcuttur.

## Oturum açma akışı

```bash theme={null}
failproofai auth login
```

E-posta adresinizi sorar, o adrese 6 haneli bir kerelik kod gönderir, kodu ister ve başarılı olduğunda `~/.failproofai/auth.json` dosyasını yazar (`0600` modu). Aynı oturum daha sonra uygulama içi gösterge panelinde görülebilir — `/audit` sayfasında `[ set a reminder ]` öğesine tıklamak sizi oturum açmış olarak görecektir.

Gösterge paneli, CLI'ye hiç dokunmayan kullanıcılar için `/audit` sayfasında modal bir diyalog olarak aynı akışı gösterir.

## Oturumu kapatma

```bash theme={null}
failproofai auth logout
```

Sunucudaki mevcut oturumu iptal eder ve `~/.failproofai/auth.json` dosyasını siler. API sunucusuna ulaşılamıyorsa, yerel dosya yine de kaldırılır — yerel oturum kapatma niyeti her zaman öncelik alır.

## Kimlik kontrolü

```bash theme={null}
failproofai auth whoami
```

Geçerli bir oturum varsa `<email> (<user uuid>)` öğesini yazdırır ve çıkış kodu 0 ile sonlandırır veya aksi takdirde `not signed in` öğesini yazdırır ve çıkış kodu 1 ile sonlandırır. Süresi dolmaya bir dakika kala arka planda erişim belirtecini sessizce yeniler.

## Kalıcı yeniden denetim hatırlatıcısı

`/audit` sayfasında **`[ set a reminder ]`** öğesine tıkladığınızda (veya düğmenin kapısı açan modal aracılığıyla oturum açtığınızda), gösterge paneli `~/.failproofai/next-audit.json` konumunda küçük bir yardımcı dosya yazar:

```json theme={null}
{
  "next_audit_at": 1780765200,
  "user_email": "you@example.com",
  "set_at": 1780160574
}
```

Bu dosya, kendisinin ayarlandığı e-posta adresiyle sınırlandırılmıştır — CLI oturumunu farklı bir hesaba değiştirmek, önceki kullanıcıya ait olan herhangi bir hatırlatıcıyı gizler. Varsayılan offset **7 gündür** ve zamanlayıcı kullanıma sunulduğunda yapılandırılabilir. `auth.json` gibi `0600` izinleriyle oluşturulur.

Gösterge panelinin `/api/auth/reminder` uç noktası `GET` (oku), `POST` (ayarla / yeniden zamanla) ve `DELETE` (temizle) işlemlerini açığa çıkarır ve etkin bir oturum gerektirir.

## `~/.failproofai/auth.json` içinde neler var

```json theme={null}
{
  "access_token": "eyJhbGc…",
  "refresh_token": "9ede3e…",
  "access_expires_at": 1780160574,
  "refresh_expires_at": 1782748974,
  "user": { "id": "<uuid>", "email": "you@example.com" }
}
```

`0600` izinleriyle oluşturulur (yalnızca sahibin okuma/yazma erişimi). Erişim belirteci 1 saatlik bir HS256 JWT'dir; yenileme belirteci, sunucunun `SHA-256(token)` olarak depoladığı opak bir 256 bitlik rastgele dizedir. Yenileme belirteci yeniden oynatması sunucu tarafında algılanır ve kullanıcı için her oturumu iptal eder.

## Ortam değişkenleri

| Değişken               | Varsayılan                   | Amaç                                                                                                                                |
| ---------------------- | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `FAILPROOF_API_URL`    | `https://api.befailproof.ai` | API sunucusu temel URL'sini geçersiz kılın. Kendi kendini barındıran bir API sunucusu üzerinde yerel geliştirme için kullanışlıdır. |
| `FAILPROOFAI_AUTH_DIR` | `~/.failproofai`             | `auth.json` dosyasının depolandığı yeri geçersiz kılın. Çoğunlukla testler için.                                                    |

Tam liste için [Ortam değişkenleri](/tr/cli/environment-variables) bölümüne bakın.

## Sorun giderme

**"Could not reach the api-server"** — CLI, `FAILPROOF_API_URL` adresine TCP bağlantısı açamıyor. Ağınızı kontrol edin veya kendi kendini barındıran bir API sunucusu çalıştırıyorsanız `FAILPROOF_API_URL` değerini ayarlayın.

**"Rate limited"** — o e-posta için 15 dakikalık bir pencerede çok fazla oturum açma denemesi (5/e-posta) veya IP (20/IP) veya aynı e-posta için önceki istekten sonra 30 saniyelik yeniden gönderme bekleme süresi. Hata mesajı, yeniden deneme-sonrası penceresini saniye cinsinden içerir.

**Code rejected** — OTP yanlış, süresi dolmuş veya satır 5 yanlış tahminin kilitlenmesine ulaştı. Yeni bir kod talep etmek için `failproofai auth login` öğesini tekrar çalıştırın.
