Configurarea autentificării și accesului la API

Azure API Management

Fiodar Sazanavets

Senior Software Engineer at Microsoft

Importanța securității API

Securitatea HTTP

  • Endpoint-urile API sunt adesea publice
  • Datele din spatele API-urilor trebuie protejate
  • Aplicabil în special datelor sensibile
Azure API Management

Prezentare generală a autentificării

  • Autentificarea și autorizarea nu sunt același lucru
  • Autentificarea dovedește identitatea apelantului
  • Autentificarea cu nume de utilizator și parolă este un exemplu

Formular de autentificare

Azure API Management

Prezentare generală a autorizării

Cereri nesecurizate vs. securizate

  • Autorizarea controlează permisiunile
  • Un utilizator autentificat poate fi în continuare neautorizat
  • Exemplu: doar administratorii accesează zona de administrare
Azure API Management

Exemplu: aplicație meteo

Autorizarea aplicației meteo

Azure API Management

Introducere în OAuth

  • OAuth este utilizat pentru autentificare
  • Utilizat și pentru autorizare
  • Protocol de securitate complex
  • Nivel ridicat de securitate

Emiterea token-ului de acces

Azure API Management

Exemplu Google OAuth

Exemplu Google OAuth

Azure API Management

Autorizarea prin cheie API în Azure Functions

  • Autentificarea nu este întotdeauna necesară pentru autorizare
  • Endpoint-urile HTTP pot fi securizate cu chei API
  • Șir lung de caractere
  • În Azure Functions se generează o cheie implicită
  • Cheia trebuie inclusă în cerere
  • Clientul trebuie să cunoască cheia
  • Clientul nu trebuie să își dovedească identitatea

Configurarea unei chei API în Azure

Azure API Management

Scopurile cheilor API

Scopurile cheilor API într-o funcție Azure

  • Scopuri diferite pentru tipuri diferite de chei
  • Cheie la nivel de funcție — acordă acces la funcții specifice
    • Ca o cheie fizică pentru o ușă anume
  • Cheie la nivel de host
    • Acordă acces la toate funcțiile dintr-o aplicație
    • Ca o cheie master care deschide orice ușă din clădire
Azure API Management

Autentificarea în API Management

  • APIM poate fi conectat la un furnizor de autentificare
  • Un astfel de furnizor este Entra ID
    • Cunoscut anterior ca Active Directory
  • Integrarea cu OAuth este mai sigură decât cheile API
    • Mult mai complexă

Activarea integrării Entra ID în APIM

Azure API Management

Politici de autorizare în API Management

 

Validarea JWT în APIM

Autorizarea este implementată prin politici în API Management

  • Politicile definesc regulile de acces

  • Restricționează endpoint-urile pe baza rolurilor

  • Asigură că doar clienții autorizați apelează API-urile

Azure API Management

Să exersăm!

Azure API Management

Preparing Video For Download...