Edge API'yi kullanarak API'leri yayınlama

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

Bu bölümde, geliştirici portallarında yayınlanmak üzere API ürünleri oluşturmak için Edge API'nin nasıl kullanılacağı açıklanmaktadır.

API'yi kullanarak API ürünleri oluşturma

API ürünleri, geliştiricilerin API anahtarları ve OAuth erişim jetonları kullanarak API'leri kullanan uygulamaları kaydetmelerine olanak tanır. API ürünleri, API kaynaklarını "gruplandırabilmenizi" ve bu paketleri farklı geliştirici gruplarına yayınlayabilmenizi sağlayacak şekilde tasarlanmıştır. Örneğin, iş ortağı geliştiricilerinize bir API kaynakları grubunu yayınlarken, harici geliştiricilere başka bir paket yayınlamanız gerekebilir. API ürünleri, bu paketleme işlemini API'lerinizde herhangi bir değişiklik yapmanıza gerek kalmadan anında gerçekleştirmenizi sağlar. Ayrıca geliştirici erişimi, geliştiricilerin uygulamaları için yeni tüketici anahtarları edinmelerine gerek kalmadan "yeni sürüme geçirilebilir" ve "eski sürüme geçirilebilir".

API kullanarak API ürünü oluşturmak için /organizations/{org_name}/apiproducts adresine POST isteği gönderin. Daha fazla bilgi için API Ürünü Oluşturma API referansına bakın.

Aşağıdaki istek, weather_free adlı bir API ürünü oluşturur. API ürünü, test ortamında dağıtılan weatherapi adlı API proxy'sinin sunduğu tüm API'lere erişim sağlar. Onay türü, tüm erişim isteklerinin onaylanacağını belirten auto olarak ayarlanmıştır.

curl -X POST https://api.enterprise.apigee.com/v1/organization/myorg/apiproducts \
-H "Content-Type:application/json" \
-d \
'{
  "approvalType": "auto",
  "displayName": "Free API Product",
  "name": "weather_free",
  "proxies": [ "weatherapi" ],
  "environments": [ "test" ]
}' \
-u email:password 

Örnek yanıt:

{
  "apiResources" : [ ],
  "approvalType" : "auto",
  "attributes" : [ ],
  "createdAt" : 1362759663145,
  "createdBy" : "developer@apigee.com",
  "displayName" : "Free API Product",
  "environments" : [ "test" ],
  "lastModifiedAt" : 1362759663145,
  "lastModifiedBy" : "developer@apigee.com",
  "name" : "weather_free",
  "proxies" : [ "weatherapi" ],
  "scopes" : [ ]
}

Yukarıda oluşturulan API ürünü, istekleri ortamdaki bir API proxy'sine yetkilendiren en temel senaryoyu uygular. Yetkili bir uygulamanın, test ortamında çalışan API proxy'si üzerinden erişilen tüm API kaynaklarına erişmesini sağlayan bir API ürünü tanımlar. API ürünleri, farklı geliştirici grupları için API'lerinizin erişim denetimini özelleştirmenize olanak tanıyan ek yapılandırma ayarları sunar. Örneğin, farklı API proxy'lerine erişim sağlayan iki API ürünü oluşturabilirsiniz. Aynı API proxy'lerine erişim sağlayan ancak farklı Kota ayarlarına sahip iki API ürünü de oluşturabilirsiniz.

API ürün yapılandırması ayarları

API ürünleri aşağıdaki yapılandırma seçeneklerini sunar:

Ad Açıklama Varsayılan Zorunlu mu?
apiResources

API ürünü içinde "gruplandırılmış" URI'ların veya kaynak yollarının virgülle ayrılmış listesi.

Kaynak yolları, varsayılan olarak proxy.pathsuffix değişkeninden eşlenir. Proxy yolu son eki, ProxyEndpoint temel yolunu izleyen URI parçası olarak tanımlanır. Örneğin, aşağıdaki örnek API ürününde apiResources öğesi /forecastrss olarak tanımlanmıştır. Bu API proxy'si için tanımlanan Temel Yol /weather olduğundan, bu API ürünü yalnızca /weather/forecastrss isteklerine izin verir.

Belirli bir yolu seçebilir veya bir joker karakterle tüm alt yolları seçebilirsiniz. Joker karakterler (/** ve /*) desteklenir. Çift yıldız joker karakteri, tüm alt URI'ların dahil edildiğini gösterir. Tek bir yıldız işareti, yalnızca bir düzey aşağıda olan URI'ların dahil edildiğini gösterir.

Varsayılan olarak '/", API proxy'si tarafından tanımlanan Temel Yolun yanı sıra "/**" ile aynı kaynakları destekler. Örneğin, API proxy'sinin Temel Yolu /v1/weatherapikey ise API ürünü, /v1/weatherapikey ve alt URI'lere (ör. /v1/weatherapikey/forecastrss ve /v1/weatherapikey/region/CA) yapılan istekleri destekler. Bu varsayılan ayarın davranışının değiştirilmesi hakkında bilgi için API ürünlerini yönetme bölümüne bakın.

Yok Hayır
approvalType API anahtarlarının, API ürünü tarafından tanımlanan API'lere erişmek için nasıl onaylanacağını belirtir. manual değerine ayarlanırsa uygulama için oluşturulan anahtar "beklemede" durumunda olur. Bu anahtarlar, açıkça onaylanana kadar çalışmaz. auto olarak ayarlanırsa tüm anahtarlar "onaylandı" bölümünde oluşturulur ve hemen çalışır. (auto genellikle sınırlı Kota veya özellik sunan ücretsiz/deneme API ürünlerine erişim sağlamak için kullanılır.) Yok Evet
attributes

Varsayılan API ürün profilini müşteriye özel meta verilerle genişletmek için kullanılabilecek özellik dizisi.

API ürününün erişim düzeyini herkese açık, gizli veya dahili olarak belirtmek için bu özelliği kullanın. Örneğin:
"özellikler": [
{
"name": "erişim",
"value": "herkese açık"
},
{
"name": "foo",
"value": "foo"
},
{
"name": "bar",
"value": "bar"
}
]
Yok Hayır
scopes Çalışma zamanında doğrulanan OAuth kapsamlarının virgülle ayrılmış listesi. (Apigee Edge, sunulan tüm erişim jetonlarındaki kapsamların API ürününde ayarlanan kapsamla eşleştiğini doğrular.) Yok Hayır
proxies Bu API ürününün bağlı olduğu adlandırılmış API proxy'leri. Proxy belirterek API ürünündeki kaynakları belirli API proxy'leriyle ilişkilendirebilir, geliştiricilerin bu kaynaklara diğer API proxy'leri üzerinden erişmesini engelleyebilirsiniz. Yok Hayır. Tanımlanmamışsa apiResources açıkça tanımlanmalı (yukarıdaki apiResources bilgilerine bakın) ve AtaMessage politikasında flow.resource.name değişkeni ayarlanmalıdır.
environments Bu API ürününün bağlı olduğu adlandırılmış ortamlar (ör. "test" veya "prod"). Bir veya daha fazla ortam belirterek API ürününde listelenen kaynakları belirli bir ortama bağlayabilir, böylece geliştiricilerin başka bir ortamdaki API proxy'leri aracılığıyla bu kaynaklara erişmesini engelleyebilirsiniz. Örneğin bu ayar, "prod"daki API proxy'leriyle ilişkili kaynaklara "test"te dağıtılan API proxy'leri tarafından erişilmesini önlemek için kullanılır. Yok Hayır. Tanımlanmamışsa apiResources açıkça tanımlanmalı ve flow.resource.name değişkeni AtaMessage politikasında ayarlanmalıdır.
quota Belirtilen zaman aralığında uygulama başına izin verilen istek sayısıdır. Yok Hayır
quotaInterval Kotaların değerlendirildiği zaman birimi sayısı Yok Hayır
quotaTimeUnit Kotaların sayıldığı zaman birimi (dakika, saat, gün veya ay). Yok Hayır

Aşağıda, API ürünü oluşturma hakkında daha ayrıntılı bir örnek verilmiştir.

curl -X POST  https://api.enterprise.apigee.com/v1/o/{org_name}/apiproducts \
-H "Content-Type:application/json" -d \
'{
  "apiResources": [ "/forecastrss" ],
  "approvalType": "auto", 
  "attributes":
    [ {"name": "access", "value": "public"} ],
  "description": "Free API Product",
  "displayName": "Free API Product",
  "name": "weather_free",
  "scopes": [],
  "proxies": [ "weatherapi" ],
  "environments": [ "test" ],
  "quota": "10",
  "quotaInterval": "2",
  "quotaTimeUnit": "hour" }' \
-u email:password

Örnek Yanıt

{
  "apiResources" : [ "/forecastrss" ],
  "approvalType" : "auto",
  "attributes" : [ {
    "name" : "access",
    "value" : "public"
  },
  "createdAt" : 1344454200828,
  "createdBy" : "admin@apigee.com",
  "description" : "Free API Product",
  "displayName" : "Free API Product",
  "lastModifiedAt" : 1344454200828,
  "lastModifiedBy" : "admin@apigee.com",
  "name" : "weather_free",
  "scopes" : [ ],
  "proxies": [ {'weatherapi'} ],
  "environments": [ {'test'} ],
  "quota": "10",
  "quotaInterval": "1",
  "quotaTimeUnit": "hour"}'
}

Kapsamlar hakkında

Kapsam, OAuth'tan yola çıkarak kabaca "izin" kavramıyla eşlenir. Apigee Edge'de kapsamlar tamamen isteğe bağlıdır. Daha ayrıntılı yetkilendirme gerçekleştirmek için kapsamları kullanabilirsiniz. Bir uygulamaya verilen her tüketici anahtarı bir "ana kapsam" ile ilişkilendirilir. Ana kapsam, bu uygulamanın onaylanmış olduğu tüm API ürünlerindeki tüm kapsamların grubudur. Birden fazla API ürünü kullanması onaylanan uygulamalar için ana kapsam, tüketici anahtarının onaylandığı API ürünlerinde tanımlanan tüm kapsamların birleşimidir.

API ürünlerini göster

API'yi kullanan bir kuruluş için oluşturulan API ürünlerini görüntülemek üzere aşağıdaki bölümlere bakın:

Aşağıda, API'yi kullanarak API ürünlerini nasıl görüntüleyeceğinize dair bir örnek verilmiştir:

curl -X GET "https://ext.apiexchange.org/v1/mint/organizations/{org_name}/products?monetized=true" \
  -H "Accept:application/json" \
  -u email:password

Yanıt aşağıdaki gibi görünmelidir (yanıtın yalnızca bir kısmı gösterilir):

{
  "product" : [ {
    "customAtt1Name" : "user",
    "customAtt2Name" : "response size",
    "customAtt3Name" : "content-length",
    "description" : "payment api product",
    "displayName" : "payment",
    "id" : "payment",
    "name" : "payment",
    "organization" : {
      ...
    },
    "pricePoints" : [ ],
    "status" : "CREATED",
    "transactionSuccessCriteria" : "status == 'SUCCESS'"
  }, {
    "customAtt1Name" : "user",
    "customAtt2Name" : "response size",
    "customAtt3Name" : "content-length",
    "description" : "messaging api product",
    "displayName" : "messaging",
    "id" : "messaging",
    "name" : "messaging",
    "organization" : ...
    },
    "pricePoints" : [ ],
    "status" : "CREATED",
    "transactionSuccessCriteria" : "status == 'SUCCESS'"
  } ],
  "totalRecords" : 2
}

API'yi kullanarak geliştiricileri kaydetme

Tüm uygulamalar geliştiricilere veya şirketlere aittir. Bu nedenle, uygulama oluşturmak için önce bir geliştirici veya şirket kaydettirmeniz gerekir.

Geliştiriciler bir kuruluşta profil oluşturarak kaydedilir. Profilde yer alan geliştirici e-postasının, Apigee Edge'in tamamında geliştirici için benzersiz anahtar olarak kullanıldığını unutmayın.

Para kazanma özelliğini desteklemek için geliştirici oluştururken veya düzenlerken para kazanma özelliklerini tanımlamanız gerekir. Ayrıca özel analiz, özel politika uygulama vb. alanlarda kullanılmak üzere başka rastgele özellikler de tanımlayabilirsiniz. Bu rastgele özellikler Apigee Edge tarafından yorumlanmaz.

Örneğin, aşağıdaki istek e-posta adresi ntesla@theremin.com olan bir geliştiricinin profilini kaydediyor ve Create developer API'yi kullanarak para kazanma özelliklerinin bir alt kümesini tanımlıyor:

$ curl -H "Content-type:application/json" -X POST -d \
'{"email" : "ntesla@theremin.com", 
  "firstName" : "Nikola", 
  "lastName" : "Tesla", 
  "userName" : "theremin", 
  "attributes" : [ 
  { 
    "name" : "project_type", 
    "value" : "public"
  },
  {    
   "name": "MINT_BILLING_TYPE",
   "value": "POSTPAID"
  },
  {
   "name": "MINT_DEVELOPER_ADDRESS",
   "value": "{\"address1\":\"Dev One Address\",\"city\":\"Pleasanton\",\"country\":\"US\",\"isPrimary\":true,\"state\":\"CA\",\"zip\":\"94588\"}"
  },
  {
   "name": "MINT_DEVELOPER_TYPE",
   "value": "TRUSTED"
  },
  {    
   "name": "MINT_HAS_SELF_BILLING,
   "value": "FALSE"
  },
  {
   "name" : "MINT_SUPPORTED_CURRENCY",
   "value" : "usd"
  }
 ] 
}' \
https://api.enterprise.apigee.com/v1/o/{org_name}/developers \
-u email:password 

Örnek Yanıt

{
          "email" : "ntesla@theremin.com",
          "firstName" : "Nikola",
          "lastName" : "Tesla",
          "userName" : "theremin",
          "organizationName" : "{org_name}",
          "status" : "active",
          "attributes" : [ 
          {
            "name" : "project_type",
            "value" : "public"
          },
          {    
             "name": "MINT_BILLING_TYPE",
             "value": "POSTPAID"
          },
          {
             "name": "MINT_DEVELOPER_ADDRESS",
             "value": "{\"address1\":\"Dev One Address\",\"city\":\"Pleasanton\",\"country\":\"US\",\"isPrimary\":true,\"state\":\"CA\",\"zip\":\"94588\"}"
          },
          {
             "name": "MINT_DEVELOPER_TYPE",
             "value": "TRUSTED"
          },
          {    
             "name": "MINT_HAS_SELF_BILLING,
             "value": "FALSE"
          },
          {
             "name" : "MINT_SUPPORTED_CURRENCY",
             "value" : "usd"
          } 
          ],
          "createdAt" : 1343189787717,
          "createdBy" : "admin@apigee.com",
          "lastModifiedAt" : 1343189787717,
          "lastModifiedBy" : "admin@apigee.com"
        }

Geliştirici uygulamalarını API'yi kullanarak kaydetme

Apigee Edge'de kayıtlı her uygulama, bir geliştirici ve API ürünüyle ilişkilidir. Bir geliştirici adına uygulama kaydedildiğinde Apigee Edge, uygulamayı tanımlayan bir "kimlik bilgisi" (tüketici anahtarı ve gizli anahtar çifti) oluşturur. Uygulama daha sonra bu kimlik bilgilerini, uygulamayla ilişkili bir API ürününe yapılan her isteğin parçası olarak iletmelidir.

Aşağıdaki istek, yukarıda oluşturduğunuz geliştirici için bir uygulama kaydetmek üzere Create Developer App API'sini kullanır: ntesla@theremin.com. Bir uygulamayı kaydederken uygulama için bir ad, bir callbackUrl ve bir veya daha fazla API ürünü listesi tanımlarsınız:
$ curl -H "Content-type:application/json" -X POST -d \
'{
  "apiProducts": [ "weather_free"], 
  "callbackUrl" : "login.weatherapp.com", 
  "keyExpiresIn" : "2630000000",
  "name" : "weatherapp"}' \
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/ntesla@theremin.com/apps \
-u email:password 

callbackUrl, uygulamadan gelen yönlendirme isteklerini doğrulamak için bazı OAuth erişim izni türleri (yetkilendirme kodu gibi) tarafından kullanılır. OAuth kullanıyorsanız bu değer, OAuth isteklerinde bulunmak için kullanılan redirect_uri ile aynı değere ayarlanmalıdır.

keyExpiresIn özelliği, geliştirici uygulaması için oluşturulacak tüketici anahtarının kullanım ömrünü milisaniye cinsinden belirtir. Varsayılan değer olan -1, sonsuz bir geçerlilik süresini belirtir.

Örnek Yanıt

{
  "appId": "5760d130-528f-4388-8c6f-65a6b3042bd1",
  "attributes": [
    {
      "name": "DisplayName",
      "value": "Test Key Expires"
    },
    {
      "name": "Notes",
      "value": "Just testing this attribute"
    }
  ],
  "createdAt": 1421770824390,
  "createdBy": "wwitman@apigee.com",
  "credentials": [
    {
      "apiProducts": [
        {
          "apiproduct": "ProductNoResources",
          "status": "approved"
        }
      ],
      "attributes": [],
      "consumerKey": "jcAFDcfwImkJ19A5gTsZRzfBItlqohBt",
      "consumerSecret": "AX7lGGIRJs6s8J8y",
      "expiresAt": 1424400824401,
      "issuedAt": 1421770824401,
      "scopes": [],
      "status": "approved"
    }
  ],
  "developerId": "e4Oy8ddTo3p1BFhs",
  "lastModifiedAt": 1421770824390,
  "lastModifiedBy": "wwitman@apigee.com",
  "name": "TestKeyExpires",
  "scopes": [],
  "status": "approved"
}

API'yi kullanarak uygulamalar için tüketici anahtarlarını yönetme

Uygulama için tüketici anahtarını (API Anahtarı) alın

Bir uygulamanın kimlik bilgileri (API ürünü, tüketici anahtarı ve gizli anahtar) uygulama profilinin bir parçası olarak döndürülür. Bir kuruluşun yöneticisi tüketici anahtarını dilediği zaman alabilir.

Uygulama profili; tüketici anahtarı ve sırrının değeri ile tüketici anahtarının durumunu ve anahtar için tüm API ürün ilişkilendirmelerini gösterir. Yönetici olarak, Developer App API için Temel Ayrıntıları Alma seçeneğini kullanarak tüketici anahtarı profilini istediğiniz zaman alabilirsiniz:

$ curl -X GET -H "Accept: application/json" \
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/ntesla@theremin.com/apps/weatherapp/keys/HQg0nCZ54adKobpqEJaE8FefGkdKFc2J \
-u email:password

Örnek Yanıt

{
  "apiProducts" : [ {
    "apiproduct" : "weather_free",
    "status" : "approved"
  } ],
  "attributes" : [ ],
  "consumerKey" : "HQg0nCZ54adKobpqEJaE8FefGkdKFc2J",
  "consumerSecret" : "1eluIIdWG3JGDjE0",
  "status" : "approved"
}

Daha fazla bilgi için Geliştirici Uygulamasıyla İlgili Temel Ayrıntıları Alma bölümüne bakın.

Bir uygulamaya ve anahtara API ürünü ekleme

Yeni bir API ürünü eklemek üzere bir uygulamayı güncellemek için aslında API ürününü, Key API'ye API Ürünü Ekle'yi kullanarak uygulamanın anahtarına eklersiniz. Daha fazla bilgi için Anahtara API Ürünü Ekleme bölümüne bakın.

Uygulama anahtarına bir API ürünü eklemek, anahtarı elinde bulunduran uygulamanın API ürününde paketlenen API kaynaklarına erişebilmesini sağlar. Aşağıdaki yöntem çağrısı, bir uygulamaya yeni bir API ürünü ekler:

$ curl -H "Content-type:application/json" -X POST -d \
'{
  "apiProducts": [ "newAPIProduct"]
}' \
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/ntesla@theremin.com/apps/weatherapp/keys/HQg0nCZ54adKobpqEJaE8FefGkdKFc2J \
-u email:password 

Örnek Yanıt:

{
  "apiProducts": [
   {
     "apiproduct": "weather_free",
     "status": "approved"
   },
   {
     "apiproduct": "newAPIProduct",
     "status": "approved"
   }
 ],
 "attributes": [],
 "consumerKey": "HQg0nCZ54adKobpqEJaE8FefGkdKFc2J",
 "consumerSecret": "1eluIIdWG3JGDjE0",
 "expiresAt": -1,
 "issuedAt": 1411491156464,
 "scopes": [],
 "status": "approved"
 }

Tüketici anahtarlarını onaylama

Onay türünü manuel olarak ayarlamak, hangi geliştiricilerin API ürünleri tarafından korunan kaynaklara erişebileceğini kontrol etmenize olanak tanır. API ürünlerinde anahtar onayı manual olarak ayarlandığında tüketici anahtarları açıkça onaylanmalıdır. Anahtarlar, Onayla veya Geliştirici Uygulamasının Belirli Anahtarını İptal Et API'si kullanılarak açık bir şekilde onaylanabilir:

$ curl -X POST -H "Content-type:appilcation/octet-stream" \ 
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/ntesla@theremin.com/apps/weatherapp/keys/HQg0nCZ54adKobpqEJaE8FefGkdKFc2J?"action=approve" \
-u email:password

Örnek Yanıt

{
  "apiProducts" : [ {
  "apiproduct" : "weather_free",
  "status" : "approved"
} ],
  "attributes" : [ ],
  "consumerKey" : "HQg0nCZ54adKobpqEJaE8FefGkdKFc2J",
  "consumerSecret" : "1eluIIdWG3JGDjE0",
  "status" : "approved"
}

Daha fazla bilgi için Geliştirici Uygulamasının Belirli Anahtarını Onaylama veya İptal Etme bölümüne bakın.

Tüketici anahtarları için API ürünlerini onaylama

Bir API ürününün tüketici anahtarıyla ilişkilendirmesinin de bir durumu vardır. API erişiminin başarılı olması için tüketici anahtarının ve tüketici anahtarının uygun API ürünü için onaylanması gerekir. Bir tüketici anahtarının bir API ürünüyle ilişkilendirilmesi, Developer App API için Anahtar için API Ürününü Onaylama veya İptal Etme API'si kullanılarak onaylanabilir:

$ curl -X POST -H "Content-type:application/octet-stream" \ 
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/ntesla@theremin.com/apps/weatherapp/keys/HQg0nCZ54adKobpqEJaE8FefGkdKFc2J/apiproducts/weather_free?"action=approve" \
-u email:password

Bu cURL komutu yanıt döndürmez. Daha fazla bilgi için Geliştirici Uygulaması İçin Anahtar İçin API Ürününü Onaylama veya İptal Etme bölümüne bakın.

Tüketici anahtarları için API ürünlerini iptal etme

Tüketici anahtarının bir API ürünüyle ilişkilendirmesini iptal etmenizin birçok nedeni olabilir. Geliştiricinin ödeme yapmaması, deneme süresinin sona ermesi veya bir uygulamanın bir API ürününden diğerine tanıtılması nedeniyle bir API ürününü tüketici anahtarından kaldırmanız gerekebilir.

Bir tüketici anahtarının bir API ürünüyle ilişkilendirmesini iptal etmek için Geliştirici Uygulamasının Belirli Anahtarını Onaylama veya İptal Etme API'sini kullanın ve geliştirme uygulamasının tüketici anahtarına karşı iptal işlemini uygulayın:

$ curl -X POST -H "Content-type:application/octet-stream" \ 
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/ntesla@theremin.com/apps/weatherapp/keys/HQg0nCZ54adKobpqEJaE8FefGkdKFc2J/apiproducts/weather_free?"action=revoke" \
-u email:password

Bu cURL komutu yanıt döndürmez. Daha fazla bilgi için Geliştirici Uygulamasının Belirli Anahtarını Onaylama veya İptal Etme bölümüne bakın.

API ürün ayarlarını zorunlu kılma

API ürünlerinin uygulanması için API proxy akışına aşağıdaki politika türlerinden biri eklenmelidir:

  • DoğrulamaAPIKey: Bir API anahtarına referansta bulunur, anahtarın geçerli bir uygulamayı temsil ettiğini doğrular ve API ürünüyle eşleştiğini doğrular. Daha fazla bilgi için API Anahtarı politikasını doğrulama bölümüne bakın.
  • OAuthV1, "VerifyAccessToken" işlemi: İmzayı doğrular, OAuth 1.0a erişim jetonunu ve "tüketici anahtarını" doğrular ve uygulamayı API ürünüyle eşleştirir. Daha fazla bilgi için OAuth v1.0a politikası sayfasını inceleyin.
  • OAuthV2, "VerifyAccessToken" işlemi: OAuth 2.0 erişim jetonunun geçerli olduğunu doğrular, jetonu uygulamayla eşleştirir, uygulamanın geçerli olduğunu doğrular ve ardından uygulamayı bir API ürünüyle eşleştirir. Daha fazla bilgi için OAuth ana sayfası sayfasına bakın.

Politikalar ve API ürünleri yapılandırıldıktan sonra Apigee Edge tarafından aşağıdaki işlem yürütülür:

  1. Apigee Edge tarafından bir istek alınır ve uygun API proxy'sine yönlendirilir.
  2. İstemci tarafından sunulan API anahtarını veya OAuth erişim jetonunu doğrulayan bir politika yürütülür.
  3. Edge, API Anahtarını veya erişim jetonunu bir uygulama profiline çözümler.
  4. Edge, uygulamayla ilişkilendirilmiş API ürünlerinin listesini (varsa) çözer.
  5. Kota değişkenlerini doldurmak için, eşleşen ilk API ürünü kullanılır.
  6. API anahtarı veya erişim jetonuyla eşleşen API ürünü yoksa istek reddedilir.
  7. Edge, Kota ayarlarının yanı sıra API ürün ayarlarını temel alarak URI tabanlı erişim denetimini (ortam, API proxy'si ve URI yolu) uygular.