Gelişmiş OAuth 2.0 konuları

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

Üçüncü taraf OAuth jetonlarını kullanma

Üçüncü Taraf OAuth Jetonlarını Kullanma başlıklı makaleyi inceleyin.

Birden çok geri çağırma URL'si belirtme

Yetkilendirme kodu izin türünü kullanırken, geliştirici uygulamanızı kaydederken bir geri çağırma URL'si belirtmeniz gerekir. Geri çağırma URL'si genellikle istemci uygulaması adına yetkilendirme kodu almak üzere atanmış bir uygulamanın URL'sini belirtir. Ayrıca bu URL dizesi, doğrulama için de kullanılır. İstemcinin, yetkilendirme kodları ve erişim jetonları isterken bu URL'yi Apigee Edge'e göndermesi ve redirect_uri parametresinin kayıtlı olanla eşleşmesi gerekir. Erişim jetonları ve yetkilendirme kodları isteme bölümünü de inceleyin.

Örneğin:

http://myorg-test.apigee.net/weather/oauth/authorizationcode?client_id=123456&response_type=code&redirect_uri=http://example.com/callback&scope=scope1%20scope2&state=abc

Tek bir proxy uygulamasında birden çok geri çağırma URL'si belirtmenin bir kullanım alanı vardır. Örneğin, birden fazla alan için kimlik doğrulaması yapmak isteyebilirsiniz. Örneğin:

  • http://myexample.com/callback
  • http://myexample.uk/callback
  • http://myexample.ja/callback

Edge, bir geliştirici uygulaması kaydedildiğinde birden fazla geri çağırma URL'si belirtmeyi veya joker karakter kullanmayı desteklemez. Bu kullanım alanını gerçekleştirmek için bir geliştirici uygulamasını kaydederken boş bir geri çağırma URL'si belirtebilir, ardından gelen yönlendirme URI'lerini doğrulamak için JavaScript politikasına bir mantık yerleştirebilirsiniz.

GenerateAuthCode işleminin varsayılan döndürme davranışını değiştirme

Varsayılan olarak OAuthV2 politikasının GenerateAuthCode işlemi, yetkilendirme kodunu içeren bir ?code sorgu parametresiyle geri çağırma URL'sine bir 302 yönlendirmesi döndürür.

Bazı durumlarda bu davranışı değiştirmek isteyebilirsiniz. Örneğin, kodu içeren yapılandırılmış JSON ile bir 200 yanıtı döndürmek isteyebilirsiniz.

Bu kullanım alanını gerçekleştirmek amacıyla kodu almak için bir ExtractVariable politikası ve kodu, 200 durumuna sahip bir JSON yükü içinde döndürmek için bir AtaticMessage politikası kullanın.

Uygulama son kullanıcı iznini denetleme

Uygulama son kullanıcısının bir uygulamayı yetkilendirdiğini doğrulamanız gerekebilir. Bunu yapmak için Apigee Edge Audit API'yi kullanabilirsiniz.

Giden OAuth örneği

GitHub'daki Apigee api-platform-samples deposunda bulunan outbound-oauth örneğine bakın. Örneği klonlayabilir, dağıtabilir ve çalıştırabilirsiniz. Bu örnekte, tweet'leri çevirmek için Microsoft Azure çevirmen API'si kullanılmaktadır. Bunun için, OAuth erişim jetonu almak için giden çağrı yapar ve ardından her giden çağrı yapıldığında önbelleğe alınan jetonu yeniden kullanarak API Hizmetleri önbelleğe alma politikalarını kullanarak jetonu önbelleğe alır. Ayrıca, API proxy'sini çağırmak için kullanılan bir tanıtım tarayıcı uygulaması da içerir.