Aracılığıyla paylaş


Öğretici: API'nizi dönüştürme ve koruma

UYGULANANLAR: Tüm API Management katmanları

Bu öğreticide, API'nizi korumak veya dönüştürmek için ilkeleri yapılandırmayı öğreneceksiniz. İlkeler, API'nin davranışını değiştiren bir API'nin isteği veya yanıtı üzerinde sıralı olarak çalıştırılacak deyimlerden oluşan bir koleksiyondur.

İpucu

API ekipleri bu özelliği çalışma alanlarında kullanabilir. Çalışma alanları, API'lere ve kendi API çalışma zamanı ortamlarına yalıtılmış yönetim erişimi sağlar.

Örneğin, özel bir yanıt üst bilgisi ayarlamak isteyebilirsiniz. Alternatif olarak, api'nin geliştiriciler tarafından aşırı kullanılmaması için bir hız sınırı ilkesi yapılandırarak arka uç API'nizi koruyun. Bu örnekler API Management ilkelerine basit bir giriş niteliğindedir. Daha fazla ilke seçeneği için bkz . API Management ilkeleri.

Not

Varsayılan olarak, API Management bir genel forward-request ilke yapılandırır. Ağ geçidinin bir arka uç hizmetine yönelik isteği tamamlayabilmesi için forward-request kuralı gereklidir.

Bu öğreticide aşağıdakilerin nasıl yapılacağını öğreneceksiniz:

  • Özel yanıt üst bilgisi ayarlamak için API'yi dönüştürme
  • Oran sınırlama politikası (kısıtlama) ekleyerek API'yi koruma
  • Dönüştürmeleri test etme

Portaldaki API Management ilkelerinin ekran görüntüsü.

Önkoşullar

API Management örneğinize gidin

  1. Azureportalında API Management hizmetleriniarayıp seçin:

    Arama sonuçlarında API Management hizmetlerini gösteren ekran görüntüsü.

  2. API Management hizmetleri sayfasında API Management örneğinizi seçin:

    API Yönetimi hizmetleri sayfasında bir API Yönetimi örneğini gösteren ekran görüntüsü.

Özgün yanıtı test etme

Özgün yanıtı görmek için:

  1. API Management hizmet örneğinizde API'ler'i seçin.
  2. API listenizden Swagger Petstore'yi seçin.
  3. Ekranın üst kısmındaki Test sekmesini seçin.
  4. GET Duruma göre evcil hayvan bulur işlemini seçin ve isteğe bağlı olarak durumSorgu parametresinin farklı bir değerini seçin. Gönder'i seçin.

Özgün API yanıtı aşağıdaki yanıta benzer olmalıdır:

Portaldaki özgün API yanıtının ekran görüntüsü.

Özel yanıt üst bilgisi eklemek için API'yi dönüştürme

API Management, istek veya yanıt yüklerini, üst bilgileri veya durum kodlarını değiştirmek için kullanabileceğiniz çeşitli dönüştürme ilkeleri içerir. Bu örnekte, API yanıtında özel bir yanıt üst bilgisi ayarlarsınız.

Dönüştürme ilkesi ayarlama

Bu bölüm, set-header ilkesini kullanarak özel bir yanıt üst bilgisinin nasıl yapılandırılacağını göstermektedir. Burada, ilke yapılandırmasını basitleştiren form tabanlı bir ilke düzenleyicisi kullanırsınız.

  1. Swagger Petstore>Tasarım>Tüm işlemler'i seçin.

  2. Giden işleme bölümünde + İlke Ekle'yi seçin.

    Portaldaki dışa dönük politikaya gezinmenin ekran görüntüsü.

  3. Giden ilkesi ekle penceresinde, Üst bilgileri ayarla'yı seçin.

    Portalda Üst bilgileri ayarla ilkesini yapılandırma işleminin ekran görüntüsü.

  4. Üst bilgileri ayarla ilkesini yapılandırmak için aşağıdakileri yapın:

    1. Ad altında, Özel yazın.
    2. Değer kısmının altında, + Değer ekle'yi seçin. "Özel değerim" yazın.
    3. Kaydet'i seçin.
  5. Yapılandırmadan sonra, Giden işleme bölümünde bir set-header ilke öğesi görüntülenir.

    Portalda

API'yi oran sınırlandırma politikası (hız kısıtlama) ekleyerek koruma

Bu bölümde, API'nin geliştiriciler tarafından aşırı kullanılmaması için hız sınırlarını yapılandırarak arka uç API'nize nasıl koruma ekleneceği gösterilmektedir. Bu örnekte, kod düzenleyicisini kullanarak ilkenin rate-limit-by-key nasıl yapılandırılır gösterilmektedir. Bu örnekte, sınır 15 saniyede üç çağrıya ayarlanır. 15 saniye sonra geliştirici, API’yi çağırmayı yeniden deneyebilir.

Not

Bu ilke Tüketim katmanında desteklenmez.

  1. Swagger Petstore>Tasarım>Tüm işlemler'i seçin.

  2. Gelen işleme bölümünde kod düzenleyicisi (</>) simgesini seçin.

    Portalda gelen ilke kodu düzenleyicisine gezinme işleminin ekran görüntüsü.

  3. İmleci boş bir satırda <inbound> unsurunun içine yerleştirin. Ardından, ekranın sağ üst köşesindeki Kod parçacıklarını göster'i seçin.

    Portalda gelen ilke düzenleyicisinde kod parçacıklarını göster seçeneğinin ekran görüntüsü.

  4. Sağ pencerede, Erişim kısıtlama ilkeleri'nin altında Anahtar başına çağrı hızını sınırla'yı seçin.

    <rate-limit-by-key /> öğesi imleçte eklenir.

    Portalda anahtar ilkesi başına sınır çağrı oranı ekleme işleminin ekran görüntüsü.

  5. <rate-limit-by-key /> öğesindeki <inbound> kodunuzu aşağıdaki kodla değiştirin. Ardından Kaydet'i seçin.

    <rate-limit-by-key calls="3" renewal-period="15" counter-key="@(context.Subscription.Id)" />
    

Dönüştürmeleri test etme

Bu noktada kod düzenleyicisindeki koda bakarsanız ilkeleriniz aşağıdaki koda benzer:

<policies>
     <inbound>
         <rate-limit calls="3" renewal-period="15" counter-key="@(context.Subscription.Id)" />
         <base />
     </inbound>
     <outbound>
         <set-header name="Custom" exists-action="override">
             <value>"My custom value"</value>
           </set-header>
         <base />
     </outbound>
     <on-error>
         <base />
     </on-error>
 </policies>

Bu bölümün kalan kısmı, bu makalede belirlediğiniz politika dönüşümlerini test etmektedir.

Özel yanıt üst bilgisini test edin

  1. Swagger Petstore>Test'i seçin.

  2. GET Duruma göre evcil hayvan bulur işlemini seçin ve isteğe bağlı olarak durumSorgu parametresinin farklı bir değerini seçin. Gönder'i seçin.

    Gördüğünüz gibi özel yanıt üst bilgisi eklenir:

    Portalda özel yanıt üst bilgisini gösteren ekran görüntüsü.

Hız sınırlamasını test etme (kısıtlama)

  1. Swagger Petstore>Test'i seçin.

  2. Get Finds Pets by Status işlemini seçin. Arka arkaya birkaç kez Gönder seçeneğine tıklayın.

    Yapılandırılan dönemde çok fazla istek gönderdikten sonra 429 Çok Fazla İstek yanıtı alırsınız.

    Portaldaki yanıtta Çok Fazla İstek'i gösteren ekran görüntüsü.

  3. 15 saniye veya daha fazla bekleyin ve yeniden Gönder'i seçin. Bu defa 200 OK yanıtını almanız gerekir.

Yardımı Copilot'tan al

API Management ilke tanımlarınızı oluşturmak ve düzenlemek için Copilot'tan yapay zeka yardımı alabilirsiniz. XML söz dizimini bilmenize gerek kalmadan özel gereksinimlerinize uyan ilkeler oluşturmak ve güncelleştirmek için Copilot'u kullanabilirsiniz. Ayrıca mevcut ilkelerin açıklamalarını da alabilirsiniz. Copilot, diğer API yönetim çözümlerinde yapılandırmış olabileceğiniz ilkeleri çevirmenize yardımcı olabilir.

Örnek komut:

Generate a policy that adds an Authorization header to the request with a Bearer token.

Copilot yapay zeka ile desteklendiğinden sürprizler ve hatalar mümkündür. Daha fazla bilgi için bkz. Copilot sıkça sorulan sorular.

Özet

Bu öğreticide, şunların nasıl yapıldığını öğrendiniz:

  • Özel yanıt üst bilgisi ayarlamak için API'yi dönüştürme
  • Oran sınırlama politikası (kısıtlama) ekleyerek API'yi koruma
  • Dönüştürmeleri test etme

Sonraki adımlar

Sonraki eğitime geçin: