Skip to main content
Bu doküman spesifik bir politikanın detaylı kullanımını anlatır. Eğer Apinizer politika yapısını ilk kez kullanıyorsanız veya politikaların genel çalışma prensiplerini öğrenmek istiyorsanız, öncelikle Politika Nedir? sayfasını okumanızı öneririz.

Genel Bakış

Amacı Nedir?

  • API Proxy (API Vekil Sunucusu) yanıt veya isteğini JOSE standartlarına uygun biçimde JWT olarak yeniden paketleyerek tüketici entegrasyonlarını basitleştirmek.
  • Uygulama servisleri arasında taşınan claim verilerini imza ve şifreleme katmanları ile güvence altına almak.
  • JWK kasası ile entegre çalışarak anahtar yönetiminin merkezi ve denetlenebilir biçimde sürdürülmesini sağlamak.
  • Koşul motoru desteğiyle belirli endpoint, header ya da ortam kombinasyonlarında dinamik olarak tetiklenmek.
  • Ek claim haritası ve veri manipülasyonu hedefleri sayesinde kurumlara özgü token zenginleştirmelerini kod değişikliği olmadan yönetmek.

Çalışma Prensibi

  1. İstek Gelişi: API Gateway’e gelen her HTTP/HTTPS isteği için, istemin kaynak IP adresi tespit edilir.
  2. Politika Kontrolü: JOSE Uygulama politikası aktif ise, sistem aşağıdaki sırayla kontrol yapar:
  • Condition (koşul) tanımlı mı? Varsa koşul sağlanıyor mu?
  • Politika aktif mi (active=true)?
  • Variable kullanılıyor mu yoksa Apinizer default mı?
  1. Token Üretim ve Güvenlik Katmanı: Hedef alan belirlendikten sonra claim seti toplanır, ek claim haritası eklenir, imza ve isteğe bağlı şifreleme için anahtar kaynağı (Embedded JWK veya Dynamic HTTP) seçimine göre işlem uygulanır.
  2. Karar Verme:
  • Eşleşme Var: Üretilen JWT belirtilen hedefe (gövde, Authorization header, değişken veya Boş) yazılır ve trafik devam eder.
  • Eşleşme Yok: Politika devre dışı kalır, istek orijinal içeriğiyle iletilir.
  1. Hata İşleme: Politika kuralına uymayan istekler için özelleştirilebilir HTTP durum kodu ve hata mesajı döndürülür.

Özellikler ve Yetenekler

Temel Özellikler

  • Esnek JOSE Hedefi: Token üretim çıktısı gövde (Gövde), Authorization başlığı (Authorization Başlığı), seçilen değişken (Değişkenden Seç) veya boş hedef (Boş) olarak ayarlanabilir; yanıt manipülasyonlarını kolaylaştırır.
  • JWT Claims Claim ve Escape JSON String: Hedef Boş değilse, ham verinin hangi claim adıyla payload’a yazılacağı (jwtClaimsClaim) ve JSON string’in escape edilip edilmeyeceği (escapeJsonString) ayarlanabilir.
  • Hazır Claim Anahtarları: Issuer, Subject, Audience, Expiration, Issue Time, JWT ID ve Type (header’a tip bilgisi ekleme) gibi çekirdek claim alanları anahtar/kilit kombinasyonlarıyla yönetilir.
  • Ek Claim Haritası: Tür kontrollü MapValue desteğiyle metin, liste veya sayısal claim’ler arayüzden eklenip düzenlenebilir.
  • Aktif/Pasif Durum Kontrolü: Politikanın aktif veya pasif durumunu kolayca değiştirme (active/passive toggle). Pasif durumda politika uygulanmaz ancak yapılandırması saklanır.
  • Koşul Bazlı Uygulama: Query Builder ile karmaşık koşullar oluşturarak politikanın ne zaman uygulanacağını belirleme (örn: sadece belirli endpoint’lere veya header değerlerine göre).

İleri Düzey Özellikler

  • Anahtar Kaynağı Modu (Key Source Mode): İmza ve şifreleme için anahtar Gömülü (Secret Manager’daki JWK) veya Dinamik HTTP (HTTP isteği ile uzaktan anahtar çekme) olarak seçilebilir.
  • Dinamik Anahtar Çekme (Dynamic Key Fetching): Dinamik HTTP seçildiğinde HTTP isteği (Test Console), Anahtar Çıkarma Değişkeni (Key Extraction Variable), Anahtar Formatı (Otomatik Algıla, Genel Anahtar, Özel Anahtar, Sertifika, JWK JSON), Anahtar Algoritması, Kid (isteğe bağlı), önbellek ayarları (Uygula Kriteri değişkeni, Kapasite, TTL, Önbellek Depolama Tipi, Cache Geçersiz Kılma Başlıklarına Uy, Bağlantı Zaman Aşımı, Hata İşleme Tipi), Anahtar Hatasında Tekrar Dene, Doğrulama Hatasında Cache’i Geçersiz Kıl ve Try It (Yanıtı Ayrıştır) butonu ile test edilebilir. Settings sekmesinde güvenli bağlantıyı Yapılandır ile düzenleyebilirsiniz (Test Console ile uyumlu).
  • JWK Yönetim Entegrasyonu: Gömülü modda Secret Manager üzerinden JWK arama, seçim, güncelleme ve yeni anahtar üretimi tek tıklamayla yapılır.
  • Çift Katmanlı Güvenlik: Aynı istekte imza ve şifreleme kombinasyonu uygulanarak token bütünlüğü ve gizliliği eşzamanlı sağlanır.
  • Veri Manipülasyonu Senkronizasyonu: Oluşturulan JWT/JWE için Injection Target (encoded claims target) ve decode sonrası değişken ataması (decoded claims target variable) ile zincir politikalar arasında veri paylaşımı yapılır.
  • Export/Import Özelliği: Politika yapılandırmasını ZIP dosyası olarak export etme. Farklı ortamlara (Development, Test, Production) import etme. Versiyon kontrolü ve yedekleme imkanı.
  • Policy Group ve Proxy Group Desteği: Birden fazla politikayı Policy Group içinde yönetme. Proxy Group’lara toplu politika atama. Merkezi güncelleme ve deploy işlemleri.
  • Deploy ve Versiyonlama: Politika değişikliklerini canlı ortama deploy etme. Hangi API Proxy’lerde kullanıldığını görme (Policy Usage). Proxy Group ve Policy Group kullanım raporları.

Kullanım Senaryoları

Politika Parametrelerini Yapılandırma

Bu adımda, kullanıcı yeni bir politika oluşturabilir ya da mevcut politika parametrelerini yapılandırarak erişim kurallarını belirleyebilir. Tanımlanan parametreler, politikanın çalışma şeklini (örneğin hangi hedefe token yazılacağı, koşullu aktivasyonlar, imza/şifreleme kaynağı vb.) doğrudan etkiler. Bu sayede politika hem kuruma özel gereksinimlere göre özelleştirilebilir hem de merkezi olarak yönetilebilir.

Yeni JOSE Uygulama Politikası Oluşturma

JOSE Uygulama Politikası JOSE Uygulama Politikası

Yapılandırma Adımları

Sekmeler (Definition dışında): Definition, Condition, Error Message Customization; sayfa modunda ayrıca API Proxies Using Policy ve API Proxy Groups Using Policy sekmeleri görünür. Koşullar ve Hata Mesajı Özelleştirme panellerinin açıklaması için Politika Nedir? sayfasındaki Koşullar ve Hata Mesajı Özelleştirme (Error Message Customization) bölümlerini inceleyebilirsiniz. Hata mesajı yapılandırmasının tüm katmanları, öncelik sırası ve senaryo örnekleri için Hata Mesajı Yapılandırma Rehberi sayfasına bakın.

Politikayı Silme

Bu politikanın silme adımları ve kullanımdayken uygulanacak işlemler için Politika Yönetimi sayfasındaki Akıştan Politika Kaldırma bölümüne bakabilirsiniz.

Politikayı Dışa/İçe Aktarma

Bu politikanın dışa aktarma (Export) ve içe aktarma (Import) adımları için Export/Import sayfasına bakabilirsiniz.

Politikayı API’ye Bağlama

Bu politikanın API’lere nasıl bağlanacağına ilişkin süreç için Politika Yönetimi sayfasındaki Politikayı API’ye Bağlama bölümüne bakabilirsiniz.

İleri Düzey Özellikler

Best Practices

Yapılması Gerekenler ve En İyi Uygulamalar

Güvenlik En İyi Uygulamaları

Kaçınılması Gerekenler

Performans İpuçları

Sık Sorulan Sorular (SSS)