Uwierzytelnienie nazwy użytkownika i hasła

Warning

Przepływ poświadczeń hasła właściciela zasobu (ROPC) został wycofany w publicznych aplikacjach klienckich ze względu na ryzyko bezpieczeństwa. Firma Microsoft zaleca korzystanie z bezpieczniejszego przepływu uwierzytelniania. Postępuj zgodnie z oficjalnymi wskazówkami, jak migrować z ROPC.

Poniższe treści dotyczą wszystkich bibliotek MSAL, a nie tylko biblioteki MSAL Python.

Microsoft zaleca, aby nie używać przepływu nazwy użytkownika i hasła. W większości scenariuszy dostępne są bezpieczniejsze alternatywy i zalecane. Ten przepływ wymaga bardzo wysokiego poziomu zaufania w aplikacji i niesie ze sobą ryzyko, które nie występują w innych przepływach. Tego przepływu należy używać tylko wtedy, gdy inne bezpieczniejsze przepływy nie są opłacalne. Aby uzyskać więcej informacji o tym, dlaczego należy unikać używania tego uprawnienia, zobacz dlaczego Microsoft dąży do tego, aby hasła odeszły do przeszłości.

Constraints

  • Z założenia i zgodnie z zasadami uwierzytelnianie za pomocą nazwy użytkownika i hasła działa tylko w przypadku kont służbowych i szkolnych, ale nie w przypadku kont Microsoft (MSA). Zobacz definicję tych 2 typów kont tutaj.
  • Uwierzytelnianie nazwy użytkownika/hasła nie jest zgodne z dostępem warunkowym i uwierzytelnianiem wieloskładnikowym, ponieważ nie jest to przepływ interaktywny, Platforma tożsamości Microsoft nie ma możliwości wyświetlenia okna dialogowego internetowego umożliwiającego użytkownikowi końcowemu interakcję. W związku z tym, jeśli Twoja aplikacja działa w dzierżawie usługi Microsoft Entra, w której administrator dzierżawy wymaga uwierzytelniania wieloskładnikowego (wymaga tego wiele organizacji), ten przepływ nie będzie działał.
  • Ponieważ uwierzytelnianie hasła użytkownika jest nieinterakcyjnym przepływem:
    • użytkownik aplikacji musi wcześniej wyrazić zgodę na korzystanie z aplikacji
    • lub administrator dzierżawy musi wcześniej wyrazić zgodę na korzystanie z aplikacji przez wszystkich użytkowników w dzierżawie.
    • Oznacza to, że:

Recommendations

Nawet jeśli zdecydujesz się używać uwierzytelniania za pomocą hasła użytkownika, nie należy utrwalać hasła użytkownika końcowego. Po pomyślnym początkowym uwierzytelnieniu przy użyciu nazwy użytkownika i hasła pamięć podręczna tokenów biblioteki MSAL uaktywnia się i automatycznie zapisuje w pamięci podręcznej token odświeżania (RT). Od tej pory aplikacja może po prostu wywołać bibliotekę MSAL acquire_token_silent() , aby uzyskać nowy token dostępu bez nazwy użytkownika i hasła.

Konfiguracja

Platforma tożsamości Microsoft obsługuje przepływ haseł użytkownika w publicznej aplikacji klienckiej i poufnej aplikacji klienckiej. Jeśli musisz skonfigurować aplikację jako klienta publicznego, włącz przełącznik pokazany na poniższym zrzucie ekranu, aby to umożliwić.

Konfiguracja aplikacji publicznej