Partilhar via


Configurar o AD FS para autenticar usuários armazenados em diretórios LDAP no Windows Server 2016 ou posterior

O tópico a seguir descreve a configuração necessária para permitir que sua infraestrutura do AD FS autentique usuários cujas identidades são armazenadas em diretórios compatíveis com LDAP v3.

Em muitas organizações, as soluções de gerenciamento de identidades consistem em uma combinação de Ative Directory, AD LDS ou diretórios LDAP de terceiros. Com a adição do suporte do AD FS para autenticação de usuários armazenados em diretórios compatíveis com LDAP v3, você pode se beneficiar de todo o conjunto de recursos do AD FS de nível empresarial, independentemente de onde suas identidades de usuário estão armazenadas. O AD FS suporta qualquer diretório compatível com LDAP v3.

Note

Alguns dos recursos do AD FS incluem logon único (SSO), autenticação de dispositivo, políticas flexíveis de acesso condicional, suporte para trabalho de qualquer lugar por meio da integração com o Proxy de Aplicativo Web e federação contínua com o Microsoft Entra que, por sua vez, permite que você e seus usuários utilizem a nuvem, incluindo o Office 365 e outros aplicativos SaaS. Para obter mais informações, consulte Serviços de Federação do Active Directory: Visão Geral.

Para que o AD FS autentique utilizadores de um diretório LDAP, deve conectar esse diretório LDAP à farm do AD FS criando uma confiança do fornecedor de declarações local. Uma relação de confiança do provedor de declarações local é um objeto de confiança que representa um diretório LDAP no seu grupo do AD FS. Um objeto de confiança do provedor de declarações local consiste em uma variedade de identificadores, nomes e regras que identificam esse diretório LDAP para o serviço de federação local.

Você pode oferecer suporte a vários diretórios LDAP, cada um com sua própria configuração, ao adicionar várias relações de confiança do provedor de declarações local, dentro da mesma farm do AD FS . Além disso, as florestas do AD DS que não são confiáveis para a floresta onde o AD FS está localizado também podem ser modeladas como relações de confiança de fornecedores de declarações locais. Você pode criar relações de confiança do provedor de declarações local usando o Windows PowerShell.

Os diretórios LDAP (confianças do provedor de declarações locais) podem coexistir com diretórios AD (confianças do provedor de declarações) no mesmo servidor AD FS, dentro do mesmo farm do AD FS, portanto, uma única instância do AD FS é capaz de autenticar e autorizar o acesso para usuários armazenados em diretórios AD e não AD.

Somente a autenticação baseada em formulários é suportada para autenticar usuários a partir de diretórios LDAP. A autenticação baseada em certificado e a autenticação integrada do Windows não são suportadas para autenticar usuários em diretórios LDAP.

Todos os protocolos de autorização passiva suportados pelo AD FS, incluindo SAML, WS-Federation e OAuth, também são suportados para identidades armazenadas em diretórios LDAP.

O protocolo de autorização ativo WS-Trust também é suportado para identidades armazenadas em diretórios LDAP.

Configurar o AD FS para autenticar usuários armazenados em um diretório LDAP

Para configurar seu farm do AD FS para autenticar usuários a partir de um diretório LDAP, você pode concluir as seguintes etapas:

  1. Primeiro, configure uma conexão com o diretório LDAP usando o cmdlet New-AdfsLdapServerConnection :

    $DirectoryCred = Get-Credential
    $vendorDirectory = New-AdfsLdapServerConnection -HostName dirserver -Port 50000 -SslMode None -AuthenticationMethod Basic -Credential $DirectoryCred
    

    Note

    É recomendável criar um novo objeto de conexão para cada servidor LDAP ao qual deseja se conectar. O AD FS pode se conectar a vários servidores LDAP de réplica e fazer failover automaticamente caso um servidor LDAP específico esteja inativo. Nesse caso, você pode criar um AdfsLdapServerConnection para cada um desses servidores LDAP de réplica e, em seguida, adicionar a matriz de objetos de conexão usando o parâmetro -LdapServerConnection do cmdlet Add-AdfsLocalClaimsProviderTrust .

    OBSERVAÇÃO: Sua tentativa de usar Get-Credential e digitar um DN e senha a serem usados para vincular a uma instância LDAP pode resultar em uma falha devido ao requisito da interface do usuário para formatos de entrada específicos, por exemplo, domínio\nome de usuário ou user@domain.tld. Em vez disso, você pode usar o cmdlet ConvertTo-SecureString da seguinte maneira (o exemplo abaixo assume uid=admin,ou=system como o DN das credenciais a serem usadas para vincular à instância LDAP):

    $ldapuser = ConvertTo-SecureString -string "uid=admin,ou=system" -asplaintext -force
    $DirectoryCred = Get-Credential -username $ldapuser -Message "Enter the credentials to bind to the LDAP instance:"
    

    Em seguida, digite a senha para o uid=admin e conclua o restante das etapas.

  2. Em seguida, você pode executar a etapa opcional de mapeamento de atributos LDAP para as declarações existentes do AD FS usando o cmdlet New-AdfsLdapAttributeToClaimMapping . No exemplo abaixo, você mapeia os atributos LDAP givenName, Surname e CommonName para as declarações do AD FS:

    #Map given name claim
    $GivenName = New-AdfsLdapAttributeToClaimMapping -LdapAttribute givenName -ClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname"
    # Map surname claim
    $Surname = New-AdfsLdapAttributeToClaimMapping -LdapAttribute sn -ClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname"
    # Map common name claim
    $CommonName = New-AdfsLdapAttributeToClaimMapping -LdapAttribute cn -ClaimType "http://schemas.xmlsoap.org/claims/CommonName"
    

    Esse mapeamento é feito para disponibilizar atributos do repositório LDAP como declarações no AD FS para criar regras de controle de acesso condicional no AD FS. Ele também permite que o AD FS trabalhe com esquemas personalizados em repositórios LDAP, fornecendo uma maneira fácil de mapear atributos LDAP para declarações.

  3. Por fim, você deve registrar o armazenamento LDAP com o AD FS como uma relação de confiança do provedor de declarações local usando o cmdlet Add-AdfsLocalClaimsProviderTrust :

    Add-AdfsLocalClaimsProviderTrust -Name "Vendors" -Identifier "urn:vendors" -Type Ldap
    
    # Connection info
    -LdapServerConnection $vendorDirectory
    
    # How to locate user objects in directory
    -UserObjectClass inetOrgPerson -UserContainer "CN=VendorsContainer,CN=VendorsPartition" -LdapAuthenticationMethod Basic
    
    # Claims for authenticated users
    -AnchorClaimLdapAttribute mail -AnchorClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn" -LdapAttributeToClaimMapping @($GivenName, $Surname, $CommonName)
    
    # General claims provider properties
    -AcceptanceTransformRules "c:[Type != ''] => issue(claim=c);" -Enabled $true
    
    # Optional - supply user name suffix if you want to use Ws-Trust
    -OrganizationalAccountSuffix "vendors.contoso.com"
    

    No exemplo acima, você está criando uma relação de confiança do provedor de declarações local chamada "Fornecedores". Você está especificando informações de conexão para que o AD FS se conecte ao diretório LDAP que essa confiança do provedor de declarações local representa atribuindo $vendorDirectory ao parâmetro -LdapServerConnection. Observe que, na etapa um, você atribuiu $vendorDirectory uma cadeia de conexão a ser usada ao se conectar ao seu diretório LDAP específico. Finalmente, você está especificando que os atributos $GivenName, $Surnamee $CommonName LDAP (que você mapeou para as declarações do AD FS) devem ser usados para controle de acesso condicional, incluindo políticas de autenticação multifator e regras de autorização de emissão, bem como para emissão por meio de declarações em tokens de segurança emitidos pelo AD FS. Para usar protocolos ativos, como Ws-Trust com o AD FS, deve especificar o parâmetro OrganizationalAccountSuffix, que permite ao AD FS resolver ambiguidade entre as relações de confiança do fornecedor de declarações locais ao processar uma solicitação de autorização ativa.

Ver também

Operações do AD FS