Politika nedir?

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

Apigee Edge, "politikalar" kullanarak kod yazmadan API davranışını "programlamanıza" olanak tanır. Politika, belirli ve sınırlı bir yönetim işlevini uygulayan bir modüle benzer. Politikalar, API'ye yaygın yönetim özelliklerini kolayca ve güvenilir bir şekilde eklemenizi sağlamak için tasarlanmıştır. Politikalar; güvenlik, hız sınırlama, dönüştürme ve aracılık gibi özellikler sunarak bu işlevselliği kendi başınıza kodlamanız ve sürdürmeniz gerekmesini önler.

Apigee Edge tarafından sağlanan politika türleriyle sınırlı değilsiniz. Ayrıca, API proxy işlevselliğini genişleten ve Apigee politikaları tarafından desteklenen temel yönetim özelliklerinin üzerine yenilikler eklemenizi sağlayan özel komut dosyaları ve kodlar (ör. JavaScript ve Node.js uygulamaları) da yazabilirsiniz.

Politika ekleme ve uygulama hakkında bilgi edinmek için bu videoyu izleyin.

Politika türleri

Teknik olarak politika, XML biçimli bir yapılandırma dosyasıdır. Her politika türünün yapısı (örneğin, zorunlu ve isteğe bağlı yapılandırma öğeleri) bir XML şeması ile tanımlanır. XML araçları konusunda uzmansanız Github'daki API Platform örneklerinde politika şemaları hakkında bilgi edinmeniz faydalı olacaktır.

Edge politika türleri aşağıdaki işlevsel kategorilerde gruplandırılır:

Trafik yönetimi

Trafik yönetimi kategorisindeki politikalar, istek ve yanıt mesajlarının bir API proxy'si üzerinden akışını kontrol etmenizi sağlar. Bu politikalar hem operasyonel hem de işletme düzeyinde kontrolü destekler. Bu ayarlar, ham işleme hızı üzerinde kontrol sağlar ve trafiği uygulama bazında da kontrol edebilir. Trafik yönetimi politikası türleri, kotaları zorunlu kılmanıza olanak tanır ve hizmet reddi saldırılarını azaltmanıza yardımcı olur.

Güvenlik

Güvenlik kategorisindeki politikalar kimlik doğrulama, yetkilendirme ve içeriğe dayalı güvenliği destekler.

Uyumlulaştırma

Uyumlulaştırma kategorisindeki politikalar, API proxy'lerinden geçerken iletileri etkin bir şekilde değiştirmenize olanak tanır. Bu işlevler, ileti biçimlerini XML'den JSON'a (ve tam tersi) ya da bir XML biçiminden başka bir XML biçimine dönüştürmenize olanak tanır. Ayrıca, iletileri ayrıştırmanıza, yeni iletiler oluşturmanıza ve giden iletilerdeki değerleri değiştirmenize olanak tanır. Aracılık politikaları, API Hizmetleri tarafından sunulan temel hizmetlerle de etkileşime girerek çalışma zamanında uygulamalar, geliştiriciler, güvenlik jetonları ve API ürünleri hakkında veri almanızı sağlar.

Uzantı

Uzantı kategorisindeki politikalar, API hizmetlerinin genişletilebilirliğinden yararlanarak seçtiğiniz programlama dilinde özel davranışlar uygulamanıza olanak tanır.

Her politika türü, Politika referansına genel bakış dokümanında ayrıntılı olarak açıklanmıştır. Bu konuda, genel etkileşim gösterilmekte, politikaların nasıl oluşturulacağı ve API proxy yapılandırmasında akışlara nasıl ekleneceği açıklanmaktadır.

Politika değişikliklerini dağıtma

Politika değişikliklerinin geçerli olması için API proxy düzeltmesini bir ortama dağıtmanız gerekir. Bir politika ekledikten veya mevcut bir politikada değişiklik yaptıktan sonra, değişiklikleri dağıtmak için yönetim kullanıcı arayüzünü ya da yönetim API'sini kullanın.

Politika yaptırımını doğrulama

Bir politikanın düzgün şekilde uygulandığını doğrulamak için API'nin bir HTTP istemcisi tarafından çağrılması gerekir. Bu kota yapılandırmasını doğrulamak için API'ye kota politikasında belirlediğiniz kota sınırını aşan birden fazla istek gönderin. (Aşağıdaki istekte ProxyEndpoint'te temel yol ayarı olarak yapılandırılan URI yolu /weather'dır.)

http://{org_name}-test.apigee.net/weather/forecastrss?w=12797282

Bir dakika içinde birden fazla istek gönderdikten sonra aşağıdaki hata mesajını görürsünüz:

{  
   "fault":{  
      "faultstring":"policies.ratelimit.QuotaViolation",
      "detail":{  
         "errorcode":"policies.ratelimit.QuotaViolation"
      }
   }
}

Bu, kota politikasının API Hizmetleri tarafından zorunlu kılındığını gösterir.

Politika tabanlı hata yönetimi

Yukarıdaki hata mesajının biçimine dikkat edin. faultstring mülkü ve errorcode mülkü içerir. Çoğu durumda, bu hataları işlemek için bazı davranışlar uygulamanız gerekir. Örneğin, uygulamasının kotayı aştığı bir geliştiriciye özelleştirilmiş bir mesaj göndermek isteyebilirsiniz.

Hata işleme hakkında daha fazla bilgi için Hataları işleme başlıklı makaleyi inceleyin.

En iyi uygulamalar: Ortak politika kümeleri

API proxy'leri, temel yönetim şartlarını karşılamak için genellikle aşağıdaki politikaları uygular:

Temel API anahtarı doğrulama

ProxyEndpoint İstek Akışı:
  1. SpikeArrest
  2. XMLThreatProtection veya JSONThreatProtection
  3. API anahtarı doğrulama
  4. Kota
  5. ResponseCache
ProxyEndpoint Yanıt Akışı:
  1. ResponseCache

Temel dönüştürme: JSON'dan XML'ye

İstek Akışı:
  1. SpikeArrest
  2. JSONThreatProtection
  3. API anahtarı doğrulama
  4. Kota
  5. JSONToXML
Yanıt Akışı:
  1. XMLToJSON
  2. ResponseCache