Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel leert u hoe u veilig toepassingen kunt verifiëren om taken te automatiseren met behulp van de Microsoft Entra PowerShell-module. Het omvat certificaatgebaseerde authenticatie, clientgeheimen en beheerde identiteiten.
Deze kennis maakt efficiënte en veilige toegang tot Microsoft Entra en Azure resources mogelijk zonder gevoelige referenties handmatig te beheren. Het is van cruciaal belang voor het onderhouden van robuuste beveiligingsprocedures en het stroomlijnen van toegangsbeheer in cloudomgevingen.
Important
Alleen-app-toegang verleent machtigingen rechtstreeks aan een toepassing en vereist een beheerder om toestemming te geven voor de vereiste machtigingsbereiken. Zie Microsoft identity platform en de OAuth 2.0-clientreferentiestroom voor meer informatie over alleen-app-toegang.
Prerequisites
Als u alleen-app-toegang wilt gebruiken met de Microsoft Entra PowerShell-module, hebt u het volgende nodig:
- Een Microsoft Entra ID-account. Als u nog geen account hebt, kunt u gratis een account maken.
- Een van de volgende rollen:
- Microsoft Entra PowerShell-module geïnstalleerd. Volg de handleiding Microsoft Entra PowerShell-module installeren om de module te installeren.
- Een certificaat dat moet worden gebruikt als referentie voor de toepassing. Het certificaat kan een zelfondertekend certificaat of een certificaat van een instantie zijn. Zie Een zelfondertekend openbaar certificaat maken voor meer informatie over het maken van een zelfondertekend certificaat. Zelfondertekende certificaten worden niet aanbevolen voor productiescenario's. Haal een certificaat op bij een certificeringsinstantie voor productiescenario's.
Verificatie op basis van certificaten gebruiken
U moet deze informatie hebben om te verifiëren met behulp van een certificaat.
- Certificaatonderwerp of vingerafdruk van het certificaat dat is geüpload naar uw Microsoft Entra app-registratie.
- Toepassings-id voor uw app-registratie. Zie Een aangepaste toepassing maken als u nog geen app-registratie hebt.
- Uw tenant-id.
In deze sectie leert u hoe u een certificaat gebruikt om te verifiëren met de Microsoft Entra PowerShell-module. U kunt de vingerafdruk van het certificaat, de certificaatnaam of het certificaat zelf gebruiken om te verifiëren. Als u wilt verifiëren met behulp van de gegeven voorbeelden, moet u zich aanmelden met ten minste de rol Beheerder van bevoorrechte rollen .
Vingerafdruk van certificaat gebruiken
$params = @{
ClientId = 'YOUR_APP_ID'
TenantId = 'YOUR_TENANT_ID'
CertificateThumbprint = 'YOUR_CERT_THUMBPRINT'
}
Connect-Entra @params
Als u de certificaatvingerafdruk in het Microsoft Entra-beheercentrum wilt vinden, gaat u naar Identity>App-registraties>Certificates & secrets>Certificates. Selecteer het certificaat en kopieer de vingerafdruk.
U kunt ook de volgende PowerShell-opdracht gebruiken om uw zelfondertekende certificaat op te halen:
Get-ChildItem Cert:\CurrentUser\My
Certificaatnaam gebruiken
$params = @{
ClientId = 'YOUR_APP_ID'
TenantId = 'YOUR_TENANT_ID'
CertificateName = 'YOUR_CERT_SUBJECT'
}
Connect-Entra @params
U vindt het certificaatonderwerp door de opdracht uit te voeren:
Get-ChildItem Cert:\CurrentUser\My\$CertThumbprint | Select Subject
Een certificaat gebruiken
$cert = Get-ChildItem Cert:\CurrentUser\My\$CertThumbprint
Connect-Entra -ClientId 'YOUR_APP_ID' -TenantId 'YOUR_TENANT_ID' -Certificate $cert
Als u een certificaat wilt gebruiken dat is opgeslagen in het certificaatarchief van uw computer of een andere locatie wanneer u verbinding maakt met Microsoft Entra PowerShell, geeft u de locatie van het certificaat op.
Als de verificatie slaagt, ziet u het bericht Welcome To Microsoft Graph!. Voer Get-EntraContext uit om te controleren of u via de app-only-methode bent geauthenticeerd. De uitvoer moet er als volgt uitzien.
ClientId : YOUR_APP_ID
TenantId : YOUR_TENANT_ID
CertificateThumbprint :
Scopes : {Group.Read.All, User.Read.All}
AuthType : AppOnly
CertificateName : YOUR_CERT_SUBJECT
Account :
AppName : {Your Awesome Application Name Here}
ContextScope : Process
Environment : Global
Clientgeheimgegevens gebruiken
De toekenning van clientreferenties wordt gebruikt om de app namens zichzelf toegang te geven tot resources en deze te autoriseren. Ondersteuning voor clientgeheimreferenties wordt toegevoegd door de parameter -ClientSecretCredential toe te voegen aan Connect-Entra.
# Define the Application (Client) ID and Secret
$applicationClientId = '<application(client)ID>' # Application (Client) ID
$applicationClientSecret = '<secret.value>' # Application Secret Value
$tenantId = 'Tenant_Id' # Tenant ID
# Convert the Client Secret to a Secure String
$secureClientSecret = ConvertTo-SecureString -String $applicationClientSecret -AsPlainText -Force
# Create a PSCredential Object Using the Client ID and Secure Client Secret
$clientSecretCredential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $applicationClientId, $secureClientSecret
# Connect to Microsoft Graph Using the Tenant ID and Client Secret Credential
Connect-Entra -TenantId $tenantId -ClientSecretCredential $clientSecretCredential
Als u een clientgeheim wilt maken of toevoegen, gebruikt u de opdracht New-EntraServicePrincipalPasswordCredential of raadpleegt u: Een clientgeheim toevoegen in Microsoft Entra-beheercentrum.
Note
Het is raadzaam om PowerShell 7 of hoger te gebruiken wanneer u de verificatiemethode met clientgeheimreferenties gebruikt.
Een beheerde identiteit gebruiken
Een veelvoorkomende uitdaging bij het schrijven van automatiseringsscripts is het beheer van geheimen, referenties, certificaten en sleutels die worden gebruikt om de communicatie tussen services te beveiligen. Elimineer de noodzaak om referenties te beheren door de module toegangstokens te geven voor Azure resources die worden beveiligd door Microsoft Entra ID. Het Azure platform beheert de identiteit en vereist niet dat u geheimen maakt of roteert.
Door het systeem toegewezen beheerde identiteit : maakt gebruik van een automatisch beheerde identiteit op een service-exemplaar. De identiteit is gekoppeld aan de levenscyclus van een service-exemplaar.
Connect-Entra -IdentityDoor de gebruiker toegewezen beheerde identiteit: maakt gebruik van een door de gebruiker gemaakte beheerde identiteit als een zelfstandige Azure-resource.
Connect-Entra -Identity -ClientId 'User_Assigned_Managed_identity_Client_Id'