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

# API Portal Giriş Kayıtları

> API Developer Portal yöneticilerinin kullanıcı giriş ve işlem kayıtlarını görüntülemesi, filtrelemesi ve analiz etmesi için kullanılan login logs (denetim günlükleri) sayfası. Güvenlik izleme, kullanıcı aktivite takibi ve sistem analizi için kapsamlı bir denetim aracıdır.

<Info>
  API Portal Giriş Kayıtları sayfası, portal yöneticilerinin tüm kullanıcı giriş denemelerini, başarılı ve başarısız girişleri, IP adreslerini ve hata mesajlarını detaylı şekilde görüntülemesine ve analiz etmesine olanak tanır. Bu sayfa, güvenlik izleme, kullanıcı aktivite takibi ve sistem sağlığı analizi için kritik bir araçtır.

  Portal bazlı login logların veritabanı ve harici konnektör ayarları için bkz. [Login Log Konnektör Yapılandırması](/tr/admin/system-settings/login-log-konnektor-yapilandirmasi) (Portal Ayarları → Login Log sekmesi).
</Info>

## API Portal Giriş Kayıtları Nedir?

**API Portal Giriş Kayıtları (Login Logs)**, API Developer Portal'a yapılan tüm giriş denemelerinin detaylı kayıtlarını tutan bir denetim (audit) sistemidir. Bu sistem sayesinde:

* **Kullanıcı Giriş Aktivitesi:** Her kullanıcının ne zaman, hangi IP adresinden giriş yaptığını takip edebilirsiniz
* **Güvenlik İzleme:** Şüpheli aktiviteleri, başarısız giriş denemelerini ve potansiyel güvenlik tehditlerini tespit edebilirsiniz
* **Sistem Analizi:** Portal kullanım istatistiklerini, giriş trendlerini ve sistem sağlığını analiz edebilirsiniz
* **Compliance:** Yasal gereksinimler için log kayıtlarını saklayabilir ve raporlayabilirsiniz

### Login Logs'un Önemi

<CardGroup cols={2}>
  <Card title="Güvenlik İzleme" icon="shield-halved">
    Brute force saldırıları, şüpheli IP adresleri ve yetkisiz erişim denemelerini tespit edin
  </Card>

  <Card title="Kullanıcı Takibi" icon="users">
    Kullanıcı aktivitelerini izleyin, en aktif kullanıcıları belirleyin ve kullanım desenlerini analiz edin
  </Card>

  <Card title="Sorun Giderme" icon="wrench">
    Kullanıcıların neden giriş yapamadığını anlayın ve hızlıca çözüm üretin
  </Card>

  <Card title="Compliance ve Denetim" icon="file-contract">
    Yasal gereksinimleri karşılamak için detaylı log kayıtları tutun
  </Card>
</CardGroup>

## Sayfaya Erişim

API Portal Giriş Kayıtları sayfasına erişmek için aşağıdaki adımları takip edin:

<Steps>
  <Step title="Manager Arayüzüne Giriş">
    Apinizer Manager arayüzüne yönetici yetkisi ile giriş yapın
  </Step>

  <Step title="Portal Sekmesine Git">
    Üst menü çubuğunda bulunan **Portal** sekmesine tıklayın
  </Step>

  <Step title="API Portal Ayarlarına Git">
    Portal listesinden ilgili portala tıklayın veya **Portal → Settings** menüsüne gidin
  </Step>

  <Step title="Giriş Kayıtları Sayfasına Erişim">
    Sol menüden veya ayarlar sayfasından **"Giriş Kayıtları"** veya **"Login Logs"** seçeneğine tıklayın

    * Alternatif olarak: **Portal → Accounts/Developers → Login Logs** yolunu takip edebilirsiniz
  </Step>
</Steps>

<Frame caption="API Portal Giriş Kayıtları Ekranı">
  <img src="https://mintcdn.com/apinizer/2MYerClkMAWTFL1i/images/portal/login-logs.png?fit=max&auto=format&n=2MYerClkMAWTFL1i&q=85&s=e96b2592ced04675da9edc04ad1a92de" alt="API Portal Giriş Kayıtları Ekranı" width="1100" data-path="images/portal/login-logs.png" />
</Frame>

## Login Logs ile Neler Yapabilirsiniz?

<CardGroup cols={2}>
  <Card title="Giriş Takibi" icon="right-to-bracket">
    Kullanıcıların hangi tarihlerde, hangi IP adreslerinden giriş yaptığını izleyin. Giriş zamanlarını, sıklığını ve coğrafi dağılımını analiz edin.
  </Card>

  <Card title="Başarı Analizi" icon="chart-line">
    Girişlerin başarılı mı yoksa başarısız mı olduğunu görüntüleyin. Başarı oranlarını hesaplayın ve trendleri takip edin.
  </Card>

  <Card title="Hata İnceleme" icon="triangle-exclamation">
    Başarısız girişlerdeki hata mesajlarını detaylı şekilde inceleyin. Kullanıcıların neden giriş yapamadığını anlayın ve sorunları çözün.
  </Card>

  <Card title="Gelişmiş Filtreleme" icon="filter">
    Belirli kullanıcı, IP adresi veya tarih aralığı bazında arama ve filtreleme yaparak detaylı analiz yapın.
  </Card>

  <Card title="Güvenlik İzleme" icon="shield">
    Şüpheli aktiviteleri, brute force saldırılarını ve yetkisiz erişim denemelerini tespit edin.
  </Card>

  <Card title="Kullanıcı Aktivite Raporlama" icon="file-chart-line">
    Belirli dönemler için kullanıcı aktivite raporları oluşturun ve paylaşın.
  </Card>
</CardGroup>

## Filtreleme ve Arama Özellikleri

Login Logs sayfasında, kayıtları filtrelemek ve aramak için çeşitli seçenekler bulunmaktadır. Bu özellikler sayesinde binlerce kayıt arasından istediğiniz bilgilere hızlıca ulaşabilirsiniz.

### 1. Giriş Tarihi ve Saat Aralığını Belirleme

Kullanıcıların giriş veya işlem aktivitelerini belirli bir tarih aralığında filtrelemek için tarih aralığı belirleyebilirsiniz. Bu özellik, belirli bir dönemdeki aktiviteleri analiz etmek için çok kullanışlıdır.

**Tarih Aralığı Filtreleme Özellikleri:**

| Özellik                     | Açıklama                                                                           |
| --------------------------- | ---------------------------------------------------------------------------------- |
| **Başlangıç Tarihi (From)** | Filtreleme için başlangıç tarihini seçin. Bu tarihten önceki kayıtlar gösterilmez. |
| **Bitiş Tarihi (To)**       | Filtreleme için bitiş tarihini seçin. Bu tarihten sonraki kayıtlar gösterilmez.    |
| **Tarih Formatı**           | Tarih formatı: `YYYY-MM-DD` (Örnek: `2025-01-15`)                                  |
| **Saat Desteği**            | Tarih seçicisinde saat bilgisi de seçilebilir (opsiyonel)                          |

<Steps>
  <Step title="Başlangıç Tarihi Seçimi">
    **From (Başlangıç Tarihi)** alanına filtrelemek istediğiniz başlangıç tarihini giriniz veya tarih seçicisinden seçiniz.

    **Örnek:** `2025-01-01` - 1 Ocak 2025'ten itibaren kayıtları gösterir
  </Step>

  <Step title="Bitiş Tarihi Seçimi">
    **To (Bitiş Tarihi)** alanına filtrelemek istediğiniz bitiş tarihini giriniz veya tarih seçicisinden seçiniz.

    **Örnek:** `2025-01-31` - 31 Ocak 2025'e kadar kayıtları gösterir
  </Step>

  <Step title="Filtreleme Uygulama">
    Tarih aralığını seçtikten sonra, sistem otomatik olarak filtrelemeyi uygular veya **"Apply"** / **"Filtrele"** butonuna tıklayın.
  </Step>

  <Step title="Sonuçları Görüntüleme">
    Sadece belirttiğiniz tarih aralığı içindeki kayıtlar tabloda görüntülenecektir. Tarih aralığı dışındaki kayıtlar gizlenir.
  </Step>
</Steps>

<Tip>
  **Performans İpucu:** Tarih aralığı seçerken performans için maksimum 90 günlük periyot önerilir. Daha uzun dönemler için sayfalama (pagination) kullanılır.
</Tip>

<Info>
  Tarih aralığı seçilmediğinde, sistem varsayılan olarak son 30 günlük kayıtları gösterir. Bu, sayfa yükleme performansını optimize eder.
</Info>

### 2. E-posta Adresine Göre Arama

Belirli bir kullanıcının aktivitelerini incelemek için e-posta bazlı arama yapabilirsiniz. Bu özellik, bir kullanıcının tüm giriş geçmişini görmek için çok kullanışlıdır.

<ParamField path="email" type="string">
  **Search by email** alanına kullanıcının e-posta adresini girerek arama yapabilirsiniz. Bu filtreleme ile sadece ilgili kullanıcıya ait kayıtlar listelenecektir.
</ParamField>

**E-posta Arama Özellikleri:**

| Özellik                       | Açıklama                                                               |
| ----------------------------- | ---------------------------------------------------------------------- |
| **Tam Eşleşme**               | E-posta adresinin tamamını girmeniz gerekir (kısmi arama desteklenmez) |
| **Büyük/Küçük Harf Duyarsız** | E-posta adresi büyük/küçük harf duyarlı değildir                       |
| **Otomatik Filtreleme**       | E-posta girildiğinde otomatik olarak filtreleme uygulanır              |

**Örnek Kullanım Senaryoları:**

<AccordionGroup>
  <Accordion title="Kullanıcı Giriş Geçmişi Kontrolü">
    Bir kullanıcının son giriş zamanını ve başarılı/başarısız giriş denemelerini kontrol etmek için:

    * **E-posta:** `ahmet.yilmaz@example.com`
    * **Tarih Aralığı:** Son 30 gün
    * **Sonuç:** Kullanıcının tüm giriş denemeleri listelenir
  </Accordion>

  <Accordion title="Hesap Kilitleme Sorunu İnceleme">
    Bir kullanıcının hesabının neden kilitlendiğini anlamak için:

    * **E-posta:** `kullanici@example.com`
    * **Status:** FAILURE
    * **Sonuç:** Başarısız giriş denemeleri ve hata mesajları görüntülenir
  </Accordion>
</AccordionGroup>

**Örnek E-posta Adresleri:**

* `ahmet.yilmaz@example.com`
* `developer@company.com`
* `test.user@apinizer.com`

### 3. IP Adresine Göre Arama

Giriş yapılan IP adresine göre filtrelemek için IP bazlı arama özelliğini kullanabilirsiniz. Bu özellik, güvenlik analizi ve şüpheli aktivite tespiti için kritik öneme sahiptir.

<ParamField path="ipAddress" type="string">
  **Search by IP address** alanına ilgili IP adresini giriniz. Bu sayede belirli bir IP'den yapılan aktiviteler görüntülenir.
</ParamField>

**IP Adresi Arama Özellikleri:**

| Özellik         | Açıklama                                            |
| --------------- | --------------------------------------------------- |
| **IP Formatı**  | IPv4 formatında IP adresi (Örnek: `192.168.1.100`)  |
| **Tam Eşleşme** | IP adresinin tamamını girmeniz gerekir              |
| **Çoklu Sonuç** | Aynı IP'den yapılan tüm giriş denemeleri listelenir |

<Warning>
  **Güvenlik Uyarısı:** Aynı IP adresinden kısa sürede çok sayıda başarısız giriş denemesi, potansiyel bir brute force saldırısı işareti olabilir. Bu durumda:

  * IP adresini engelleyin
  * Kullanıcıya bilgi verin
  * Güvenlik ekibini bilgilendirin
  * Ek güvenlik katmanları ekleyin
</Warning>

**IP Adresi Analiz Senaryoları:**

<AccordionGroup>
  <Accordion title="Şüpheli IP Tespiti">
    Belirli bir IP adresinden yapılan tüm giriş denemelerini incelemek için:

    * **IP Adresi:** `192.168.1.100`
    * **Tarih Aralığı:** Son 7 gün
    * **Sonuç:** Bu IP'den yapılan tüm giriş denemeleri listelenir

    <Info>Eğer bu IP'den çok sayıda başarısız deneme varsa, güvenlik önlemi alınmalıdır.</Info>
  </Accordion>

  <Accordion title="Coğrafi Dağılım Analizi">
    Farklı IP adreslerinden gelen erişimleri analiz etmek için:

    * Her IP adresini ayrı ayrı arayın
    * Başarılı ve başarısız giriş oranlarını karşılaştırın
    * Şüpheli lokasyonları tespit edin
  </Accordion>
</AccordionGroup>

**Örnek IP Adresleri:**

* `192.168.1.100` (Yerel ağ)
* `10.0.0.50` (Özel ağ)
* `203.0.113.45` (Genel IP)

## Tablo Kolonları ve Bilgiler

Login Logs tablosunda aşağıdaki bilgiler görüntülenir. Her kolon, giriş denemesi hakkında farklı bir bilgi sağlar.

### Tablo Yapısı

| Kolon            | Açıklama                                          | Format   | Örnek                               |
| ---------------- | ------------------------------------------------- | -------- | ----------------------------------- |
| **Status**       | İşlemin sonucu (Başarılı/Başarısız)               | Badge    | SUCCESS, FAILURE                    |
| **Email**        | Giriş yapmaya çalışan kullanıcının e-posta adresi | String   | `user@example.com`                  |
| **Account Name** | Kullanıcının hesap adı                            | String   | `John Doe`                          |
| **Date**         | İşlemin gerçekleştiği tarih ve saat               | DateTime | `2025-01-15 14:30:25`               |
| **IP Address**   | İşlemin gerçekleştirildiği IP adresi              | String   | `192.168.1.100`                     |
| **Message**      | Hata mesajı veya işlem detayı                     | String   | `Authentication failed -> DISABLED` |

### Status (Durum)

Tabloda yer alan Status sütunu, yapılan işlemin sonucunu belirtir. Bu kolon, giriş denemesinin başarılı mı yoksa başarısız mı olduğunu gösterir.

<ResponseField name="SUCCESS" type="badge">
  **Başarılı:** İşlem başarıyla tamamlanmıştır. Kullanıcı email ve şifresini doğru girmiş ve portala giriş yapmıştır.

  **Ne Zaman Görünür:**

  * Kullanıcı doğru email ve şifre ile giriş yaptığında
  * Hesap aktif ve onaylanmış durumda olduğunda
  * Email doğrulaması tamamlanmış olduğunda

  **Mesaj:** Status SUCCESS olduğunda, Message kolonu genellikle boştur.
</ResponseField>

<ResponseField name="FAILURE" type="badge">
  **Başarısız:** İşlem başarısız olmuştur. Başarısız giriş denemeleri, yetki hataları veya diğer işlem hataları bu durumda görünür.

  **Ne Zaman Görünür:**

  * Yanlış şifre girildiğinde
  * Hesap devre dışı bırakıldığında
  * Email doğrulaması yapılmadığında
  * Admin onayı beklenirken
  * Hesap reddedildiğinde

  **Mesaj:** Status FAILURE olduğunda, Message kolonunda detaylı hata mesajı görüntülenir.
</ResponseField>

### Message (Mesaj)

Başarısız işlemler ile ilgili hata veya uyarı mesajları bu sütunda yer alır. Bu mesajlar, kullanıcının neden giriş yapamadığını açıklar.

**Message Kolonu Özellikleri:**

| Durum       | Mesaj İçeriği | Açıklama                                            |
| ----------- | ------------- | --------------------------------------------------- |
| **SUCCESS** | (Boş)         | Başarılı girişlerde mesaj genellikle boştur         |
| **FAILURE** | Hata mesajı   | Başarısız girişlerde detaylı hata mesajı gösterilir |

<Info>
  Message kolonundaki hata mesajları, sorun giderme ve kullanıcı desteği için çok önemlidir. Bu mesajları dikkatlice inceleyerek kullanıcıların sorunlarını hızlıca çözebilirsiniz.
</Info>

### Email (E-posta Adresi)

<ParamField path="email" type="string">
  **Email:** İşlem yapılan kullanıcının e-posta adresi. Bu, kullanıcının portala giriş yapmak için kullandığı e-posta adresidir.
</ParamField>

**Email Kolonu Özellikleri:**

* E-posta adresi tam olarak görüntülenir
* Bu kolona tıklayarak o kullanıcının tüm kayıtlarını filtreleyebilirsiniz
* E-posta adresi, kullanıcı kimliğini belirlemek için kullanılır

### Account Name (Hesap Adı)

<ParamField path="accountName" type="string">
  **Account Name:** Kullanıcının hesap adı veya görünen adı. Bu, kullanıcının profilinde tanımlı olan isimdir.
</ParamField>

**Account Name Kolonu Özellikleri:**

* Kullanıcının tam adı veya görünen adı gösterilir
* E-posta adresinden farklı olarak, daha okunabilir bir kimlik sağlar
* Bazı durumlarda boş olabilir (kullanıcı adı tanımlanmamışsa)

### Date (Tarih ve Saat)

<ParamField path="date" type="datetime">
  **Date:** İşlemin gerçekleştiği tarih ve saat. Bu, giriş denemesinin tam zamanını gösterir.

  **Format:** `YYYY-MM-DD HH:mm:ss`

  **Örnek:** `2025-01-15 14:30:25`
</ParamField>

**Date Kolonu Özellikleri:**

* Tarih ve saat bilgisi tam olarak görüntülenir
* Saat bilgisi, giriş denemesinin tam zamanını gösterir
* Tarih sıralamasına göre kayıtlar listelenir (en yeni en üstte)

### IP Address (IP Adresi)

<ParamField path="ipAddress" type="string">
  **IP Address:** İşlemin gerçekleştirildiği IP adresi. Bu, kullanıcının giriş yaptığı cihazın veya ağın IP adresidir.

  **Format:** `XXX.XXX.XXX.XXX` (IPv4)

  **Örnek:** `192.168.1.100`
</ParamField>

**IP Address Kolonu Özellikleri:**

* IPv4 formatında IP adresi gösterilir
* Bu kolona tıklayarak o IP'den yapılan tüm giriş denemelerini filtreleyebilirsiniz
* Güvenlik analizi için kritik bilgidir

## API Portal Login Hata Mesajları

API Portal'a giriş yapmaya çalışan kullanıcılar, çeşitli nedenlerle başarısız olabilir. Aşağıda, tüm olası hata durumları ve bunların anlamları detaylı şekilde açıklanmıştır.

<AccordionGroup>
  <Accordion title="1. Admin Onayı Bekleniyor (WAITING_FOR_APPROVEMENT)" icon="clock">
    **Ne Zaman Gösterilir:**

    * Kullanıcı portal'a kayıt olmuş
    * E-posta adresini doğrulamış
    * Ancak admin henüz hesabı onaylamamış
    * Portal Ayarları → Güvenlik → "Auto Approve Account" = PASIF

    **Hata Mesajı:**

    ```
    Authentication failed -> WAITING_FOR_APPROVEMENT
    ```

    **Kullanıcıya Gösterilecek Mesaj:**
    "Hesabınız yönetici onayı bekliyor. Onaylandıktan sonra giriş yapabileceksiniz."

    **Çözüm:**

    * Portal yöneticisi, Portal Management → Developer Accounts bölümünden kullanıcıyı onaylamalıdır
    * Veya Portal Ayarları → Güvenlik'te "Auto Approve Account" özelliğini aktif etmelidir

    <Info>
      Bu durum, manuel onay sürecinin bir parçasıdır. Kullanıcılar, admin onayı beklerken portala giriş yapamazlar.
    </Info>
  </Accordion>

  <Accordion title="2. Email Doğrulaması Yapılmamış (CONFIRMATION_NEEDED)" icon="envelope">
    **Ne Zaman Gösterilir:**

    * Kullanıcı portal'a kayıt olmuş
    * Ancak e-posta adresini doğrulamak için e-postadaki linke tıklamamış
    * E-posta doğrulama zorunlu ise

    **Hata Mesajı:**

    ```
    Authentication failed -> CONFIRMATION_NEEDED
    ```

    **Kullanıcıya Gösterilecek Mesaj:**
    "Lütfen e-posta adresinizi doğrulayın. Kayıt e-postasındaki linke tıklayarak e-posta adresinizi doğrulayabilirsiniz."

    **Çözüm:**

    * Kullanıcı, kayıt sırasında aldığı e-postadaki doğrulama linkine tıklamalıdır
    * E-posta gelmediyse, "E-postamı tekrar gönder" özelliğini kullanabilir

    <Warning>
      E-posta doğrulaması yapılmadan kullanıcı portala giriş yapamaz. Bu, güvenlik için önemli bir adımdır.
    </Warning>
  </Accordion>

  <Accordion title="3. Hesap Devre Dışı (DISABLED)" icon="ban">
    **Ne Zaman Gösterilir:**

    * Kullanıcı 5 kez yanlış şifre girdiğinde otomatik olarak hesap kilitlenir
    * Veya admin tarafından manuel olarak devre dışı bırakıldığında
    * Güvenlik ihlali tespit edildiğinde

    **Hata Mesajı:**

    ```
    Authentication failed -> DISABLED
    ```

    **Kullanıcıya Gösterilecek Mesaj:**
    "Hesabınız devre dışı bırakılmıştır. Lütfen yönetici ile iletişime geçin."

    **Çözüm:**

    * Portal yöneticisi, Portal Management → Developer Accounts bölümünden hesabı tekrar aktif hale getirebilir
    * Kullanıcı, yönetici ile iletişime geçerek hesabının açılmasını talep edebilir

    <Warning>
      **5 Yanlış Şifre = Otomatik Kilitleme:** Kullanıcılar 5 kez yanlış şifre girdiğinde hesapları otomatik olarak DISABLED durumuna geçer. Bu, brute force saldırılarına karşı bir güvenlik önlemidir.
    </Warning>
  </Accordion>

  <Accordion title="4. Başvuru Reddedilmiş (REJECTED)" icon="xmark">
    **Ne Zaman Gösterilir:**

    * Kullanıcının kayıt başvurusu admin tarafından reddedilmiş
    * Admin, Portal Management → Developer Accounts bölümünden kullanıcıyı reddetmiş

    **Hata Mesajı:**

    ```
    Authentication failed -> REJECTED
    ```

    **Kullanıcıya Gösterilecek Mesaj:**
    "Hesap başvurunuz reddedilmiştir. Detaylı bilgi için lütfen yönetici ile iletişime geçin."

    **Çözüm:**

    * Kullanıcı, yeni bir başvuru yapabilir
    * Veya yönetici ile iletişime geçerek red nedeni hakkında bilgi alabilir

    <Info>
      Reddedilen hesaplar, sistemde kayıtlı kalır ancak portala giriş yapamazlar. Yönetici, gerekirse hesabı tekrar onaylayabilir.
    </Info>
  </Accordion>

  <Accordion title="5. Hesap Onaylanmamış (NOT_APPROVED)" icon="hourglass">
    **Ne Zaman Gösterilir:**

    * Hesap onay sürecini geçememiş
    * E-posta doğrulaması yapılmış ancak admin onayı bekleniyor
    * Veya otomatik onay özelliği pasif ve admin henüz onaylamamış

    **Hata Mesajı:**

    ```
    Authentication failed -> NOT_APPROVED
    ```

    **Kullanıcıya Gösterilecek Mesaj:**
    "Hesabınız henüz onaylanmamıştır. Lütfen onay sürecinin tamamlanmasını bekleyin."

    **Çözüm:**

    * Portal yöneticisi, hesabı onaylamalıdır
    * Veya Portal Ayarları → Güvenlik'te "Auto Approve Account" özelliğini aktif etmelidir
  </Accordion>

  <Accordion title="6. Yanlış Şifre (Wrong Password)" icon="key">
    **Ne Zaman Gösterilir:**

    * Kullanıcı yanlış şifre girdiğinde
    * Email adresi doğru ancak şifre yanlış

    **Hata Mesajı:**

    ```
    Account user@apinizer.com failed authentication due to 1 failed login attempts
    ```

    **Kullanıcıya Gösterilecek Mesaj:**
    "Email veya şifre hatalı. Kalan deneme hakkı: X" (X = 5, 4, 3, 2, 1)

    **⚠️ Önemli Güvenlik Mekanizması:**

    * **1. Yanlış Deneme:** `... failed authentication due to 1 failed login attempts`
      * Kalan deneme hakkı: 4
    * **2. Yanlış Deneme:** `... failed authentication due to 2 failed login attempts`
      * Kalan deneme hakkı: 3
    * **3. Yanlış Deneme:** `... failed authentication due to 3 failed login attempts`
      * Kalan deneme hakkı: 2
    * **4. Yanlış Deneme:** `... failed authentication due to 4 failed login attempts`
      * Kalan deneme hakkı: 1
    * **5. Yanlış Deneme:** `... failed authentication due to 5 failed login attempts`
      * Hesap otomatik olarak DISABLED durumuna geçer
    * **6. Deneme:** Artık giriş yapılamaz, hesap kilitlenmiştir

    **Çözüm:**

    * Kullanıcı, doğru şifreyi girmelidir
    * Şifresini unuttuysa, "Forgot Password" özelliğini kullanabilir
    * Hesap kilitlendiyse, yönetici ile iletişime geçmelidir

    <Warning>
      **Otomatik Hesap Kilitleme:** 5 yanlış şifre denemesinden sonra hesap otomatik olarak kilitlenir. Bu, güvenlik için kritik bir önlemdir.
    </Warning>
  </Accordion>

  <Accordion title="7. Kullanıcı Bulunamadı (Account Not Found)" icon="user-slash">
    **Ne Zaman Gösterilir:**

    * Girilen email adresi sistemde kayıtlı değil
    * Kullanıcı henüz portal'a kayıt olmamış
    * Email adresi yanlış yazılmış

    **Hata Mesajı:**

    ```
    Authentication failed -> Account not found
    ```

    **Kullanıcıya Gösterilecek Mesaj:**
    "Bu email adresi ile kayıtlı kullanıcı bulunamadı. Lütfen email adresinizi kontrol edin veya kayıt olun."

    **Çözüm:**

    * Kullanıcı, email adresini kontrol etmelidir
    * Eğer kayıtlı değilse, "Register" butonuna tıklayarak kayıt olmalıdır
    * Email adresini yanlış yazmışsa, doğru email adresini girmelidir
  </Accordion>

  <Accordion title="✅ 8. Başarılı Giriş (Success)" icon="check">
    **Ne Zaman Gösterilir:**

    * Email ve şifre doğru olduğunda
    * Hesap aktif ve onaylanmış durumda olduğunda
    * E-posta doğrulaması tamamlanmış olduğunda
    * Admin onayı verilmiş olduğunda (eğer gerekliyse)

    **Hata Mesajı:**
    Yok (mesaj boş)

    **Status:**
    SUCCESS

    **Kullanıcıya Gösterilecek:**
    Kullanıcı, portal ana sayfasına yönlendirilir ve portala başarıyla giriş yapmış olur.

    <Info>
      Başarılı girişler, Login Logs'da SUCCESS statusü ile görüntülenir. Bu kayıtlar, kullanıcı aktivite takibi için önemlidir.
    </Info>
  </Accordion>
</AccordionGroup>

### 📋 Hata Mesajları Özet Tablosu

Aşağıdaki tablo, tüm hata durumlarını ve çözümlerini özetler:

| Durum                         | Ne Zaman                    | Hata Mesajı                                                             | Kullanıcıya Ne Göster                | Çözüm                                      |
| ----------------------------- | --------------------------- | ----------------------------------------------------------------------- | ------------------------------------ | ------------------------------------------ |
| **WAITING\_FOR\_APPROVEMENT** | Admin onayı bekliyor        | `Authentication failed -> WAITING_FOR_APPROVEMENT`                      | "Hesabınız yönetici onayı bekliyor"  | Admin hesabı onaylamalı                    |
| **CONFIRMATION\_NEEDED**      | Email doğrulanmamış         | `Authentication failed -> CONFIRMATION_NEEDED`                          | "Lütfen email adresinizi doğrulayın" | Email doğrulama linkine tıklanmalı         |
| **DISABLED**                  | 5 yanlış deneme veya manuel | `Authentication failed -> DISABLED`                                     | "Hesabınız devre dışı"               | Admin hesabı aktif etmeli                  |
| **REJECTED**                  | Başvuru reddedilmiş         | `Authentication failed -> REJECTED`                                     | "Hesap başvurunuz reddedilmiştir"    | Yeni başvuru yapılabilir                   |
| **NOT\_APPROVED**             | Onaylanmamış                | `Authentication failed -> NOT_APPROVED`                                 | "Hesabınız henüz onaylanmamıştır"    | Admin hesabı onaylamalı                    |
| **Yanlış Şifre**              | Şifre yanlış                | `Account user@... failed authentication due to N failed login attempts` | "Email veya şifre hatalı. Kalan: X"  | Doğru şifre girilmeli                      |
| **Hesap Yok**                 | Email bulunamadı            | `Authentication failed -> Account not found`                            | "Bu email ile kullanıcı bulunamadı"  | Kayıt olunmalı veya email kontrol edilmeli |
| **Başarılı**                  | Email+şifre doğru           | (boş)                                                                   | Anasayfaya yönlendir                 | -                                          |

## Kullanım Senaryoları ve Örnekler

Login Logs sayfasını kullanarak çeşitli senaryolarda analiz ve sorun giderme yapabilirsiniz. Aşağıda, en yaygın kullanım senaryoları detaylı şekilde açıklanmıştır.

### Senaryo 1: Kullanıcı Aktivite Kontrolü

Bir kullanıcının giriş aktivitelerini kontrol etmek ve son giriş zamanını öğrenmek için:

<Steps>
  <Step title="Tarih Aralığı Seçimi">
    Belirli bir kullanıcının giriş aktivitelerini kontrol etmek için tarih aralığı seçin:

    * **From:** `2025-01-01` (Başlangıç tarihi)
    * **To:** `2025-01-31` (Bitiş tarihi)

    <Info>Son 30 günlük aktiviteyi görmek için varsayılan tarih aralığını kullanabilirsiniz.</Info>
  </Step>

  <Step title="Kullanıcı Filtreleme">
    **Search by email** alanına kullanıcının e-posta adresini girin:

    * Örnek: `ahmet.yilmaz@example.com`

    Sistem otomatik olarak bu kullanıcıya ait tüm kayıtları filtreler.
  </Step>

  <Step title="Sonuçları İnceleme">
    Tabloda şu bilgileri görebilirsiniz:

    * **Son Giriş Zamanı:** En son başarılı giriş tarihi ve saati
    * **Giriş Sıklığı:** Kullanıcının ne sıklıkla giriş yaptığı
    * **Başarılı/Başarısız Oranı:** Toplam giriş denemeleri içinde başarılı olanların yüzdesi
    * **IP Adresleri:** Kullanıcının hangi IP adreslerinden giriş yaptığı

    <Tip>Status kolonundan başarılı (SUCCESS) ve başarısız (FAILURE) girişleri kolayca ayırt edebilirsiniz.</Tip>
  </Step>

  <Step title="Detaylı Analiz">
    Kullanıcının aktivite desenini analiz edin:

    * Hangi saatlerde daha aktif?
    * Hangi IP adreslerinden giriş yapıyor?
    * Başarısız giriş denemeleri var mı?
    * Son giriş ne zaman yapılmış?
  </Step>
</Steps>

### Senaryo 2: Başarısız Giriş Analizi ve Sorun Giderme

Başarısız giriş denemelerini analiz etmek ve kullanıcı sorunlarını çözmek için:

<Steps>
  <Step title="Durum Filtresi Uygulama">
    Tabloda sadece başarısız girişleri görmek için:

    * **Status** kolonuna bakın ve `FAILURE` durumundaki kayıtları inceleyin
    * Veya tarih aralığı ve e-posta filtresi ile başarısız girişleri daraltın

    <Info>Başarısız girişler, kırmızı renkli FAILURE badge'i ile işaretlenir.</Info>
  </Step>

  <Step title="Hata Mesajlarını İnceleme">
    **Message** sütunundan başarısızlık nedenlerini analiz edin:

    **Yaygın Hata Türleri:**

    * `WAITING_FOR_APPROVEMENT` → Admin onayı bekleniyor
    * `CONFIRMATION_NEEDED` → Email doğrulanmamış
    * `DISABLED` → Hesap kilitlenmiş
    * `Wrong Password` → Yanlış şifre

    <Warning>DISABLED durumundaki hesaplar için acil müdahale gerekebilir.</Warning>
  </Step>

  <Step title="Kullanıcıya Yardım Sağlama">
    Hata türüne göre uygun çözümü uygulayın:

    **Admin Onayı Bekleniyor:**

    * Portal Management → Developer Accounts bölümüne gidin
    * Kullanıcıyı bulun ve \[Approve] butonuna tıklayın

    **Email Doğrulanmamış:**

    * Kullanıcıya e-posta doğrulama linkini tekrar göndermesini söyleyin
    * Veya admin olarak email doğrulamasını atlayabilirsiniz

    **Hesap Kilitlenmiş:**

    * Portal Management → Developer Accounts bölümüne gidin
    * Kullanıcıyı bulun ve hesabı aktif hale getirin
    * Kullanıcıya şifre sıfırlama linki gönderebilirsiniz

    **Yanlış Şifre:**

    * Kullanıcıya "Forgot Password" özelliğini kullanmasını önerin
    * Veya admin olarak şifre sıfırlama işlemi yapabilirsiniz
  </Step>

  <Step title="Trend Analizi">
    Başarısız giriş trendlerini analiz edin:

    * Belirli bir kullanıcıda sürekli başarısız deneme var mı?
    * Belirli bir IP adresinden çok sayıda başarısız deneme var mı?
    * Belirli bir zaman diliminde başarısız deneme sayısı arttı mı?

    <Tip>Bu analiz, güvenlik tehditlerini ve sistem sorunlarını erken tespit etmenize yardımcı olur.</Tip>
  </Step>
</Steps>

### Senaryo 3: Güvenlik İhlali Tespiti ve Önleme

Şüpheli aktiviteleri tespit etmek ve güvenlik önlemleri almak için:

<Steps>
  <Step title="IP Bazlı Arama">
    Şüpheli bir IP adresinden yapılan tüm girişleri görüntüleyin:

    * **Search by IP address** alanına IP adresini girin
    * Örnek: `192.168.1.100`

    Sistem, bu IP'den yapılan tüm giriş denemelerini listeler.
  </Step>

  <Step title="Başarısız Deneme Sayısını Kontrol Etme">
    Aynı IP'den çok sayıda başarısız giriş denemesi olup olmadığını kontrol edin:

    **Şüpheli Aktivite İşaretleri:**

    * Kısa sürede (örn: 1 saat içinde) 10+ başarısız deneme
    * Farklı email adresleri ile deneme yapılması
    * Sistematik şekilde artan deneme sayısı

    <Warning>
      **Brute Force Saldırısı İşareti:** Aynı IP'den kısa sürede çok sayıda başarısız giriş denemesi, potansiyel bir brute force saldırısı işareti olabilir. Bu durumda acil güvenlik önlemi alınmalıdır.
    </Warning>
  </Step>

  <Step title="Güvenlik Önlemleri Alma">
    Şüpheli aktivite tespit edildiğinde:

    **1. IP Adresini Engelleme:**

    * Firewall veya güvenlik duvarı ayarlarından IP adresini engelleyin
    * Veya API Gateway seviyesinde IP kısıtlaması uygulayın

    **2. Kullanıcı Hesaplarını Koruma:**

    * Etkilenen kullanıcı hesaplarını kontrol edin
    * Gerekirse şifre değişikliği zorunlu kılın

    **3. Güvenlik Ekibini Bilgilendirme:**

    * Güvenlik ekibine şüpheli aktivite hakkında bilgi verin
    * Log kayıtlarını güvenlik ekibi ile paylaşın

    **4. Ek Güvenlik Katmanları:**

    * CAPTCHA ekleyin
    * Rate limiting uygulayın
    * İki faktörlü kimlik doğrulama (2FA) zorunlu kılın
  </Step>

  <Step title="Raporlama ve Dokümantasyon">
    Güvenlik olaylarını dokümante edin:

    * Şüpheli IP adreslerini kaydedin
    * Olay zamanını ve detaylarını not alın
    * Alınan önlemleri belgelendirin
    * Düzenli güvenlik raporları oluşturun
  </Step>
</Steps>

### Senaryo 4: Sistem Sağlığı ve Performans Analizi

Portal giriş istatistiklerini analiz etmek ve sistem sağlığını değerlendirmek için:

<Steps>
  <Step title="Genel İstatistikleri Görüntüleme">
    Belirli bir dönem için genel istatistikleri analiz edin:

    * **Toplam Giriş Denemesi:** Toplam kaç giriş denemesi yapılmış
    * **Başarılı Giriş Oranı:** Başarılı girişlerin yüzdesi
    * **Başarısız Giriş Oranı:** Başarısız girişlerin yüzdesi
    * **En Aktif Kullanıcılar:** En çok giriş yapan kullanıcılar
  </Step>

  <Step title="Trend Analizi">
    Zaman içindeki trendleri analiz edin:

    * Günlük/haftalık/aylık giriş sayıları
    * Başarı oranındaki değişimler
    * Peak saatler (en yoğun giriş saatleri)
    * Mevsimsel veya dönemsel değişiklikler
  </Step>

  <Step title="Performans Metrikleri">
    Sistem performansını değerlendirin:

    * Ortalama giriş başarı oranı
    * En yaygın hata türleri
    * Kullanıcı memnuniyeti göstergeleri
  </Step>
</Steps>

## Best Practices ve Öneriler

Login Logs sayfasını etkili şekilde kullanmak için aşağıdaki önerileri takip edin:

<CardGroup cols={2}>
  <Card title="Düzenli İnceleme" icon="calendar-check">
    Login Logs'u düzenli olarak inceleyin (günlük veya haftalık). Şüpheli aktiviteleri erken tespit edin.
  </Card>

  <Card title="Otomatik Uyarılar" icon="bell">
    Kritik güvenlik olayları için otomatik uyarılar kurun (örn: 10+ başarısız deneme).
  </Card>

  <Card title="Log Saklama" icon="database">
    Compliance gereksinimleri için logları yeterli süre saklayın (örn: 90 gün, 1 yıl).
  </Card>

  <Card title="Raporlama" icon="file-chart-line">
    Düzenli güvenlik ve kullanım raporları oluşturun ve paylaşın.
  </Card>

  <Card title="Kullanıcı Eğitimi" icon="graduation-cap">
    Kullanıcılara güvenli şifre kullanımı ve giriş güvenliği hakkında bilgi verin.
  </Card>

  <Card title="Güvenlik Politikaları" icon="shield">
    Güvenlik politikaları oluşturun ve uygulayın (örn: şifre karmaşıklığı, 2FA).
  </Card>
</CardGroup>

## Önemli Hatırlatmalar

<Warning>
  **5 Yanlış Şifre = Otomatik Kilitleme**

  Kullanıcılar 5 kez yanlış şifre girdiğinde hesapları otomatik olarak DISABLED durumuna geçer. Bu, brute force saldırılarına karşı kritik bir güvenlik önlemidir.

  **Yönetici Aksiyonu:**

  * Kilitlenen hesapları düzenli olarak kontrol edin
  * Kullanıcılara hesap kilitleme hakkında bilgi verin
  * Gerekirse hesabı aktif hale getirin
</Warning>

<Info>
  **Log Saklama Politikası**

  Compliance gereksinimleri için logları yeterli süre saklayın ve düzenli olarak kontrol edin. Farklı sektörler için farklı saklama süreleri gerekebilir:

  * **Genel:** 90 gün
  * **Finans:** 1 yıl veya daha uzun
  * **Sağlık:** Yasal gereksinimlere göre
  * **Kamu:** Yasal gereksinimlere göre
</Info>

<Tip>
  **Düzenli Raporlama**

  Güvenlik ve kullanım trendlerini takip etmek için düzenli raporlar oluşturun:

  * **Günlük:** Kritik güvenlik olayları
  * **Haftalık:** Genel aktivite özeti
  * **Aylık:** Detaylı analiz ve trend raporu
  * **Yıllık:** Yıllık güvenlik ve kullanım raporu
</Tip>

## Sonuç

API Portal Giriş Kayıtları sayfası, portal güvenliğini izlemek, kullanıcı aktivitelerini takip etmek ve sistem sağlığını analiz etmek için güçlü bir araçtır. Bu sayfayı düzenli olarak kullanarak:

✅ Güvenlik tehditlerini erken tespit edebilirsiniz\
✅ Kullanıcı sorunlarını hızlıca çözebilirsiniz\
✅ Sistem performansını optimize edebilirsiniz\
✅ Compliance gereksinimlerini karşılayabilirsiniz\
✅ Detaylı analiz ve raporlama yapabilirsiniz

<CardGroup cols={2}>
  <Card title="Kullanıcı Takibi" icon="users">
    Tüm kullanıcı giriş denemelerini detaylı şekilde takip edin ve en aktif kullanıcıları analiz edin
  </Card>

  <Card title="Güvenlik İzleme" icon="shield">
    Şüpheli aktiviteleri ve güvenlik ihlallerini hızlıca tespit edin, başarısız giriş trendlerini izleyin
  </Card>

  <Card title="Sistem Analizi" icon="chart-line">
    Portal giriş istatistiklerini, performans metriklerini ve sistem sağlığını raporlayın
  </Card>

  <Card title="Compliance" icon="file-contract">
    Yasal gereksinimleri karşılamak için log kayıtlarını saklayın ve düzenli raporlar oluşturun
  </Card>

  <Card title="Coğrafi Dağılım" icon="globe">
    Farklı IP adreslerinden gelen erişimleri ve lokasyon bazlı aktiviteleri analiz edin
  </Card>

  <Card title="Otomatik Koruma" icon="lock">
    5 yanlış şifre sonrası otomatik hesap kilitleme ile güvenliği sağlayın
  </Card>
</CardGroup>
