Dela via


Konfigurera automatisk acceleration för inloggning

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 .

Förutsättningar

För att konfigurera HRD-principen för ett program i Microsoft Entra-ID behöver du:

Automatisk påskyndad inloggning

Vissa organisationer konfigurerar domäner i sin Microsoft Entra-klientorganisation för att federera med en annan identitetsleverantör (IDP), till exempel Active Directory Federation Services (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 (Short Message Service) eller FIDO-nycklar, bör du förhindra automatisk inloggningsacceleration. Se Stäng av automatisk inloggning för att lära dig hur du förhindrar domänledtrådar 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.

För mer information, vänligen besök Domänbekräftelse dialogrutan.

Konfigurera en HRD-princip med Microsoft Graph PowerShell

Vi använder Microsoft Graph PowerShell-cmdletar 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-policy för att aktivera ett legacyprogram för direkt autentisering av användarnamn/lösenord mot 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.

  1. Innan du börjar kör du kommandot Anslut för att logga in på Microsoft Entra-ID med minst rollen programadministratör:

    connect-MgGraph -scopes "Policy.Read.All"
    
  2. Kör följande kommando för att se alla principer i din organisation:

    Get-MgPolicyHomeRealmDiscoveryPolicy -Property Id, displayName
    

Om inget returneras innebär det att du inte har skapat några principer i din klientorganisation.

Skapa en HRD-princip med Microsoft Graph PowerShell

I det här exemplet skapar du en princip som gör att när du tilldelar den till en applikation, den antingen:

  • "Automatiskt omdirigerar användare till en inloggningsskärm för en federerad identitetsleverantör när de loggar in på en applikation och det bara 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 policy snabbar upp användares övergång till en federerad identitetsprovider-inloggningsskärm när de loggar in på en applikation med en enda domän i din hyresgäst.

  1. Kör kommandot Anslut för att logga in på Microsoft Entra-ID med minst rollen programadministratör:

    connect-MgGraph -scopes "Policy.ReadWrite.ApplicationConfiguration"
    
    
  2. Kör följande kommando för att skapa en ny HRD-princip:

    # Define the parameters for the policy 
    $params = @{
        definition = @(
        '{"HomeRealmDiscoveryPolicy":{
        "AccelerateToFederatedDomain":true,
        }
    }'
    )
    displayName = "BasicAutoAccelerationPolicy"
    isOrganizationDefault = $true
    } 
    # Create a new Home Realm Discovery Policy
    New-MgPolicyHomeRealmDiscoveryPolicy -BodyParameter $params 
    

Följande policy dirigerar automatiskt användare till en inloggningsskärm för federerade identitetsleverantörer när det finns fler än en federerad domän i er klientorganisation. 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.

connect-MgGraph -scopes "Policy.ReadWrite.ApplicationConfiguration"

# Define the parameters for the New-MgPolicyHomeRealmDiscoveryPolicy cmdlet
$params = @{
	definition = @(
	'{"HomeRealmDiscoveryPolicy":{
	"AccelerateToFederatedDomain":true,
	"PreferredDomain":"federated.example.edu"
	}}'
)
displayName = "MultiDomainAutoAccelerationPolicy"
isOrganizationDefault = $true

}

# Create the new policy
New-MgPolicyHomeRealmDiscoveryPolicy -BodyParameter $params

Följande princip aktiverar autentisering med användarnamn/lösenord för federerade användare direkt med Microsoft Entra-ID för specifika program:


connect-MgGraph -scopes "Policy.ReadWrite.ApplicationConfiguration"

# Define the parameters for the New-MgPolicyHomeRealmDiscoveryPolicy cmdlet  
$params = @{
	definition = @(
	'{"HomeRealmDiscoveryPolicy":{
	 "AllowCloudPasswordValidation":true
     }
   }'
)
displayName = "EnableDirectAuthPolicy"
}

New-MgPolicyHomeRealmDiscoveryPolicy -BodyParameter $params  

Om du vill se din nya princip och hämta dess ObjectID kör du följande kommando:

    Get-MgPolicyHomeRealmDiscoveryPolicy -Property Id, displayName

Om du vill tillämpa HRD-principen när du har skapat den kan du tilldela den till flera tjänsthuvudnamn.

Hitta tjänstens huvudprincip för att tilldela policyn med hjälp av Microsoft Graph PowerShell

Du behöver ObjectID för de tjänstens huvudenheter som du vill tilldela policyn till. Det finns flera sätt att hitta ObjectID för tjänstens huvudkonton.

Du kan använda administrationscentret för Microsoft Entra. Med det här alternativet:

  1. Bläddra till Identity>Applications>Företagsprogram>Alla program.
  2. Ange namnet på det befintliga programmet i sökrutan och välj sedan programmet i sökresultaten. Kopiera programmets objekt-ID.

Eftersom du använder Microsoft Graph PowerShell kör du följande cmdlet för att visa en lista över tjänstens huvudnamn och deras ID:n.

connect-MgGraph -scopes "Application.Read.All"
Get-MgServicePrincipal

Tilldela principen till tjänstens huvudnamn med hjälp av Microsoft Graph PowerShell

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 med tjänstens huvudnamn som du placerade i föregående avsnitt.

    connect-MgGraph -scopes "Policy.ReadWrite.ApplicationConfiguration", "Application.ReadWrite.All"

# Define the parameters for the New-MgServicePrincipalHomeRealmDiscoveryPolicy cmdlet  
$assignParams = @{
	"@odata.id" = "https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies/<policyId>"
}

New-MgServicePrincipalHomeRealmDiscoveryPolicyByRef -ServicePrincipalId $servicePrincipalId -BodyParameter $assignParams

Du kan upprepa det här kommandot för varje tjänstens huvudkonto som du vill tillämpa policyn på.

Om ett program redan har tilldelats en princip för upptäckt av hemsfär kan du inte lägga till en till. I så fall ändrar du definitionen av HRD-policyn som har tilldelats applikationen för att lägga till extra parametrar.

Kontrollera vilka tjänsthuvudnamn som din HRD-princip har tilldelats med hjälp av Microsoft Graph PowerShell

Kör följande kommando för att lista de tjänsteprincipaler som policyn har tilldelats:

Get-MgPolicyHomeRealmDiscoveryPolicyApplyTo -HomeRealmDiscoveryPolicyId "<ObjectId of the Policy>"
 # Replace with the actual ObjectId of the Policy 

Kontrollera att du testar inloggningsupplevelsen för programmet för att kontrollera att den nya principen fungerar.

Konfigurera en HRD-princip med hjälp av Microsoft Graph

Vi använder Microsoft Graph API-anrop 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-policy för automatisk acceleration för en applikation till en av flera domäner som är verifierade för din hyresgäst.

  • Konfigurera HRD-policy för att möjliggöra för ett äldre program att göra 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.

  1. Öppna Microsoft Graph Explorer-fönstret innan du börjar.

  2. Logga in med minst rollen Applikationsadministratör.

  3. Bevilja medgivande till behörigheten Policy.Read.All .

  4. Kör följande API-anrop för att se alla principer i din organisation:

    GET https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies
    

Om inget returneras innebär det att du inte har några policyer skapade i din klientorganisation.

Skapa en HRD-princip med hjälp av Microsoft Graph

I det här exemplet skapar du en princip som, när du tilldelar den till en applikation, antingen:

  • Automatiskt vidarebefordrar användare till en federerad identitetsleverantörs inloggningsskärm när de loggar in på en applikation och det finns en enda domän i din organisation.
  • Automatiskt omdirigerar användare till en inloggningsskärm för federerad identitetsleverantör 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 dirigerar automatiskt användare till en federerad identitetsproviders inloggningsskärm när de loggar in på en applikation och det finns en enda domän i din klientorganisation.

Från Microsoft Graph Explorer-fönstret:

  1. Logga in med minst rollen Applikationsadministratör.

  2. Bevilja medgivande för Policy.ReadWrite.ApplicationConfiguration-behörigheten.

  3. PUBLICERA den nya policyn eller patcha för att uppdatera en befintlig policy.

    POST https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies  
    
    {  
        "definition": [  
            "{\"HomeRealmDiscoveryPolicy\":{\"AccelerateToFederatedDomain\":true}}"  
        ],  
        "displayName": "BasicAutoAccelerationPolicy",
        "isOrganizationDefault": true 
    } 
    

Följande princip leder automatiskt användare till en inloggningsskärm för federerad identitetsleverantör 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.

POST https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies  

{  
    "definition": [  
        "{\"HomeRealmDiscoveryPolicy\":{\"AccelerateToFederatedDomain\":true,\"PreferredDomain\":\"federated.example.edu\"}}"  
    ],  
    "displayName": "MultiDomainAutoAccelerationPolicy",
    "isOrganizationDefault": true 

}

Följande princip aktiverar autentisering med användarnamn/lösenord för federerade användare direkt med Microsoft Entra-ID för specifika program:

POST https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies  

{  
    "definition": [  
        "{\"HomeRealmDiscoveryPolicy\":{\"AllowCloudPasswordValidation\":true}}"  
    ],  
    "displayName": "EnableDirectAuthPolicy"  
}  

För att se din nya policy och få dess ObjectID, kör följande API-anrop:

    GET https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies

Om du vill tillämpa HRD-principen när du har skapat den kan du tilldela den till flera tjänsthuvudnamn.

Leta upp tjänstens huvudnamn för att tilldela principen med hjälp av Microsoft Graph

Du behöver ObjectID för de tjänsthuvudmän till vilka du vill tilldela policyn. Det finns flera sätt att hitta ObjectID för tjänstens huvudanvändare.

Du kan använda administrationscentret för Microsoft Entra. Med det här alternativet:

  1. Bläddra till Identity>Applikationer>Företagsapplikationer>Alla applikationer.

  2. Ange namnet på det befintliga programmet i sökrutan och välj sedan programmet i sökresultaten. Kopiera programmets objekt-ID.

    Eftersom du använder Microsoft Graph Explorer kör du följande begäran för att visa en lista över tjänstens huvudnamn och deras ID:n.

    GET https://graph.microsoft.com/v1.0/servicePrincipals  
    

Tilldela policyn till din service principal med hjälp av Microsoft Graph

När du har ObjectID för tjänstens huvudobjekt för programmet som du vill konfigurera automatisk acceleration för kör du följande API-anrop. Det här API-anropet associerar HRD-principen som du skapade med tjänstens huvudobjekt som du identifierade i föregående avsnitt.

Se till att du samtycker till behörigheten Application.ReadWrite.All.

POST https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipalId}/homeRealmDiscoveryPolicies/$ref  

{  
    "@odata.id": "https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies/{policyId}"  
}  

Du kan upprepa det här API-anropet för varje tjänsthuvudnamn som du vill lägga till principen till.

Om en applikation redan har en tilldelad policy för upptäckt av hemsfär, kan du inte lägga till en andra. I så fall ändrar du definitionen av HRD-policy som har tilldelats programmet för att lägga till extra parametrar.

Kontrollera vilka tjänsteansvariga som din HRD-policy har tilldelats med hjälp av Microsoft Graph

Kör följande API-anrop för att lista de tjänsthuvudnamn som principen har tilldelats:

GET https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies/{policyId}/appliesTo  

Kontrollera att du testar inloggningsupplevelsen för programmet för att kontrollera att den nya principen fungerar.

Ta bort en HRD-princip från ett program med Microsoft Graph PowerShell

  1. Hämta ObjectID för principen.

    Använd föregående exempel för att hämta ObjectID- för principen och för programmets tjänsthuvudnamn som du vill ta bort det från.

  2. Ta bort principtilldelningen från programtjänstens huvudnamn.

    Remove-MgServicePrincipalHomeRealmDiscoveryPolicyHomeRealmDiscoveryPolicyByRef -ServicePrincipalId $servicePrincipalId -HomeRealmDiscoveryPolicyId $homeRealmDiscoveryPolicyId
    
  3. Kontrollera borttagningen genom att lista de tjänsthuvudnamn som policyn är tilldelad.

    Get-MgPolicyHomeRealmDiscoveryPolicyApplyTo -HomeRealmDiscoveryPolicyId "<ObjectId of the Policy>"
    # Replace with the actual ObjectId of the Policy 
    

Ta bort HRD-principen med Microsoft Graph PowerShell

Om du vill ta bort hrd-principen som du skapade kör du följande kommando:

    Remove-MgPolicyHomeRealmDiscoveryPolicy -HomeRealmDiscoveryPolicyId "<ObjectId of the Policy>" # Replace with the actual ObjectId of the Policy

Ta bort en HRD-princip från ett program med Microsoft Graph

  1. Hämta ObjectID för principen.

    Använd föregående exempel för att hämta ObjectID för policyn och för den applikationstjänstprincipalen som du vill ta bort den från.

  2. Ta bort principtilldelningen från applikationstjänsthuvudnamnet.

    DELETE https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipalId}/homeRealmDiscoveryPolicies/{policyId}/$ref
    
  3. Kontrollera borttagningen genom att lista de tjänsthuvudnamn som policyn har tilldelats.

    GET https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies/<policyId>/appliesTo  
    

Ta bort HRD-principen med hjälp av Microsoft Graph

Om du vill ta bort hrd-principen som du skapade kör du följande API-anrop:

DELETE https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies/{id}