> ## 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.

# Yetki Gereksinimleri

> Elasticsearch'te superuser yetkisinin doğrudan kullanılmasından kaçınmak isteyen kullanıcılar ve sistemler için Apinizer entegrasyonu özelinde gerekli minimum ve önerilen rol gereksinimlerini detaylandırır. Rol bazlı yetkilendirme yapılandırmalarını ve örnekleri sağlar.

<Info>
  Elasticsearch'de rol bazlı kullanıcı oluşturabilmek için kimlik doğrulama konfigürasyonunun yapılması gerekmektedir. [Detaylı bilgi için tıklayınız.](/tr/setup/elasticsearch/basit-kimlik-dogrulama.mdx)
</Info>

## Apinizer'da Yapılan Temel İşlemler

| İşlev                                     | Elasticsearch Rolü | Açıklama                             |
| ----------------------------------------- | ------------------ | ------------------------------------ |
| Document indexing (API log yazma)         | write              | Log verilerini Elasticsearch'e yazma |
| Document indexing (Audit log yazma)       | write              | Audit loglarını indexe yazma         |
| Document indexing (Token log yazma)       | write              | Token loglarını indexe yazma         |
| Document indexing (Application log yazma) | write              | Uygulama loglarını indexe yazma      |
| Search operations                         | read               | Log verilerini sorgulama ve arama    |
| Get document operations                   | read               | Belirli document'leri okuma          |
| Bulk operations                           | write              | Toplu veri yazma işlemleri           |

## Apinizer'da Yapılabilen Yönetim İşlemleri

| İşlev                                          | Elasticsearch Rolü                                         | Açıklama                                                   |
| ---------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- |
| Index Lifecycle Policy (ILM) oluşturma/yönetme | manage\_ilm                                                | ILM policy'lerini oluşturma ve yönetme                     |
| Index Lifecycle Policy silme                   | manage\_ilm                                                | ILM policy'lerini silme                                    |
| Index Template Oluşturma/Yönetme               | manage\_index\_templates                                   | Index template'lerini oluşturma ve yönetme                 |
| Yeni indeks oluşturma (ILM/Rollover ile)       | create\_index veya daha kapamlısı manage (indeks seviyesi) | Yeni indekslerin otomatik veya manuel olarak oluşturulması |

## Apinizer'da Yapılabilen Monitoring İşlemleri

| İşlev                             | Elasticsearch Rolü | Açıklama                             |
| --------------------------------- | ------------------ | ------------------------------------ |
| Cluster health kontrolü           | monitor            | Cluster sağlık durumunu kontrol etme |
| Cluster istatisklerini alma       | monitor            | Cluster istatistiklerini okuma       |
| Node istatistiklerini alma        | monitor            | Node istatistiklerini okuma          |
| Thread pool istatistiklerini alma | monitor            | Thread pool istatistiklerini okuma   |
| Index istatistiklerini alma       | monitor            | Index istatistiklerini okuma         |
| CPU ve disk kullanım oranları     | monitor            | Sistem kaynak kullanımını izleme     |

## Önerilen Rol Kombinasyonları

### Minimum Gereksinimler (Sadece Log Yazma/Okuma)

<Warning>
  Bu minimum gereksinimler sadece temel log yazma ve okuma işlemleri için yeterlidir.
</Warning>

* `write` (kendi indekslerine)
* `read` (kendi indekslerine)

### Apinizer Ekranlarının Stabil Kullanımı İçin Tavsiye Edilen Minimum Gereksinimler

<Tip>
  API proxy, ILM, Index Template, Monitoring vb. özellikleri kullanabilmek için aşağıdaki roller gereklidir.
</Tip>

* `write` (kendi indekslerine)
* `read` (kendi indekslerine)
* `create` (kendi indekslerine)
* `index` (kendi indekslerine)
* `delete` (kendi indekslerine)
* `monitor` (kendi indekslerine)
* `manage` (kendi indekslerine)
* `monitor` (cluster düzeyinde)
* `manage_ilm` (cluster düzeyinde)
* `manage_index_templates` (cluster düzeyinde)

## Örnek Rol Yapılandırmaları

### Minimum Yetki Rolü (Kendi İndeksine Log Yazma/Okuma vb)

<Warning>
  **Apinizer Elasticsearch Entegrasyonunda Dikkat Edilecekler**

  Aşağıdaki minimum rolün kullanımında Apinizer arayüzü üzerinde Apinizer-Elasticsearch entegrasyonu tamamlanamaz. Bu entegrasyonun tamamlanabilmesi için yetkili bir Elasticsearch kullanıcısı ile Index template'lerin ve ILM policy'lerin manuel olarak oluşturulması gerekmektedir. [Detaylı bilgi için tıklayınız.](/tr/setup/elasticsearch/manuel-ilm-politikasi-ve-template-olusturma.mdx)

  Ayrıca minimum yetki kullamında normalde arayüz ile yapılabilen bir takım konfigürasyonlar kısıtlı yetkilerden dolayı yapılamayacaktır. (index rollover v.b)
</Warning>

```bash theme={null}
curl --request PUT \
  --url '<ELASTICSEARCH_ACCESS_URL>/_security/role/apinizer_basic?pretty=' \
  --header 'Authorization: Basic <BASE64_ENCODED_AUTH>' \
  --header 'Content-Type: application/json' \
  --data '{
  "cluster": [
    "monitor"
  ],
  "indices": [
    {
      "names": ["apinizer-log-apiproxy-<INDEX_KEY>*"],
      "privileges": ["read", "write", "create", "index", "delete","monitor"]
    }
  ]
}'
```

### Tavsiye Edilen Minimum Rol Gereksinimleri (ILM, Rollover, Index Template Yönetimi ile)

```bash theme={null}
curl --request PUT \
  --url '<ELASTICSEARCH_ACCESS_URL>/_security/role/apinizer_minimum_roles?pretty=' \
  --header 'Authorization: Basic <BASE64_ENCODED_AUTH>' \
  --header 'Content-Type: application/json' \
  --data '{
  "cluster": [
    "monitor",
		"manage_ilm",
		"manage_index_templates"
  ],
  "indices": [
    {
      "names": ["apinizer-log-apiproxy-<INDEX_KEY>*"],
      "privileges": ["read", "write", "create", "index", "delete","monitor","manage"]
    },
	{
      "names": [".monitoring-*", ".kibana*"],
      "privileges": ["read"]
	}
  ]
}'
```

### Tam Özellik Rolü (Tüm Yönetim İşlemleri)

```bash theme={null}
curl --request PUT \
  --url '<ELASTICSEARCH_ACCESS_URL>/_security/role/apinizer_all_needed_roles?pretty=' \
  --header 'Authorization: Basic <BASE64_ENCODED_AUTH>' \
  --header 'Content-Type: application/json' \
  --data '{
   "cluster": [
  "monitor",
 	"manage_ilm",
 	"manage_index_templates",
 	"create_snapshot",
 	"monitor_snapshot"
   ],
   "indices": [
     {
       "names": ["apinizer-log-apiproxy-<INDEX_KEY>*"],
       "privileges": ["all"]
     },
 	{
   "names": [".monitoring-*", ".kibana*"],
   "privileges": ["read"]
 	}
 ]
}'
```

## Kullanıcı Oluşturma Örneği

```bash theme={null}
curl --request POST \
  --url <ELASTICSEARCH_ACCESS_URL>/_security/user/apinizer_user \
  --header 'Authorization: Basic <BASE64_ENCODED_AUTH>' \
  --header 'Content-Type: application/json' \
  --data '{
    "password":"<PASSWORD>",
    "roles": ["apinizer_minimum_roles"],
    "full_name": "Apinizer Recommended User",
    "email": "<MAIL>"
  }'
```

## Rol Eksiklerinin Apinizer Üzerindeki Etkileri

Apinizer ile Elasticsearch'e erişmek için kullandığınız kullanıcıya tam yetki vermediğinizde bazı ekran özellikleri kısıtlanır. Bu durumda alternatif çözümler mümkündür.

### Cluster Privileges Eksikliği

| Eksik Rol                | Apinizer'daki Etkisi                                                                                                    | Alternatif Çözüm                                                                                                                                     |
| ------------------------ | ----------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| monitor                  | Cluster health kontrolü yapılamaz; CPU/disk kullanımı görüntülenemez; Elasticsearch durumu dashboard'da gösterilmez.    | Manuel monitoring araçları kullanın.                                                                                                                 |
| manage\_ilm              | ILM policy'leri Apinizer arayüzünden oluşturulamaz; Lifecycle yönetimi yapılamaz; Rollover işlemleri otomatik çalışmaz. | ILM policy'lerini manuel olarak oluşturun. [Detaylı bilgi için tıklayınız.](/tr/setup/elasticsearch/manuel-ilm-politikasi-ve-template-olusturma.mdx) |
| manage\_index\_templates | Index template'leri Apinizer'dan oluşturulamaz; Yeni index'ler yanlış yapılandırma ile oluşabilir.                      | Template'leri manuel olarak tanımlayın. [Detaylı bilgi için tıklayınız.](/tr/setup/elasticsearch/manuel-ilm-politikasi-ve-template-olusturma.mdx)    |

### Index Privileges Eksikliği

| Eksik Rol                                    | Apinizer'daki Etkisi                                                             | Alternatif Çözüm                      |
| -------------------------------------------- | -------------------------------------------------------------------------------- | ------------------------------------- |
| write                                        | Log verileri yazılamaz. API trafiği kaydedilmez. Audit logları oluşturulamaz.    | **KRİTİK - Temel işlevler çalışmaz.** |
| read                                         | Log sorgulama yapılamaz. Analytics ekranları boş kalır. Raporlama çalışmaz.      | **KRİTİK - Veri analizi yapılamaz.**  |
| create\_index veya daha kapsamlı olan manage | Yeni index'ler oluşturulamaz. İlk kurulum tamamlanamaz (ILM/rollover durumunda). | Manuel index oluşturma gerekir        |

### Öneri: Aşamalı Yetki Verme

* **Başlangıç:** Belirlemiş olduğunuz roller ile entegrasyonu sağlayın.
* **İhtiyaç Anında:** Gereken rolleri tek tek ekleyin.
* **Test:** Her rol Eklendikten sonra ilgili Apinizer özelliğini test edin.
