Entra ID ile Kimlik Doğrulama ve Yetkilendirme

Azure API Management

Fiodar Sazanavets

Senior Software Engineer at Microsoft

Temel OAuth kavramları

Entra ID - APIM entegrasyonu

Azure API Management

Neden kimlik sağlayıcı kullanılır

Vale benzetmesi

  • Bir IdP’yi vale gibi düşünebilirsiniz
  • Aracınızın torpidosunda değerli eşyalar vardır (güvenli veri)
  • Vale’ye özel bir vale anahtarı verirsiniz
    • sadece park etmeye izin verir, değerlilere erişemez
  • Benzer şekilde, IdP uygulama güvenliğini yönetir ancak uygulama içindeki güvenli verilere erişemez
  • Örnek: Entra ID IdP’dir, API Manager ise istemcidir
Azure API Management

Entra ID uygulaması kaydetme

  • Entra ID, Azure Portal içinde bulunur
  • Yönetimi için yüksek ayrıcalıklı katkıda bulunan erişimi gerekir
  • OAuth uygulamak için App Registration altında yeni bir varlık ekleyin
  • Her kayıt özel bir ad ve geçerli bir yönlendirme URL’si ister
  • APIM için yönlendirme URL’si, APIM örneği adresidir
  • Bu, oturum açtıktan sonra Entra ID’nin istekleri APIM’e geri yönlendirmesini sağlar

Entra ID uygulama kaydı

Azure API Management

İstemci bilgilerini alma

Entra ID istemci bilgileri

  • Client ID ve Tenant ID

    • Uygulamanın genel adresini oluşturur
    • Kod, Entra ID’ye uygulamanın "kim" olduğunu belirtmek için kullanır
  • Client Secret

    • Uygulamanın parolası görevi görür
    • Kimliğini kanıtlamak için kod tarafından sunulur
    • Her zaman güvenli saklanmalı, istemci tarafı kodda asla gösterilmemelidir
Azure API Management

Uç Nokta URL’lerini Alma

  • İstemciyi IdP’ye bağlamadan önce IdP uç nokta URL’lerini edinin

    • Entra ID’de uygulama kaydı Overview sayfasında Endpoints’e tıklayın
    • OAuth 2.0 authorization ve token uç noktalarını alın
  • Authorization Endpoint

    • Kodun kullanıcıları oturum açmaya yönlendirdiği yer
  • Token Endpoint

    • Arka uç, yetkilendirme kodunu erişim jetonuyla değiştirir

Entra ID kimlik doğrulama akışı

Azure API Management

APIM’i Entra ID’ye Bağlama

APIM’de OAuth ve OIDC bağlantısı

  • APIM’de, API’ler altında OAuth 2.0 + OpenID Connect’i açın

    • Yeni bir yetkilendirme sunucusu tanımlayın
  • Sunucuyu şu bilgilerle yapılandırın:

    • Authorization ve token uç noktaları
    • Client ID ve Client Secret
    • API’nizin sunduğu kapsamlar (scopes)
Azure API Management

Hadi pratik yapalım!

Azure API Management

Preparing Video For Download...