Platforma tożsamości Microsoft scenariusze wymiany tokenów przy użyciu protokołu SAML i OIDC/OAuth

Protokoły SAML i OpenID Połączenie (OIDC) / OAuth to popularne protokoły używane do implementowania logowania jednokrotnego. Niektóre aplikacje mogą implementować tylko protokół SAML, a inne mogą implementować tylko OIDC/OAuth. Oba protokoły używają tokenów do komunikowania wpisów tajnych. Aby dowiedzieć się więcej o protokole SAML, zobacz Protokół SAML logowania jednokrotnego. Aby dowiedzieć się więcej na temat protokołów OIDC/OAuth, zobacz Protokoły OAuth 2.0 i OpenID Połączenie w Platforma tożsamości Microsoft.

W tym artykule opisano typowy scenariusz, w którym aplikacja implementuje język SAML, ale wywołuje interfejs API programu Graph, który używa protokołu OIDC/OAuth. Podstawowe wskazówki są dostępne dla osób pracujących w tym scenariuszu.

Scenariusz: masz token SAML i chcesz wywołać interfejs API programu Graph

Wiele aplikacji jest implementowanych przy użyciu języka SAML. Jednak interfejs API programu Graph używa protokołów OIDC/OAuth. Istnieje możliwość dodania funkcji OIDC/OAuth do aplikacji SAML, choć nie jest to proste. Po udostępnieniu funkcji OAuth w aplikacji można użyć interfejsu API programu Graph.

Ogólna strategia polega na dodaniu stosu OIDC/OAuth do aplikacji. Za pomocą aplikacji, która implementuje oba standardy, można użyć pliku cookie sesji. Nie wymieniasz tokenu jawnie. Rejestrujesz użytkownika przy użyciu języka SAML, który generuje plik cookie sesji. Gdy interfejs API programu Graph wywołuje przepływ OAuth, do uwierzytelniania służy plik cookie sesji. Ta strategia zakłada, że testy dostępu warunkowego są przekazywane, a użytkownik jest autoryzowany.

Uwaga

Zalecaną biblioteką do dodawania zachowania OIDC/OAuth do aplikacji jest biblioteka Microsoft Authentication Library (MSAL).

Następne kroki