Konfigurera inloggningsbeteende med hjälp av Home Realm Discovery
Den här artikeln innehåller en introduktion till hur du konfigurerar Microsoft Entra-autentiseringsbeteende för federerade användare med hjälp av HRD-principer (Home Realm Discovery). Den omfattar inloggning med automatisk acceleration för att hoppa över användarnamnets startskärm och automatiskt vidarebefordra användare till federerade inloggningsslutpunkter. Mer information om HRD-principer finns i artikeln Home Realm Discovery .
Inloggning med automatisk acceleration
Vissa organisationer konfigurerar domäner i sin Microsoft Entra-klientorganisation för att federera med en annan identitetsprovider (IDP), till exempel Active Directory Federation Services (AD FS) (ADFS) för användarautentisering. När en användare loggar in på ett program visas de först med en Microsoft Entra-inloggningssida. När användarens huvudnamn (UPN) har fyllts i tas de till inloggningssidan för den IDP som betjänar domänen om de befinner sig i en federerad domän. Under vissa omständigheter kanske administratörer vill dirigera användare till inloggningssidan när de loggar in på specifika program. Därför kan användare hoppa över den första Microsoft Entra-ID-sidan. Den här processen kallas för "automatisk inloggningsacceleration".
För federerade användare med molnaktiverade autentiseringsuppgifter, till exempel SMS-inloggning eller FIDO-nycklar, bör du förhindra automatisk acceleration av inloggning. Se Inaktivera automatisk accelerationsinloggning för att lära dig hur du förhindrar domäntips med HRD.
Viktigt!
Från och med april 2023 kan organisationer som använder automatisk acceleration eller smartlänkar börja se en ny skärm som läggs till i inloggningsgränssnittet. Den här skärmen, som kallas dialogrutan Domänbekräftelse, är en del av Microsofts allmänna åtagande för säkerhetshärdning och kräver att användaren bekräftar domänen för den klientorganisation där de loggar in på. Om du ser dialogrutan Domänbekräftelse och inte känner igen klientdomänen i listan bör du avbryta autentiseringsflödet och kontakta IT-administratören.
Mer information finns i dialogrutan Domänbekräftelse.
Förutsättningar
För att konfigurera HRD-principen för ett program i Microsoft Entra-ID behöver du:
- Ett Azure-konto med en aktiv prenumeration. Om du inte redan har ett konto kan du skapa ett konto kostnadsfritt.
- En av följande roller: Programadministratör, Molnprogramadministratör eller ägare av tjänstens huvudnamn.
- Den senaste förhandsversionen av Azure AD PowerShell-cmdleten.
Konfigurera en HRD-princip för ett program
Vi använder Azure AD PowerShell-cmdletar för att gå igenom några scenarier, bland annat:
Vi använder Microsoft Graph för att gå igenom några scenarier, bland annat:
Konfigurera HRD-princip för automatisk acceleration för ett program i en klientorganisation med en enda federerad domän.
Konfigurera HRD-princip för automatisk acceleration för ett program till en av flera domäner som har verifierats för din klientorganisation.
Konfigurera HRD-princip för att aktivera ett äldre program för direkt användarnamn-/lösenordsautentisering till Microsoft Entra-ID för en federerad användare.
Visa en lista över de program som en princip har konfigurerats för.
I följande exempel skapar, uppdaterar, länkar och tar du bort HRD-principer för programtjänstens huvudnamn i Microsoft Entra-ID.
Kommentar
Azure AD- och MSOnline PowerShell-moduler är inaktuella från och med den 30 mars 2024. Mer information finns i utfasningsuppdateringen. Efter det här datumet är stödet för dessa moduler begränsat till migreringshjälp till Microsoft Graph PowerShell SDK och säkerhetskorrigeringar. De inaktuella modulerna fortsätter att fungera till och med mars 30 2025.
Vi rekommenderar att du migrerar till Microsoft Graph PowerShell för att interagera med Microsoft Entra-ID (tidigare Azure AD). Vanliga migreringsfrågor finns i Vanliga frågor och svar om migrering. Obs! Versioner 1.0.x av MSOnline kan uppleva störningar efter den 30 juni 2024.
Innan du börjar kör du kommandot Anslut för att logga in på Microsoft Entra ID med ditt administratörskonto:
Connect-AzureAD -Confirm
Kör följande kommando för att se alla principer i din organisation:
Get-AzureADPolicy
Om inget returneras innebär det att du inte har några principer som skapats i din klientorganisation.
Skapa en HRD-princip
I det här exemplet skapar du en princip som gör att den antingen:
- Automatiskt påskyndar användare till en federerad inloggningsskärm för identitetsprovidern när de loggar in på ett program när det finns en enda domän i din klientorganisation.
- Automatiskt påskyndar användare till en federerad inloggningsskärm för identitetsprovider om det finns mer än en federerad domän i din klientorganisation.
- Aktiverar icke-interaktiv inloggning med användarnamn/lösenord direkt till Microsoft Entra-ID för federerade användare för de program som principen har tilldelats.
Följande princip påskyndar automatiskt användare till en federerad inloggningsskärm för identitetsprovidern när de loggar in på ett program när det finns en enda domän i din klientorganisation.
New-AzureADPolicy
-Definition @("{`"HomeRealmDiscoveryPolicy`":{`"AccelerateToFederatedDomain`":true}}") -DisplayName BasicAutoAccelerationPolicy
-Type HomeRealmDiscoveryPolicy
POST /policies/homeRealmDiscoveryPolicies
"HomeRealmDiscoveryPolicy": {
"AccelerateToFederatedDomain": true
}
Följande princip påskyndar automatiskt användare till en federerad inloggningsskärm för identitetsprovidern när det finns mer än en federerad domän i klientorganisationen. Om du har fler än en federerad domän som autentiserar användare för program måste du ange domänen för att påskynda automatiskt.
New-AzureADPolicy
-Definition @("{`"HomeRealmDiscoveryPolicy`":{`"AccelerateToFederatedDomain`":true, `"PreferredDomain`":`"federated.example.edu`"}}")
-DisplayName MultiDomainAutoAccelerationPolicy
-Type HomeRealmDiscoveryPolicy
POST /policies/homeRealmDiscoveryPolicies
"HomeRealmDiscoveryPolicy": {
"AccelerateToFederatedDomain": true,
"PreferredDomain": [
"federated.example.edu"
]
}
Följande princip aktiverar autentisering med användarnamn/lösenord för federerade användare direkt med Microsoft Entra-ID för specifika program:
New-AzureADPolicy
-Definition @("{`"HomeRealmDiscoveryPolicy`":{`"AllowCloudPasswordValidation`":true}}")
-DisplayName EnableDirectAuthPolicy
-Type HomeRealmDiscoveryPolicy
POST /policies/homeRealmDiscoveryPolicies
"EnableDirectAuthPolicy": {
"AllowCloudPasswordValidation": true
}
Om du vill se din nya princip och hämta dess ObjectID kör du följande kommando:
Get-AzureADPolicy
Om du vill tillämpa HRD-principen när du har skapat den kan du tilldela den till flera huvudnamn för programtjänsten.
Leta upp tjänstens huvudnamn som ska tilldelas till principen
Du behöver ObjectID för tjänstens huvudnamn som du vill tilldela principen till. Det finns flera sätt att hitta ObjectID för tjänstens huvudnamn.
Du kan använda administrationscentret för Microsoft Entra eller fråga Microsoft Graph. Du kan också gå till Graph Explorer-verktyget och logga in på ditt Microsoft Entra-konto för att se alla organisationens huvudnamn för tjänsten.
Eftersom du använder PowerShell kan du använda följande cmdlet för att lista tjänstens huvudnamn och deras ID:n.
Get-AzureADServicePrincipal
Tilldela principen till tjänstens huvudnamn
När du har ObjectID för tjänstens huvudnamn för programmet som du vill konfigurera automatisk acceleration för kör du följande kommando. Det här kommandot associerar HRD-principen som du skapade i steg 1 med tjänstens huvudnamn som du placerade i steg 2.
Add-AzureADServicePrincipalPolicy
-Id <ObjectID of the Service Principal>
-RefObjectId <ObjectId of the Policy>
Du kan upprepa det här kommandot för varje tjänsthuvudnamn som du vill lägga till principen i.
Om ett program redan har tilldelats en HomeRealmDiscovery-princip kan du inte lägga till en till. I så fall ändrar du definitionen av hrd-principen som har tilldelats till programmet för att lägga till extra parametrar.
Kontrollera vilka tjänsthuvudnamn som din HRD-princip har tilldelats
Om du vill kontrollera vilka program som har konfigurerat HRD-principer använder du cmdleten Get-AzureADPolicyAppliedObject . Skicka ObjectID för principen som du vill kontrollera.
Get-AzureADPolicyAppliedObject -id <ObjectId of the Policy>
Prova programmet för att kontrollera att den nya principen fungerar.
Visa en lista över de program som HRD-principen har konfigurerats för
Visa en lista över alla principer som har skapats i din organisation
Get-AzureADPolicy
Observera ObjectID för principen som du vill visa tilldelningar för.
Visa en lista över de tjänsthuvudnamn som principen har tilldelats
Get-AzureADPolicyAppliedObject -id <ObjectId of the Policy>
Ta bort en HRD-princip från ett program
Hämta ObjectID
Använd föregående exempel för att hämta ObjectID för principen och det programtjänsthuvudnamn som du vill ta bort det från.
Ta bort principtilldelningen från programtjänstens huvudnamn
Remove-AzureADServicePrincipalPolicy -id <ObjectId of the Service Principal> -PolicyId <ObjectId of the policy>
Kontrollera borttagningen genom att visa en lista över de tjänsthuvudnamn som principen har tilldelats
Get-AzureADPolicyAppliedObject -id <ObjectId of the Policy>
Konfigurera en princip via Graph Explorer
Från Microsoft Graph Explorer-fönstret:
Logga in med en av rollerna som anges i avsnittet krav.
Bevilja medgivande till behörigheten
Policy.ReadWrite.ApplicationConfiguration
.Använd principen för identifiering av hemsfär för att skapa en ny princip.
PUBLICERA den nya principen eller PATCH för att uppdatera en befintlig princip.
PATCH /policies/homeRealmDiscoveryPolicies/{id} { "definition": [ "{\"HomeRealmDiscoveryPolicy\": {\"AccelerateToFederatedDomain\":true, \"PreferredDomain\":\"federated.example.edu\", \"AlternateIdLogin\":{\"Enabled\":true}}}" ], "displayName": "Home Realm Discovery auto acceleration", "isOrganizationDefault": true }
Om du vill visa din nya princip kör du följande fråga:
GET /policies/homeRealmDiscoveryPolicies/{id}
Så här tilldelar du den nya principen till ett program:
POST /servicePrincipals/{id}/homeRealmDiscoveryPolicies/$ref
Eller:
POST /servicePrincipals(appId='{appId}')/homeRealmDiscoveryPolicies/$ref
Visa en lista över de tjänsthuvudnamn som principen har tilldelats
GET /policies/homeRealmDiscoveryPolicies/{ObjectId of the policy}/appliesTo
Kör frågan för att ta bort hrd-principen som du skapade:
DELETE /policies/homeRealmDiscoveryPolicies/{id}
Ta bort principtilldelningen från tjänstens huvudnamn
DELETE /servicePrincipals/{id}/homeRealmDiscoveryPolicies/{policyId}/$ref
Eller
DELETE /servicePrincipals(appId='{appId}')/homeRealmDiscoveryPolicies/{policyId}/$ref
Kontrollera borttagningen genom att visa en lista över de tjänsthuvudnamn som principen har tilldelats
GET /policies/homeRealmDiscoveryPolicies/{ObjectId of the policy}/appliesTo