Delen via


identity Pakket

Referenties voor Azure SDK-clients.

Pakketten

aio

Referenties voor asynchrone Azure SDK-clients.

Klassen

AuthenticationRecord

Niet-geheime accountgegevens voor een geverifieerde gebruiker

Met deze klasse kunt u DeviceCodeCredential en InteractiveBrowserCredential toegang krijgen tot verificatiegegevens die eerder in de cache zijn opgeslagen. Toepassingen mogen geen exemplaren van deze klasse maken. In plaats daarvan moeten ze er een verkrijgen van de verificatiemethode van een referentie, zoals authenticate. Zie het voorbeeld van user_authentication voor meer informatie.

AuthenticationRequiredError

Interactieve verificatie is vereist om een token te verkrijgen.

Deze fout wordt alleen veroorzaakt door interactieve gebruikersreferenties die niet automatisch om gebruikersinteractie vragen indien nodig. De eigenschappen bieden aanvullende informatie die mogelijk vereist is voor verificatie. In het control_interactive_prompts voorbeeld ziet u hoe deze fout wordt verwerkt door de verificatiemethode van een referentie aan te roepen.

AuthorizationCodeCredential

Verifieert door een autorisatiecode in te wisselen die eerder is verkregen van Azure Active Directory.

Zie Documentatie voor Azure Active Directory voor meer informatie over de verificatiestroom.

AzureAuthorityHosts

Referenties voor Azure SDK-clients.

AzureCliCredential

Verifieert door een token aan te vragen bij de Azure CLI.

Hiervoor moet u zich eerder aanmelden bij Azure via 'az login', en wordt de momenteel aangemelde identiteit van de CLI gebruikt.

AzureDeveloperCliCredential

Verifieert door een token aan te vragen bij de Azure Developer CLI.

Azure Developer CLI is een opdrachtregelinterfaceprogramma waarmee ontwikkelaars resources in Azure kunnen maken, beheren en implementeren. Het is gebouwd op de Azure CLI en biedt aanvullende functionaliteit die specifiek is voor Azure-ontwikkelaars. Hiermee kunnen gebruikers zich verifiëren als een gebruiker en/of een service-principal op basis van Azure Active Directory (Azure AD). De AzureDeveloperCliCredential wordt geverifieerd in een ontwikkelomgeving en verkrijgt een token namens de aangemelde gebruiker of service-principal in Azure Developer CLI. Het fungeert als de Azure Developer CLI aangemelde gebruiker of service-principal en voert een Azure CLI-opdracht eronder uit om de toepassing te verifiëren op basis van Azure Active Directory.

Als u deze referentie wilt gebruiken, moet de ontwikkelaar zich lokaal verifiëren in Azure Developer CLI met behulp van een van de onderstaande opdrachten:

  • Voer azd auth login uit in Azure Developer CLI om interactief als gebruiker te verifiëren.

  • Voer 'azd auth login –client-id 'client_id' -client-secret 'client_secret' -tenant-id 'tenant_id' uit om te verifiëren als een service-principal.

Mogelijk moet u dit proces na een bepaalde periode herhalen, afhankelijk van de geldigheid van het vernieuwingstoken in uw organisatie. Over het algemeen is de geldigheidsperiode van het vernieuwingstoken enkele weken tot enkele maanden. AzureDeveloperCliCredential vraagt u om u opnieuw aan te melden.

AzurePowerShellCredential

Verifieert door een token aan te vragen bij Azure PowerShell.

Hiervoor moet u zich eerder aanmelden bij Azure via 'Connect-AzAccount' en wordt de momenteel aangemelde identiteit gebruikt.

CertificateCredential

Verifieert als een service-principal met behulp van een certificaat.

Het certificaat moet een persoonlijke RSA-sleutel hebben, omdat deze referentie asserties ondertekent met BEHULP van RS256. Zie Documentatie voor Azure Active Directory voor meer informatie over het configureren van certificaatverificatie.

ChainedTokenCredential

Een reeks referenties die zelf een referentie is.

De get_token methode roept get_token op elke referentie in de volgorde aan en retourneert het eerste geldige token dat is ontvangen.

ClientAssertionCredential

Hiermee wordt een service-principal geverifieerd met een JWT-assertie.

Deze referentie is voor geavanceerde scenario's. CertificateCredential heeft een handigere API voor het meest voorkomende assertiescenario, waarbij een service-principal wordt geverifieerd met een certificaat.

ClientSecretCredential

Verifieert als een service-principal met behulp van een clientgeheim.

CredentialUnavailableError

De referentie heeft niet geprobeerd te verifiëren omdat de vereiste gegevens of status niet beschikbaar zijn.

DefaultAzureCredential

Een standaardreferentie die de meeste Azure SDK-verificatiescenario's kan verwerken.

De identiteit die wordt gebruikt, is afhankelijk van de omgeving. Wanneer een toegangstoken nodig is, wordt er een aangevraagd met behulp van deze identiteiten, waarbij wordt gestopt wanneer er een token wordt verstrekt:

  1. Een service-principal die is geconfigureerd door omgevingsvariabelen. Zie EnvironmentCredential voor meer informatie.

  2. WorkloadIdentityCredential als de configuratie van de omgevingsvariabele is ingesteld door de webhook voor azure-workloadidentiteit.

  3. Een door Azure beheerde identiteit. Zie ManagedIdentityCredential voor meer informatie.

  4. Alleen in Windows: een gebruiker die zich heeft aangemeld met een Microsoft-toepassing, zoals Visual Studio. Als zich meerdere identiteiten in de cache bevinden, wordt de waarde van de omgevingsvariabele AZURE_USERNAME gebruikt om te selecteren welke identiteit moet worden gebruikt. Zie SharedTokenCacheCredential voor meer informatie.

  5. De identiteit die momenteel is aangemeld bij de Azure CLI.

  6. De identiteit die momenteel is aangemeld bij Azure PowerShell.

  7. De identiteit die momenteel is aangemeld bij de Azure Developer CLI.

Dit standaardgedrag kan worden geconfigureerd met trefwoordargumenten.

DeviceCodeCredential

Verifieert gebruikers via de apparaatcodestroom.

Wanneer get_token wordt aangeroepen, verkrijgt deze referentie een verificatie-URL en code van Azure Active Directory. Een gebruiker moet naar de URL bladeren, de code invoeren en verifiëren met Azure Active Directory. Als de gebruiker is geverifieerd, ontvangt de referentie een toegangstoken.

Deze referentie is voornamelijk nuttig voor het verifiëren van een gebruiker in een omgeving zonder een webbrowser, zoals een SSH-sessie. Als er een webbrowser beschikbaar is, InteractiveBrowserCredential is dit handiger omdat hiermee automatisch een browser wordt geopend op de aanmeldingspagina.

EnvironmentCredential

Een referentie die is geconfigureerd door omgevingsvariabelen.

Deze referentie kan worden geverifieerd als een service-principal met behulp van een clientgeheim of een certificaat, of als een gebruiker met een gebruikersnaam en wachtwoord. Configuratie wordt geprobeerd in deze volgorde, met behulp van deze omgevingsvariabelen:

Service-principal met geheim:

  • AZURE_TENANT_ID: id van de tenant van de service-principal. Ook wel de map-id genoemd.

  • AZURE_CLIENT_ID: de client-id van de service-principal

  • AZURE_CLIENT_SECRET: een van de clientgeheimen van de service-principal

  • AZURE_AUTHORITY_HOST: autoriteit van een Azure Active Directory-eindpunt, bijvoorbeeld 'login.microsoftonline.com', de instantie voor de openbare Azure-cloud. Dit is de standaardinstelling wanneer er geen waarde wordt opgegeven.

Service-principal met certificaat:

  • AZURE_TENANT_ID: id van de tenant van de service-principal. Ook wel de map-id genoemd.

  • AZURE_CLIENT_ID: de client-id van de service-principal

  • AZURE_CLIENT_CERTIFICATE_PATH: pad naar een PEM- of PKCS12-certificaatbestand, inclusief de persoonlijke sleutel.

  • AZURE_CLIENT_CERTIFICATE_PASSWORD: (optioneel) wachtwoord van het certificaatbestand, indien van toepassing.

  • AZURE_AUTHORITY_HOST: autoriteit van een Azure Active Directory-eindpunt, bijvoorbeeld 'login.microsoftonline.com', de instantie voor de openbare Azure-cloud. Dit is de standaardinstelling wanneer er geen waarde wordt opgegeven.

Gebruiker met gebruikersnaam en wachtwoord:

  • AZURE_CLIENT_ID: de client-id van de toepassing

  • AZURE_USERNAME: een gebruikersnaam (meestal een e-mailadres)

  • AZURE_PASSWORD: het wachtwoord van die gebruiker

  • AZURE_TENANT_ID: (optioneel) id van de tenant van de service-principal. Ook wel de map-id genoemd. Als dit niet wordt opgegeven, wordt standaard de tenant 'organisaties' gebruikt, die alleen werk- of schoolaccounts van Azure Active Directory ondersteunt.

  • AZURE_AUTHORITY_HOST: autoriteit van een Azure Active Directory-eindpunt, bijvoorbeeld 'login.microsoftonline.com', de instantie voor de openbare Azure-cloud. Dit is de standaardinstelling wanneer er geen waarde wordt opgegeven.

InteractiveBrowserCredential

Hiermee opent u een browser om een gebruiker interactief te verifiëren.

get_token opent een browser naar een aanmeldings-URL van Azure Active Directory en verifieert daar een gebruiker met de autorisatiecodestroom, met behulp van PKCE (Proof Key for Code Exchange) intern om de code te beveiligen.

KnownAuthorities

Alias van AzureAuthorityHosts

ManagedIdentityCredential

Verifieert met een door Azure beheerde identiteit in elke hostingomgeving die ondersteuning biedt voor beheerde identiteiten.

Deze referentie gebruikt standaard een door het systeem toegewezen identiteit. Als u een door de gebruiker toegewezen identiteit wilt configureren, gebruikt u een van de trefwoordargumenten. Zie Documentatie voor Azure Active Directory voor meer informatie over het configureren van beheerde identiteiten voor toepassingen.

OnBehalfOfCredential

Hiermee wordt een service-principal geverifieerd via de on-behalf-of-stroom.

Deze stroom wordt doorgaans gebruikt door middelste services die aanvragen voor andere services met een gedelegeerde gebruikersidentiteit autoriseren. Omdat dit geen interactieve verificatiestroom is, moet een toepassing die deze gebruikt beheerderstoestemming hebben voor gedelegeerde machtigingen voordat tokens voor deze worden aangevraagd. Zie Documentatie voor Azure Active Directory voor een gedetailleerde beschrijving van de on-behalf-of-stroom.

SharedTokenCacheCredential

Verifieert met behulp van tokens in de lokale cache die wordt gedeeld tussen Microsoft-toepassingen.

TokenCachePersistenceOptions

Opties voor permanente tokencache.

De meeste referenties accepteren een exemplaar van deze klasse om permanente tokencaching te configureren. Met de standaardwaarden wordt een referentie geconfigureerd voor het gebruik van een cache die wordt gedeeld met Microsoft-ontwikkelhulpprogramma's en SharedTokenCacheCredential. Als u de gegevens van een referentie wilt isoleren van andere toepassingen, geeft u een naam op voor de cache.

Standaard wordt de cache versleuteld met de API voor gebruikersgegevensbescherming van het huidige platform en wordt er een fout gegenereerd wanneer deze niet beschikbaar is. Als u de cache wilt configureren om terug te vallen op een niet-versleuteld bestand in plaats van een fout op te geven, geeft u allow_unencrypted_storage=True op.

Waarschuwing

De cache bevat verificatiegeheimen. Als de cache niet is versleuteld, wordt deze beveiligd met de

de verantwoordelijkheid van de toepassing. Een inbreuk op de inhoud ervan zal accounts volledig in gevaar komen.

UsernamePasswordCredential

Hiermee wordt een gebruiker geverifieerd met een gebruikersnaam en wachtwoord.

Over het algemeen raadt Microsoft dit type verificatie niet aan, omdat het minder veilig is dan andere verificatiestromen.

Verificatie met deze referentie is niet interactief, dus het is niet compatibel met enige vorm van meervoudige verificatie of toestemmingsprompts. De toepassing moet al toestemming hebben van de gebruiker of een mapbeheerder.

Met deze referentie kunnen alleen werk- en schoolaccounts worden geverifieerd. Microsoft-accounts worden niet ondersteund. Zie Documentatie voor Azure Active Directory voor meer informatie over accounttypen.

VisualStudioCodeCredential

Verifieert als de Azure-gebruiker die is aangemeld bij Visual Studio Code via de extensie 'Azure-account'.

Het is een bekend probleem dat deze referentie niet werkt met azure-accountextensieversies nieuwer dan 0.9.11. Er wordt gewerkt aan een oplossing voor de lange termijn voor dit probleem. In de tussentijd kunt u overwegen om te verifiëren met AzureCliCredential.

WorkloadIdentityCredential

Verifieert met behulp van een Azure Active Directory-workloadidentiteit.

Verificatie van workloadidentiteit is een functie in Azure waarmee toepassingen die worden uitgevoerd op virtuele machines (VM's) toegang hebben tot andere Azure-resources zonder dat er een service-principal of beheerde identiteit nodig is. Met verificatie van workloadidentiteit worden toepassingen geverifieerd met behulp van hun eigen identiteit, in plaats van een gedeelde service-principal of beheerde identiteit. Achter de schermen maakt verificatie van workloadidentiteit gebruik van het concept van Service Account Credentials (SACs), die automatisch door Azure worden gemaakt en veilig worden opgeslagen in de VM. Door verificatie van workloadidentiteit te gebruiken, voorkomt u dat u service-principals of beheerde identiteiten voor elke toepassing op elke VM moet beheren en roteren. Omdat SACs automatisch worden gemaakt en beheerd door Azure, hoeft u zich bovendien geen zorgen te maken over het opslaan en beveiligen van gevoelige referenties zelf.

WorkloadIdentityCredential ondersteunt Verificatie van Azure-workloadidentiteit in Azure Kubernetes en verkrijgt een token met behulp van de serviceaccountreferenties die beschikbaar zijn in de Azure Kubernetes-omgeving. Raadpleeg dit overzicht van workloadidentiteiten voor meer informatie.