identity Pakiet

Poświadczenia dla klientów zestawu Azure SDK.

Pakiety

aio

Poświadczenia dla asynchronicznych klientów zestawu Azure SDK.

Klasy

AuthenticationRecord

Informacje o koncie bez wpisu tajnego dla uwierzytelnionego użytkownika

Ta klasa umożliwia DeviceCodeCredential dostęp do wcześniej buforowanych danych uwierzytelniania i InteractiveBrowserCredential uzyskiwania do ich dostępu. Aplikacje nie powinny tworzyć wystąpień tej klasy. Zamiast tego należy uzyskać jeden z metody uwierzytelniania poświadczeń, takiej jak <xref:InteractiveBrowserCredential.authenticate>. Aby uzyskać więcej informacji, zobacz przykład user_authentication.

AuthenticationRequiredError

Do uzyskania tokenu jest wymagane uwierzytelnianie interakcyjne.

Ten błąd jest zgłaszany tylko przez interakcyjne poświadczenia użytkownika skonfigurowane do automatycznego monitowania o interakcję z użytkownikiem zgodnie z potrzebami. Jego właściwości zawierają dodatkowe informacje, które mogą być wymagane do uwierzytelnienia. W przykładzie control_interactive_prompts pokazano obsługę tego błędu przez wywołanie metody "uwierzytelniania" poświadczeń.

AuthorizationCodeCredential

Uwierzytelnia się przez zrealizowanie kodu autoryzacji uzyskanego wcześniej z usługi Azure Active Directory.

Aby uzyskać więcej informacji na temat przepływu uwierzytelniania, zobacz dokumentację usługi Azure Active Directory .

AzureAuthorityHosts

Poświadczenia dla klientów zestawu Azure SDK.

AzureCliCredential

Uwierzytelnia się, żądając tokenu z interfejsu wiersza polecenia platformy Azure.

Wymaga to wcześniejszego zalogowania się na platformie Azure za pomocą polecenia "az login" i będzie używać aktualnie zalogowanego identyfikatora interfejsu wiersza polecenia.

AzurePowerShellCredential

Uwierzytelnia się, żądając tokenu z Azure PowerShell.

Wymaga to wcześniejszego zalogowania się na platformie Azure za pośrednictwem polecenia "Connect-AzAccount" i będzie używać aktualnie zalogowanej tożsamości.

CertificateCredential

Uwierzytelnia się jako jednostka usługi przy użyciu certyfikatu.

Certyfikat musi mieć klucz prywatny RSA, ponieważ to poświadczenie podpisuje asercji przy użyciu rs256. Aby uzyskać więcej informacji na temat konfigurowania uwierzytelniania certyfikatów, zobacz dokumentację usługi Azure Active Directory .

ChainedTokenCredential

Sekwencja poświadczeń, która sama jest poświadczenie.

Metoda get_token wywołuje get_token każde poświadczenie w sekwencji, w kolejności, zwracając pierwszy prawidłowy token odebrany.

ClientAssertionCredential

Poświadczenia dla klientów zestawu Azure SDK.

ClientSecretCredential

Uwierzytelnia się jako jednostka usługi przy użyciu klucza tajnego klienta.

CredentialUnavailableError

Poświadczenie nie próbowało się uwierzytelnić, ponieważ wymagane dane lub stan są niedostępne.

DefaultAzureCredential

Domyślne poświadczenia obsługujące większość scenariuszy uwierzytelniania zestawu Azure SDK.

Używana tożsamość zależy od środowiska. Gdy potrzebny jest token dostępu, żąda go z kolei przy użyciu tych tożsamości, zatrzymując się, gdy udostępnia token:

  1. Jednostka usługi skonfigurowana przez zmienne środowiskowe. Zobacz EnvironmentCredential , aby uzyskać więcej informacji.

  2. Tożsamość zarządzana platformy Azure. Zobacz ManagedIdentityCredential , aby uzyskać więcej informacji.

  3. Tylko w systemie Windows: użytkownik, który zalogował się przy użyciu aplikacji firmy Microsoft, takiej jak Visual Studio. Jeśli w pamięci podręcznej znajduje się wiele tożsamości, wartość zmiennej środowiskowej AZURE_USERNAME jest używana do wybierania tożsamości do użycia. Zobacz SharedTokenCacheCredential , aby uzyskać więcej informacji.

  4. Użytkownik jest obecnie zalogowany do Visual Studio Code.

  5. Tożsamość aktualnie zalogowana do interfejsu wiersza polecenia platformy Azure.

  6. Tożsamość obecnie zalogowana do Azure PowerShell.

To domyślne zachowanie można skonfigurować przy użyciu argumentów słów kluczowych.

DeviceCodeCredential

Uwierzytelnia użytkowników za pośrednictwem przepływu kodu urządzenia.

Po <xref:azure.identity.get_token> wywołaniu to poświadczenie uzyskuje adres URL weryfikacji i kod z usługi Azure Active Directory. Użytkownik musi przejść do adresu URL, wprowadzić kod i uwierzytelnić się w usłudze Azure Active Directory. Jeśli użytkownik zostanie pomyślnie uwierzytelniony, poświadczenie otrzyma token dostępu.

To poświadczenie jest przydatne głównie w przypadku uwierzytelniania użytkownika w środowisku bez przeglądarki internetowej, takiej jak sesja SSH. Jeśli przeglądarka internetowa jest dostępna, jest wygodniejsza, InteractiveBrowserCredential ponieważ automatycznie otwiera przeglądarkę na stronie logowania.

EnvironmentCredential

Poświadczenie skonfigurowane przez zmienne środowiskowe.

To poświadczenie może uwierzytelniać się jako jednostka usługi przy użyciu klucza tajnego klienta lub certyfikatu albo jako użytkownik z nazwą użytkownika i hasłem. Próba konfiguracji jest podejmowana w tej kolejności przy użyciu następujących zmiennych środowiskowych:

Jednostka usługi z wpisem tajnym:

  • AZURE_TENANT_ID: identyfikator dzierżawy jednostki usługi. Nazwany również identyfikatorem "katalogu".

  • AZURE_CLIENT_ID: identyfikator klienta jednostki usługi

  • AZURE_CLIENT_SECRET: jeden z wpisów tajnych klienta jednostki usługi

  • AZURE_AUTHORITY_HOST: urząd punktu końcowego usługi Azure Active Directory, na przykład "login.microsoftonline.com", urząd dla chmury publicznej platformy Azure, który jest wartością domyślną, gdy nie zostanie podana żadna wartość.

Jednostka usługi z certyfikatem:

  • AZURE_TENANT_ID: identyfikator dzierżawy jednostki usługi. Nazwany również identyfikatorem "katalogu".

  • AZURE_CLIENT_ID: identyfikator klienta jednostki usługi

  • AZURE_CLIENT_CERTIFICATE_PATH: ścieżka do pliku certyfikatu PEM lub PKCS12, w tym klucza prywatnego. Certyfikat nie może być chroniony hasłem.

  • AZURE_AUTHORITY_HOST: urząd punktu końcowego usługi Azure Active Directory, na przykład "login.microsoftonline.com", urząd dla chmury publicznej platformy Azure, który jest wartością domyślną, gdy nie zostanie podana żadna wartość.

Użytkownik z nazwą użytkownika i hasłem:

  • AZURE_CLIENT_ID: identyfikator klienta aplikacji

  • AZURE_USERNAME: nazwa użytkownika (zazwyczaj adres e-mail)

  • AZURE_PASSWORD: hasło tego użytkownika

  • AZURE_TENANT_ID: (opcjonalnie) identyfikator dzierżawy jednostki usługi. Nazwany również identyfikatorem "katalogu". Jeśli nie zostanie podana, wartość domyślna to dzierżawa "organizacje", która obsługuje tylko konta służbowe usługi Azure Active Directory.

  • AZURE_AUTHORITY_HOST: urząd punktu końcowego usługi Azure Active Directory, na przykład "login.microsoftonline.com", urząd dla chmury publicznej platformy Azure, który jest wartością domyślną, gdy nie zostanie podana żadna wartość.

InteractiveBrowserCredential

Otwiera przeglądarkę w celu interaktywnego uwierzytelniania użytkownika.

<xref:azure.identity.get_token> Otwiera przeglądarkę pod adresem URL logowania udostępnianym przez usługę Azure Active Directory i uwierzytelnia użytkownika w przepływie kodu autoryzacji przy użyciu klucza weryfikacji dla programu Code Exchange wewnętrznie w celu ochrony kodu.

KnownAuthorities

Alias AzureAuthorityHosts

ManagedIdentityCredential

Uwierzytelnia się przy użyciu tożsamości zarządzanej platformy Azure w dowolnym środowisku hostingu, które obsługuje tożsamości zarządzane.

To poświadczenie domyślnie używa tożsamości przypisanej przez system. Aby skonfigurować tożsamość przypisaną przez użytkownika, użyj jednego z argumentów słowa kluczowego. Aby uzyskać więcej informacji na temat konfigurowania tożsamości zarządzanej dla aplikacji, zobacz dokumentację usługi Azure Active Directory .

OnBehalfOfCredential

Uwierzytelnia jednostkę usługi za pośrednictwem przepływu w imieniu.

Ten przepływ jest zwykle używany przez usługi warstwy środkowej, które autoryzuje żądania do innych usług z tożsamością użytkownika delegowanego. Ponieważ nie jest to przepływ uwierzytelniania interakcyjnego, aplikacja korzystająca z niej musi mieć zgodę administratora na wszelkie delegowane uprawnienia przed żądaniem tokenów dla nich. Aby uzyskać bardziej szczegółowy opis przepływu w imieniu użytkownika, zobacz dokumentację usługi Azure Active Directory .

SharedTokenCacheCredential

Uwierzytelnia się przy użyciu tokenów w lokalnej pamięci podręcznej udostępnionej między aplikacjami firmy Microsoft.

TokenCachePersistenceOptions

Opcje trwałego buforowania tokenów.

Większość poświadczeń akceptuje wystąpienie tej klasy w celu skonfigurowania trwałego buforowania tokenów. Wartości domyślne umożliwiają skonfigurowanie poświadczeń do używania pamięci podręcznej udostępnionej za pomocą narzędzi deweloperskich firmy Microsoft i SharedTokenCacheCredential. Aby odizolować dane poświadczeń od innych aplikacji, określ nazwę pamięci podręcznej.

Domyślnie pamięć podręczna jest szyfrowana za pomocą interfejsu API ochrony danych użytkownika bieżącej platformy i zgłasza błąd, gdy jest to niedostępne. Aby skonfigurować pamięć podręczną, aby powrócić do niezaszyfrowanego pliku zamiast zgłaszać błąd, określ wartość allow_unencrypted_storage=True.

Ostrzeżenie

Pamięć podręczna zawiera wpisy tajne uwierzytelniania. Jeśli pamięć podręczna nie jest zaszyfrowana, ochrona jest

odpowiedzialność za aplikację. Naruszenie jego zawartości spowoduje pełne naruszenie zabezpieczeń kont.

Konfigurowanie poświadczeń na potrzeby trwałego buforowania

cache_options = TokenCachePersistenceOptions()

credential = InteractiveBrowserCredential(cache_persistence_options=cache_options)

określanie nazwy pamięci podręcznej w celu odizolowania pamięci podręcznej od innych aplikacji

TokenCachePersistenceOptions(name="my_application")

Skonfiguruj pamięć podręczną, aby powrócić do niezaszyfrowanego magazynu, gdy szyfrowanie jest niedostępne

TokenCachePersistenceOptions(allow_unencrypted_storage=True)

UsernamePasswordCredential

Uwierzytelnia użytkownika przy użyciu nazwy użytkownika i hasła.

Ogólnie rzecz biorąc, firma Microsoft nie zaleca tego rodzaju uwierzytelniania, ponieważ jest mniej bezpieczna niż inne przepływy uwierzytelniania.

Uwierzytelnianie przy użyciu tego poświadczenia nie jest interaktywne, więc nie jest zgodne z żadną formą uwierzytelniania wieloskładnikowego ani monitowania o zgodę. Aplikacja musi mieć już zgodę od użytkownika lub administratora katalogu.

To poświadczenie może uwierzytelniać tylko konta służbowe; Konta Microsoft nie są obsługiwane. Aby uzyskać więcej informacji na temat typów kont, zobacz dokumentację usługi Azure Active Directory .

VisualStudioCodeCredential

Uwierzytelnia się jako użytkownik platformy Azure zalogowany do Visual Studio Code.