Uwierzytelnianie i autoryzacja za pomocą Entra ID

Azure API Management

Fiodar Sazanavets

Senior Software Engineer at Microsoft

Podstawowe pojęcia OAuth

Integracja Entra ID z APIM

Azure API Management

Dlaczego warto używać dostawcy tożsamości

Analogia z parkingiem hotelowym

  • IdP można porównać do parkingowego w hotelu
  • W samochodzie są kosztowności w schowku (dane chronione)
  • Przekazujesz parkingowemu specjalny kluczyk do parkowania
    • umożliwia tylko parkowanie, nie daje dostępu do kosztowności
  • Podobnie IdP zarządza bezpieczeństwem aplikacji, ale nie ma dostępu do danych w niej przechowywanych
  • Przykład: Entra ID pełni rolę IdP, a API Manager – klienta
Azure API Management

Rejestrowanie aplikacji w Entra ID

  • Entra ID jest dostępne w Azure Portal
  • Zarządzanie wymaga uprawnień współautora wysokiego poziomu
  • Aby zastosować OAuth, dodaj nową jednostkę w Rejestracje aplikacji
  • Każda rejestracja wymaga nazwy i prawidłowego adresu URL przekierowania
  • W przypadku APIM adresem przekierowania jest adres instancji APIM
  • Zapewnia to, że Entra ID przekierowuje żądania z powrotem do APIM po zalogowaniu

Rejestracja aplikacji Entra ID

Azure API Management

Pobieranie danych klienta

Dane klienta Entra ID

  • Client ID i Tenant ID

    • Tworzą publiczny adres aplikacji
    • Kod używa ich, aby poinformować Entra ID, „kim" jest aplikacja
  • Client Secret

    • Pełni rolę hasła aplikacji
    • Kod przedstawia go w celu potwierdzenia tożsamości
    • Należy go zawsze przechowywać bezpiecznie i nigdy nie ujawniać w kodzie po stronie klienta
Azure API Management

Pobieranie adresów URL punktów końcowych

  • Pobierz adresy URL punktów końcowych IdP przed połączeniem klienta z IdP

    • W Entra ID kliknij Punkty końcowe na stronie Przegląd rejestracji aplikacji
    • Skopiuj punkty końcowe OAuth 2.0 autoryzacji i tokenu
  • Punkt końcowy autoryzacji

    • Przekierowuje użytkowników do logowania
  • Punkt końcowy tokenu

    • Backend wymienia kod autoryzacji na token dostępu

Przepływ uwierzytelniania Entra ID

Azure API Management

Łączenie APIM z Entra ID

Połączenie OAuth i OIDC w APIM

  • W APIM otwórz OAuth 2.0 + OpenID Connect w sekcji APIs

    • Zdefiniuj nowy serwer autoryzacji
  • Skonfiguruj serwer, podając:

    • Punkty końcowe autoryzacji i tokenu
    • Client ID i Client Secret
    • Zakresy udostępniane przez API
Azure API Management

Czas na ćwiczenia!

Azure API Management

Preparing Video For Download...