Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
UYGULANANLAR: Tüm API Management katmanları
Bu makalede, API Management'ta yönetilen bağlantı oluşturmayı ve OAuth 2.0 belirteci gerektiren bir GitHub API'sini çağırmayı öğreneceksiniz. Bu örnekte yetkilendirme kodu verme türü kullanılmaktadır.
Şunları yapmayı öğreneceksiniz:
- GitHub'da uygulama kaydetme
- API Management'ta kimlik bilgisi sağlayıcısı yapılandırma
- Bağlantı yapılandırma
- API Management'ta API oluşturma ve ilke yapılandırma
- API Management'ta GitHub API'nizi test edin
Önkoşullar
- GitHub hesabı.
- Çalışan bir API Management örneği. Gerekirse bir Azure API Management örneği oluşturun.
- API Management örneğinde API Management için sistem tarafından atanan yönetilen kimliği etkinleştirin.
1. Adım: GitHub'a uygulama kaydetme
API için bir GitHub OAuth uygulaması oluşturun ve çağırmak istediğiniz istekler için uygun izinleri verin.
GitHub'da oturum açın.
Hesap profilinizde Ayarlar > Geliştirici Ayarları > OAuth Uygulamaları'na gidin.Yeni OAuth uygulaması'ni seçin.
- Uygulama için bir Uygulama adı ve Giriş Sayfası URL'si girin. Bu örnekte gibi
http://localhostbir yer tutucu URL sağlayabilirsiniz. - İsteğe bağlı olarak bir Uygulama açıklaması ekleyin.
-
Yetkilendirme geri çağırma URL'si (yeniden yönlendirme URL'si) alanına, kimlik bilgisi sağlayıcısını yapılandırdığınız API Management örneğinin adını girerek
https://authorization-manager.consent.azure-apim.net/redirect/apim/<YOUR-APIM-SERVICENAME>yazın. - İsteğe bağlı olarak Cihaz akışını etkinleştir 'i seçin (bu örnek için gerekli değildir).
- Uygulama için bir Uygulama adı ve Giriş Sayfası URL'si girin. Bu örnekte gibi
Uygulamayı kayıt et seçin.
Genel sayfasında, 2. Adımda kullandığınız İstemci Kimliğini kopyalayın.
Yeni bir istemci gizli anahtarı oluştur seçeneğini seçin. Tekrar görüntülenmeyen gizli diziyi kopyalayın. Gizli diziyi 2. Adımda yapılandırabilirsiniz.
2. Adım: API Management'ta kimlik bilgisi sağlayıcısı yapılandırma
Azure portalında oturum açın ve API Management örneğinize gidin.
Sol menüde API'ler>Kimlik Bilgisi yöneticisi>+ Oluştur'u seçin.
Kimlik bilgisi sağlayıcısı oluştur bölümünde aşağıdaki ayarları girin:
Settings Değer Kimlik bilgisi sağlayıcısı adı Github-01 gibi seçtiğiniz bir ad Kimlik sağlayıcısı GitHub'ı seçin Verme türü Yetkilendirme kodunu seçin Müşteri Kimliği Uygulama kaydından daha önce kopyaladığınız değeri yapıştırın İstemci sırrı Uygulama kaydından daha önce kopyaladığınız değeri yapıştırın Scope Bu örnek için kapsamı Kullanıcı olarak ayarlayın Oluştur'i seçin.
İstendiğinde, görüntülenen OAuth yeniden yönlendirme URL'sini gözden geçirin ve GitHub uygulama kaydında girdiğiniz URL ile eşleşip eşleşmediğini onaylamak için Evet'i seçin.
3. Adım: Bağlantı yapılandırma
Bağlantı sekmesinde, sağlayıcıyla bağlantınızın adımlarını tamamlayın.
Uyarı
Bir bağlantı yapılandırdığınızda, API Management varsayılan olarak sistem tarafından örneğe atanan yönetilen kimlik ile erişimi sağlayacak bir erişim politikası ayarlar. Bu erişim bu örnek için yeterlidir. Gerektiğinde ek erişim ilkeleri ekleyebilirsiniz.
- Bir Bağlantı adı girin ve Kaydet'i seçin.
- 2. Adım: Bağlantınızda oturum açın (yetkilendirme kodu verme türü için) altında Oturum aç düğmesini seçin. Erişimi yetkilendirmek ve API Management'a dönmek için kimlik sağlayıcınızla adımları tamamlayın.
- 3. Adım: Bu bağlantıya kimlerin erişeceğini belirleme (Erişim ilkesi) altında, yönetilen kimlik üyesi listelenir. Senaryonuza bağlı olarak diğer üyeleri eklemek isteğe bağlıdır.
- Tamamla'yı seçin.
Yeni bağlantı, bağlantılar listesinde görünür ve Bağlı durumunu gösterir. Kimlik bilgisi sağlayıcısı için başka bir bağlantı oluşturmak istiyorsanız, önceki adımları tamamlayın.
Tip
İstediğiniz zaman bir kimlik bilgisi sağlayıcısına bağlantı eklemek, güncelleştirmek veya silmek için Azure portalını kullanın. Daha fazla bilgi için bkz. Birden çok bağlantı yapılandırma.
4. Adım: API Management'ta API oluşturma ve ilke yapılandırma
Azure portalında oturum açın ve API Management örneğinize gidin.
Sol menüde API'ler>API'ler>+ API Ekle seçin.
HTTP'yi seçin ve aşağıdaki ayarları girin, ardından Oluştur'u seçin.
Setting Değer Görüntü adı githubuser Web hizmeti URL'si https://api.github.comAPI URL'si son eki githubuser Yeni API'ye gidin ve İşlem Ekle'yi seçin. Aşağıdaki ayarları girin ve Kaydet'i seçin.
Setting Değer Görüntü adı getauthdata GET URL'si /user
Aşağıdaki ayarlarla başka bir işlem eklemek için önceki adımları izleyin.
Setting Değer Görüntü adı getauthfollowers GET URL'si /user/takipçiler Tüm işlemler'i seçin. Gelen işleme bölümünde (/<) (>kod düzenleyicisi) simgesini seçin.
Aşağıdaki kodu kopyalayıp ilke düzenleyicisine yapıştırın.
provider-idveauthorization-iddeğerlerinin, ilke içindekiget-authorization-contextayarında, önceki adımlarda yapılandırdığınız kimlik bilgisi sağlayıcısının ve bağlantının adlarına karşılık geldiğinden emin olun. Kaydetseçeneğini seçin.<policies> <inbound> <base /> <get-authorization-context provider-id="github-01" authorization-id="first-connection" context-variable-name="auth-context" identity-type="managed" ignore-error="false" /> <set-header name="Authorization" exists-action="override"> <value>@("Bearer " + ((Authorization)context.Variables.GetValueOrDefault("auth-context"))?.AccessToken)</value> </set-header> <set-header name="User-Agent" exists-action="override"> <value>API Management</value> </set-header> </inbound> <backend> <base /> </backend> <outbound> <base /> </outbound> <on-error> <base /> </on-error> </policies>
Yukarıdaki ilke tanımı üç bölümden oluşur:
- get-authorization-context ilkesi, daha önce oluşturduğunuz kimlik bilgisi sağlayıcısına ve bağlantıya başvurarak bir yetkilendirme belirteci getirir.
- İlk set-header ilkesi, getirilen yetkilendirme belirteciyle bir HTTP üst bilgisi oluşturur.
- İkinci başlık belirleyici politikası, GitHub API gereksinimleri doğrultusunda bir
User-Agentüst bilgi yaratır.
5. Adım: API'yi test edin
Test sekmesinde, yapılandırdığınız bir işlemi seçin.
Gönder'i seçin.
Başarılı bir yanıt GitHub API'sinden kullanıcı verilerini döndürür.
İlgili içerik
- Kimlik doğrulama ve yetkilendirme ilkeleri hakkında daha fazla bilgi edinin
- GitHub'ın REST API'si hakkında daha fazla bilgi edinin