Tokeny zabezpieczające

Scentralizowany dostawca tożsamości jest szczególnie przydatny w przypadku aplikacji, które mają użytkowników na całym świecie, którzy niekoniecznie logują się z sieci przedsiębiorstwa. Platforma tożsamości Microsoft uwierzytelnia użytkowników i udostępnia tokeny zabezpieczające, takie jak tokeny dostępu, tokeny odświeżania i tokeny identyfikatorów. Tokeny zabezpieczające umożliwiają aplikacji klienckiej dostęp do chronionych zasobów na serwerze zasobów.

Token dostępu: token dostępu jest tokenem zabezpieczającym wystawionym przez serwer autoryzacji w ramach przepływu OAuth 2.0 . Zawiera informacje o użytkowniku i zasobie, dla którego jest przeznaczony token. Te informacje mogą służyć do uzyskiwania dostępu do internetowych interfejsów API i innych chronionych zasobów. Tokeny dostępu są weryfikowane przez zasoby w celu udzielenia dostępu do aplikacji klienckiej. Aby dowiedzieć się więcej o tym, jak Platforma tożsamości Microsoft problemy z tokenami dostępu, zobacz Tokeny dostępu.

Token odświeżania: ponieważ tokeny dostępu są ważne tylko przez krótki okres czasu, serwery autoryzacji czasami wystawiają token odświeżania w tym samym czasie, w którym jest wystawiany token dostępu. W razie potrzeby aplikacja kliencka może wymienić ten token odświeżania dla nowego tokenu dostępu. Aby dowiedzieć się więcej o tym, jak Platforma tożsamości Microsoft używa tokenów odświeżania w celu odwołania uprawnień, zobacz Odświeżanie tokenów.

Token identyfikatora: tokeny identyfikatorów są wysyłane do aplikacji klienckiej w ramach przepływu OpenID Connect . Można je wysłać razem lub zamiast tokenu dostępu. Tokeny identyfikatorów są używane przez klienta do uwierzytelniania użytkownika. Aby dowiedzieć się więcej o tym, jak Platforma tożsamości Microsoft wystawia tokeny identyfikatorów, zobacz Tokeny identyfikatorów.

Wiele aplikacji dla przedsiębiorstw używa protokołu SAML do uwierzytelniania użytkowników. Aby uzyskać informacje na temat asercji SAML, zobacz Dokumentacja tokenu SAML usługi Azure Active Directory.

Weryfikowanie tokenów zabezpieczających

Jest to aplikacja, dla której wygenerowano token, aplikację internetową zalogowaną przez użytkownika lub wywoływany internetowy interfejs API w celu zweryfikowania tokenu. Token jest podpisany przez serwer autoryzacji przy użyciu klucza prywatnego. Serwer autoryzacji publikuje odpowiedni klucz publiczny. Aby zweryfikować token, aplikacja weryfikuje podpis przy użyciu klucza publicznego serwera autoryzacji, aby sprawdzić, czy podpis został utworzony przy użyciu klucza prywatnego.

Tokeny są ważne tylko przez ograniczony czas, więc serwer autoryzacji często udostępnia parę tokenów;

  • Token dostępu, który uzyskuje dostęp do aplikacji lub chronionego zasobu.
  • Token odświeżania, który służy do odświeżania tokenu dostępu, gdy token dostępu jest blisko wygaśnięcia.

Tokeny dostępu są przekazywane do internetowego interfejsu API jako token elementu nośnego w nagłówku Authorization . Aplikacja może podać token odświeżania na serwerze autoryzacji. Jeśli dostęp użytkownika do aplikacji nie został odwołany, zostanie przywrócony nowy token dostępu i nowy token odświeżania. Jest to sposób obsługi scenariusza opuszczenia przedsiębiorstwa przez osobę opuszczającą przedsiębiorstwo. Gdy serwer autoryzacji otrzyma token odświeżania, nie będzie wystawiać innego prawidłowego tokenu dostępu, jeśli użytkownik nie jest już autoryzowany.

Tokeny sieci Web JSON i oświadczenia

Platforma tożsamości Microsoft implementuje tokeny zabezpieczające jako tokeny sieci Web JSON (JWTs), które zawierają oświadczenia. Ponieważ JWTs są używane jako tokeny zabezpieczające, ta forma uwierzytelniania jest czasami nazywana uwierzytelnianiem JWT.

Oświadczenie zapewnia asercji dotyczące jednej jednostki, takiej jak aplikacja kliencka lub właściciel zasobu, do innej jednostki, takiej jak serwer zasobów. Oświadczenie może być również określane jako oświadczenie JWT lub oświadczenie tokenu internetowego JSON.

Oświadczenia to pary nazw lub wartości, które przekazują fakty dotyczące podmiotu tokenu. Na przykład oświadczenie może zawierać fakty dotyczące podmiotu zabezpieczeń uwierzytelnionego przez serwer autoryzacji. Oświadczenia obecne w określonym tokenie zależą od wielu rzeczy, takich jak typ tokenu, typ poświadczeń używany do uwierzytelniania podmiotu i konfiguracja aplikacji.

Aplikacje mogą używać oświadczeń do różnych zadań, takich jak:

  • Zweryfikuj token.
  • Zidentyfikuj dzierżawę podmiotu tokenu.
  • Wyświetlanie informacji o użytkowniku.
  • Określ autoryzację podmiotu.

Oświadczenie składa się z par klucz-wartość, które zawierają informacje, takie jak:

  • Serwer tokenu zabezpieczającego, który wygenerował token.
  • Data wygenerowania tokenu.
  • Temat (taki jak użytkownik, ale nie demony).
  • Odbiorcy, czyli aplikacja, dla której wygenerowano token.
  • Aplikacja (klient), która poprosiła o token. W przypadku aplikacji internetowych ta aplikacja może być taka sama jak odbiorcy.

Aby dowiedzieć się więcej o tym, jak Platforma tożsamości Microsoft implementuje tokeny i informacje o oświadczeniach, zobacz Tokeny dostępu i tokeny identyfikatorów.

Jak każdy przepływ emituje tokeny i kody

W zależności od sposobu tworzenia klienta może on używać jednego (lub kilku) przepływów uwierzytelniania obsługiwanych przez Platforma tożsamości Microsoft. Te przepływy mogą tworzyć różne tokeny (tokeny identyfikatorów, tokeny odświeżania, tokeny dostępu) i kody autoryzacji. Wymagają one różnych tokenów, aby działały. Ta tabela zawiera omówienie.

Przepływ Wymaga Token identyfikatora Token dostępu Odśwież token Kod autoryzacji
Przepływ kodu autoryzacji x x x x
Niejawny przepływ x x
Przepływ hybrydowego OIDC x x
Odświeżanie realizacji tokenu Odśwież token x x x
Przepływ „w imieniu” Token dostępu x x x
Poświadczenia klienta x (tylko aplikacja)

Tokeny wystawione za pośrednictwem trybu niejawnego mają ograniczenie długości, ponieważ są przekazywane z powrotem do przeglądarki za pośrednictwem adresu URL, gdzie response_mode to query lub fragment. Niektóre przeglądarki mają limit rozmiaru adresu URL, który można umieścić na pasku przeglądarki i kończy się niepowodzeniem, gdy jest za długi. W związku z tym te tokeny nie mają groups ani wids oświadczeń.

Następne kroki

Aby uzyskać więcej informacji na temat uwierzytelniania i autoryzacji w Platforma tożsamości Microsoft, zobacz następujące artykuły: