Compartilhar via


Configurar aceleração automática do login

Este artigo fornece uma introdução à configuração do comportamento de autenticação do Microsoft Entra para usuários federados usando a política de HRD (Descoberta de Realm Inicial). Ele aborda o uso de credenciais de aceleração automática para ignorar a tela de entrada de nome de usuário e encaminhar automaticamente os usuários para os pontos de extremidade de logon federados. Para saber mais sobre a política de HRD, confira o artigo Descoberta de Realm Inicial.

Pré-requisitos

Para configurar a política de HRD para um aplicativo no Microsoft Entra ID, você precisa:

  • Uma conta do Azure com uma assinatura ativa. Se ainda não tem uma, crie uma conta gratuita.
  • A função Administrador de Aplicativos

Credenciais de aceleração automática

Algumas organizações configuram domínios nos respectivos locatários do Microsoft Entra para federação com outro IDP (provedor de identidade), como os Serviços de Federação do Active Directory (ADFS), para a autenticação do usuário. Quando um usuário entra em um aplicativo, ele é apresentado primeiramente a uma página de entrada do Microsoft Entra. Após digitar o UPN (nome principal do usuário), se o usuário estiver em um domínio federado, será direcionado para a página de entrada do IDP que atende ao domínio. Em determinadas circunstâncias, os administradores talvez queiram direcionar usuários para a página de entrada quando estes estiverem entrando em aplicativos específicos. Como resultado, os usuários podem ignorar a página inicial da ID do Microsoft Entra. Esse processo é conhecido como "aceleração automática de entrada".

Para usuários federados com credenciais habilitadas para nuvem, como entrada de SMS (Serviço de Mensagem Curta) ou chaves FIDO, você deve impedir a aceleração automática de entrada. Confira Desabilitar a aceleração automática de entrada para saber como evitar dicas de domínio com HRD.

Importante

A partir de abril de 2023, as organizações que usam aceleração automática ou links inteligentes poderão começar a ver uma nova tela adicionada à interface do usuário de entrada. Essa tela, denominada Caixa de Diálogo de Confirmação de Domínio, faz parte do compromisso geral da Microsoft com o fortalecimento da segurança e exige que o usuário confirme o domínio do locatário no qual está entrando. Se você vir a Caixa de Diálogo de Confirmação do Domínio e não reconhecer o domínio do locatário listado, você deve cancelar o fluxo de autenticação e contatar o administrador de TI.

Para obter mais informações, visite a Caixa de Diálogo Confirmação do Domínio.

Configurar uma política de HRD usando o Microsoft Graph PowerShell

Utilizamos os cmdlets do Microsoft Graph PowerShell para explorar alguns cenários, incluindo:

  • Configurando a política de HRD para fazer a aceleração automática de um aplicativo em um locatário com um único domínio federado.
  • Configurando a política do HRD para fazer a aceleração automática de um aplicativo em um dos vários domínios verificados para o seu locatário.
  • Configurar a política de HRD para permitir que um aplicativo herdado faça autenticação direta de nome de usuário/senha no Microsoft Entra ID para um usuário federado.
  • Listando os aplicativos para os quais uma política é configurada.

Nos exemplos a seguir, você cria, atualiza, vincula e exclui políticas HRD em entidades de serviço do aplicativo no Microsoft Entra ID.

  1. Antes de começar, execute o comando Connect para entrar na ID do Microsoft Entra com pelo menos a função Administrador de Aplicativos:

    connect-MgGraph -scopes "Policy.Read.All"
    
  2. Execute o comando a seguir para ver todas as políticas na organização:

    Get-MgPolicyHomeRealmDiscoveryPolicy -Property Id, displayName
    

Se não retornar nada, você não terá políticas criadas no locatário.

Criar uma política de HRD usando o Microsoft Graph PowerShell

Neste exemplo, você cria uma política de modo que, ao atribuí-la a um aplicativo, ela seja:

  • Acelera automaticamente os usuários para uma tela de entrada do provedor de identidade federado quando eles estão entrando em um aplicativo e há um só domínio no locatário.
  • Acelera automaticamente os usuários para uma tela de entrada do provedor de identidade federado quando há mais de um domínio federado no locatário.
  • Permite que o nome de usuário/senha não interativo entre diretamente no Microsoft Entra ID dos usuários federados para os aplicativos aos quais a política está atribuída.

A política a seguir acelera automaticamente os usuários para uma tela de entrada do provedor de identidade federado quando eles estão entrando em um aplicativo e há um só domínio no locatário.

  1. Execute o comando Connect para entrar na Microsoft Entra ID com pelo menos a função de Administrador de Aplicativos.

    connect-MgGraph -scopes "Policy.ReadWrite.ApplicationConfiguration"
    
    
  2. Execute o seguinte comando para criar uma nova política de HRD:

    # 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 
    

A política a seguir acelera automaticamente os usuários para uma tela de entrada do provedor de identidade federado, quando há mais de um domínio federado no locatário. Se houver mais de um domínio federado que autentica usuários para aplicativos, será necessário especificar o domínio para a aceleração automática.

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

A seguinte política habilita a autenticação de nome de usuário/senha para usuários federados diretamente com o Microsoft Entra ID para aplicativos específicos:


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  

Para ver a nova política e obter a ObjectID, execute o seguinte comando:

    Get-MgPolicyHomeRealmDiscoveryPolicy -Property Id, displayName

Para aplicar a política HRD depois da criação, você pode atribuí-la a várias entidades de serviço.

Localize a entidade de serviço para atribuir a política usando o Microsoft Graph PowerShell

Você precisa da ObjectID das entidades de serviço às quais deseja atribuir a política. Há várias maneiras de encontrar a ObjectID de entidades de serviço.

Você pode usar o centro de administração do Microsoft Entra. Usando esta opção:

  1. Navegue até Identidade>Aplicativos>Aplicativos empresariais>Todos os aplicativos.
  2. Insira o nome do aplicativo existente na caixa de pesquisa e selecione o aplicativo nos resultados da pesquisa. Copie a ID do objeto do aplicativo.

Como você está usando o Microsoft Graph PowerShell, execute o cmdlet a seguir para listar as entidades de serviço e suas IDs.

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

Atribuir a política ao principal de serviço usando o Microsoft Graph PowerShell

Depois que você tiver a ObjectID da entidade de serviço do aplicativo para o qual deseja configurar a aceleração automática, execute o comando a seguir. Esse comando associa a política de HRD que você criou ao principal de serviço que você localizou nas seções anteriores.

    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

Você pode repetir esse comando para cada entidade de serviço principal à qual deseja adicionar a política.

No caso em que um aplicativo já possui uma política de Descoberta de Domínio Inicial atribuída, não é possível adicionar uma segunda. Nesse caso, altere a definição da política HRD atribuída ao aplicativo para adicionar parâmetros adicionais.

Verifique a quais entidades de serviço sua política de HRD está atribuída usando o Microsoft Graph PowerShell.

Execute o seguinte comando para listar as entidades de serviço às quais a política é atribuída:

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

Verifique se você testa a experiência de entrada do aplicativo para verificar se a nova política está funcionando.

Configurar uma política de HRD usando o Microsoft Graph

Usamos chamadas à API do Microsoft Graph para percorrer alguns cenários, incluindo:

  • Configurando a política de HRD para fazer a aceleração automática de um aplicativo em um locatário com um único domínio federado.

  • Configurando a política do HRD para fazer a aceleração automática de um aplicativo em um dos vários domínios verificados para o seu locatário.

  • Configurar a política de HRD para permitir que um aplicativo herdado faça autenticação direta de nome de usuário/senha no Microsoft Entra ID para um usuário federado.

  • Listando os aplicativos para os quais uma política é configurada.

Nos exemplos a seguir, você cria, atualiza, vincula e exclui políticas HRD em entidades de serviço do aplicativo no Microsoft Entra ID.

  1. Antes de começar, acesse a janela do Explorador do Microsoft Graph.

  2. Entre com pelo menos a função Administrador de Aplicativos.

  3. Dê consentimento à permissão Policy.Read.All.

  4. Execute a seguinte chamada à API para ver todas as políticas em sua organização:

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

Se não retornar nada, você não terá políticas criadas no locatário.

Criar uma política de HRD usando o Microsoft Graph

Neste exemplo, você cria uma política de modo que, ao atribuí-la a um aplicativo, ela seja:

  • Acelera automaticamente os usuários para uma tela de entrada do provedor de identidade federado quando eles estão entrando em um aplicativo e há um só domínio no locatário.
  • Acelera automaticamente os usuários para uma tela de entrada do provedor de identidade federado quando há mais de um domínio federado no locatário.
  • Permite que o nome de usuário/senha não interativo entre diretamente no Microsoft Entra ID dos usuários federados para os aplicativos aos quais a política está atribuída.

A política a seguir acelera automaticamente os usuários para uma tela de entrada do provedor de identidade federado quando eles estão entrando em um aplicativo e há um só domínio no locatário.

Na janela do Explorador do Microsoft Graph:

  1. Entre com pelo menos a função Administrador de Aplicativos.

  2. Dê consentimento à permissão Policy.ReadWrite.ApplicationConfiguration.

  3. PUBLIQUE a nova política ou PATCH para atualizar uma política existente.

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

A política a seguir acelera automaticamente os usuários para uma tela de entrada do provedor de identidade federado, quando há mais de um domínio federado no locatário. Se houver mais de um domínio federado que autentica usuários para aplicativos, será necessário especificar o domínio para a aceleração automática.

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

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

}

A seguinte política habilita a autenticação de nome de usuário/senha para usuários federados diretamente com o Microsoft Entra ID para aplicativos específicos:

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

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

Para ver sua nova política e obter seu ObjectID, execute a seguinte chamada à API:

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

Para aplicar a política HRD depois da criação, você pode atribuí-la a várias entidades de serviço.

Localize a entidade de serviço para atribuir a política usando o Microsoft Graph

Você precisa da ObjectID das entidades de serviço às quais deseja atribuir a política. Há várias maneiras de encontrar a ObjectID de entidades de serviço.

Você pode usar o centro de administração do Microsoft Entra. Usando esta opção:

  1. Navegue até Identidade>Aplicativos>Aplicativos empresariais>Todos os aplicativos.

  2. Insira o nome do aplicativo existente na caixa de pesquisa e selecione o aplicativo nos resultados da pesquisa. Copie a ID do objeto do aplicativo.

    Como você está usando o Explorador do Microsoft Graph, execute a solicitação a seguir para listar as entidades de serviço e suas IDs.

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

Atribua a política ao principal de serviço usando o Microsoft Graph

Depois de ter o ObjectID da entidade de serviço do aplicativo para o qual você deseja configurar a aceleração automática, execute a seguinte chamada de API. Essa chamada à API associa a política de HRD que você criou à entidade de serviço localizada nas seções anteriores.

Você deve consentir com a permissão 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}"  
}  

Você pode repetir essa chamada de API para cada entidade de serviço à qual deseja adicionar a política.

No caso em que um aplicativo já tem uma política de Descoberta do Domínio Inicial atribuída, você não pode adicionar uma segunda. Nesse caso, altere a definição da política HRD atribuída ao aplicativo para adicionar parâmetros adicionais.

Verifique a quais entidades de serviço sua política de RH está atribuída usando o Microsoft Graph

Execute a seguinte chamada à API para listar as entidades de serviço às quais a política é atribuída:

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

Verifique se você testa a experiência de entrada do aplicativo para verificar se a nova política está funcionando.

Remover uma política hrd de um aplicativo usando o Microsoft Graph PowerShell

  1. Obtenha a ObjectID da política.

    Use o exemplo anterior para obter a ObjectID da política e a da entidade de serviço de aplicativo da qual você deseja removê-la.

  2. Remova a atribuição de política da entidade de serviço do aplicativo.

    Remove-MgServicePrincipalHomeRealmDiscoveryPolicyHomeRealmDiscoveryPolicyByRef -ServicePrincipalId $servicePrincipalId -HomeRealmDiscoveryPolicyId $homeRealmDiscoveryPolicyId
    
  3. Verifique a remoção listando as entidades de serviço às quais a política é atribuída.

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

Excluir a política de HRD usando o Microsoft Graph PowerShell

Para excluir a política de HRD que você criou, execute o seguinte comando:

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

Remover uma política hrd de um aplicativo usando o Microsoft Graph

  1. Obtenha a ObjectID da política.

    Use o exemplo anterior para obter a ObjectID da política e a da entidade de serviço de aplicativo da qual você deseja removê-la.

  2. Remova a atribuição de política da entidade de serviço do aplicativo.

    DELETE https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipalId}/homeRealmDiscoveryPolicies/{policyId}/$ref
    
  3. Verifique a remoção listando as entidades de serviço às quais a política é atribuída.

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

Excluir a política de HRD usando o Microsoft Graph

Para excluir a política de HRD que você criou, execute a seguinte chamada à API:

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