Share via


Configurar a autenticação usando um token de segurança SAML (SharePoint Server 2010)

 

Aplica-se a: SharePoint Foundation 2010, SharePoint Server 2010

Tópico modificado em: 2016-11-30

Os procedimentos neste artigo fornecem uma explicação sobre como configurar a autenticação usando um token de SAML de segurança para um aplicativo Web baseado em declarações do Microsoft SharePoint Server 2010.

A entrada SAML é usada, normalmente, nos cenários de federação corporativos, por exemplo, para prover acesso a um parceiro de negócios. Ela também é implantada para prover acesso a usuários internos cujas contas residam em um domínio que não pertença à floresta que contém o SharePoint Server 2010.

Antes de configurar a autenticação usando um token de SAML de segurança para um aplicativo Web baseado em declarações do SharePoint Server 2010, configure um servidor executando os AD_FS (Serviços de Federação do Active Directory) 2.0. Para obter informações sobre a configuração de um servidor para executar os AD FS 2.0, consulte o AD FS 2.0 Deployment Guide.

Neste artigo:

  • Configurar um aplicativo IP-STS (Identity Provider STS) usando o Windows PowerShell

  • Configurar um aplicativo Web RP-STS (Relying Party STS)

  • Estabelecer uma relação de confiança com um IP-STS e o RP-STS usando o Windows PowerShell

  • Exportar o certificado IP-STS de confiança usando o Windows PowerShell

  • Definir um identificador exclusivo para mapeamento de declarações usando o Windows PowerShell

  • Criar um novo aplicativo Web do SharePoint e configurá-lo para usar a entrada SAML

Configurar um aplicativo IP-STS (Identity Provider STS) usando o Windows PowerShell

Execute os procedimentos a seguir para usar o Windows PowerShell para configurar um aplicativo Web baseado em declarações do SharePoint.

Para configurar um aplicativo IP-STS usando o Windows PowerShell

  1. Verifique se você atende aos seguintes requisitos mínimos: Consulte Add-SPShellAdmin.

  2. No menu Iniciar, clique em Todos os Programas.

  3. Clique em Produtos do Microsoft SharePoint 2010.

  4. Clique em Shell de Gerenciamento do SharePoint 2010.

  5. No prompt de comando do Windows PowerShell, crie um objeto x509Certificate2, conforme mostrado no exemplo a seguir:

    $cert = New-Object
    System.Security.Cryptography.X509Certificates.X509Certificate2("path to cert file")
    
  6. Crie um mapeamento de tipo de declaração para usar em seu provedor de autenticação de confiança, conforme mostrado no exemplo a seguir:

    New-SPClaimTypeMapping "https://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"
    -IncomingClaimTypeDisplayName "EmailAddress" -SameAsIncoming
    
  7. Crie um provedor de login confiável criando um valor para o parâmetro realm, conforme mostrado no exemplo a seguir:

    $realm = "urn:" + $env:ComputerName + ":domain-int"
    
  8. Crie um valor para o parâmetro signinurl que aponte para o aplicativo Web do Serviço de Token de Segurança, conforme mostrado no exemplo a seguir:

    $signinurl = "https://test-2/FederationPassive/"
    
  9. Crie o fornecedor confiável de login, usando o mesmo valor IdentifierClaim que o mapeamento de declarações ($map1.InputClaimType), conforme mostrado no exemplo a seguir:

    $ap = New-SPTrustedIdentityTokenIssuer -Name
    "WIF" -Description "Windows® Identity Foundation" -Realm
    $realm -ImportTrustCertificate $cert
    -ClaimsMappings $map1[,$map2..] -SignInUrl
    $signinurl -IdentifierClaim $map1.InputClaimType
    
  10. Crie um aplicativo Web criando primeiro um valor para a conta do pool de aplicativos (para o usuário atual), conforme mostrado no exemplo a seguir:

    $account = "DOMAIN\" + $env:UserName
    

    Observação

    A conta do pool de aplicativos deve ser uma conta gerenciada. Para criar uma conta gerenciada, use New-SPManagedAccount.

  11. Crie um valor para a URL do aplicativo Web ($webappurl = "https://" + $env:ComputerName), conforme mostrado no exemplo a seguir:

    $wa = New-SPWebApplication -name "Claims WIF"
    -SecureSocketsLayer -ApplicationPool "SharePoint SSL"
    -ApplicationPoolAccount $account -Url $webappurl -Port 443
    -AuthenticationProvider $ap
    
  12. Crie um site criando primeiro um objeto de declaração, conforme mostrado no exemplo a seguir:

    $claim = New-SPClaimsPrincipal
    -TrustedIdentityTokenIssuerr $ap -Identity
    $env:UserName
    
  13. Crie um site, conforme mostrado no exemplo a seguir:

    $site = New-SPSite $webappurl -OwnerAlias
    $claim.ToEncodedString() -template "STS#0"
    

Configurar um aplicativo Web RP-STS (Relying Party STS)

Use o procedimento nesta seção para configurar um aplicativo RP-STS.

Para configurar um aplicativo Web RP-STS

  1. Abra o console de Gerenciamento dos AD_FS 2.0.

  2. No painel esquerdo, expanda Diretiva e selecione Terceiras Partes Confiáveis.

  3. No painel direito, clique em Adicionar Terceira Parte Confiável. Isso abre o assistente de configuração dos Serviços de Federação do Active Directory (AD FS) 2.0.

  4. Na primeira página do assistente, clique em Iniciar.

  5. SelecioneInserir configuração de terceira parte confiável manualmente e clique em Avançar.

  6. Digite o nome de uma terceira parte confiável e clique em Avançar.

  7. Verifique se a opção Perfil do Servidor dos Serviços de Federação do Active Directory (AD FS) 2.0 está marcada e clique em Avançar.

  8. Não use um certificado de criptografia. Clique em Avançar.

  9. Selecione Habilitar suporte para federação de identidade baseada em navegador da Web.

  10. Digite o nome da URL do aplicativo Web e acrescente /_trust/ (por exemplo: https://nomedoservidor/_trust/). Clique em Avançar.

  11. Digite o nome de um identificador (por exemplo: urn:NOMEDOCOMPUTADOR:Geneva) e clique em Adicionar. Clique em Avançar.

  12. Na página Resumo, clique em Avançar e em Fechar. Isso abre o console de Gerenciamento do Editor de Regras. Use esse console para configurar o mapeamento de declarações de um aplicativo Web LDAP para o SharePoint

  13. No painel esquerdo, expanda Nova Regra e selecione Regra Predefinida.

  14. Selecione Criar Declarações do Repositório de Atributos LDAP.

  15. No painel direito, na lista suspensa Repositório de Atributos, selecione Repositório Corporativo de Contas de Usuário do Active Directory.

  16. Em Atributo LDAP, selecione sAMAccountName.

  17. Em Tipo de Declaração de Saída, selecione Endereço de Email.

  18. No painel esquerdo, clique em Salvar.

Estabelecer uma relação de confiança com um IP-STS usando o Windows PowerShell

Use o procedimento nesta seção para estabelecer uma relação de confiança com um IP-STS.

Para estabelecer uma relação de confiança com um IP-STS usando o Windows PowerShell

  1. Verifique se você atende aos seguintes requisitos mínimos: Consulte Add-SPShellAdmin.

  2. No menu Iniciar, clique em Todos os Programas.

  3. Clique em Produtos do Microsoft SharePoint 2010.

  4. Clique em Shell de Gerenciamento do SharePoint 2010.

  5. No prompt de comando do Windows PowerShell, estabeleça uma relação de confiança, como mostrado no exemplo a seguir:

    $waurl = "https://" + $env:ComputerName
    $title = "SAML-Claims"
    

Exportar o certificado IP-STS de confiança usando o Windows PowerShell

Use o procedimento nesta seção para exportar o certificado IP-STS com o qual você deseja estabelecer uma relação de confiança, e copie o certificado para um local que o Microsoft SharePoint Server 2010 possa acessar.

Para exportar o certificado IP-STS confiável usando o Windows PowerShell

  1. Verifique se você atende aos seguintes requisitos mínimos: Consulte Add-SPShellAdmin.

  2. No menu Iniciar, clique em Todos os Programas.

  3. Clique em Produtos do Microsoft SharePoint 2010.

  4. Clique em Shell de Gerenciamento do SharePoint 2010.

  5. No prompt de comando do Windows PowerShell, exporte o certificado IP-STS de confiança, como mostrado no exemplo a seguir:

    $cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("c:\geneva.cer")
    

Definir um identificador exclusivo para mapeamento de declarações usando o Windows PowerShell

Use o procedimento nesta seção para definir um endereço de email que servirá como identificador exclusivo para o mapeamento de declarações. Normalmente, o administrador do STS de confiança terá de fornecer essas informações porque apenas o proprietário do STS conhece que valor no token será sempre exclusivo para cada usuário. Observe que o administrador do STS de confiança pode criar um URI para representar o endereço de email.

Para definir um identificador exclusivo para mapeamento de declarações usando o Windows PowerShell

  1. Verifique se você atende aos seguintes requisitos mínimos: Consulte Add-SPShellAdmin.

  2. No menu Iniciar, clique em Todos os Programas.

  3. Clique em Produtos do Microsoft SharePoint 2010.

  4. Clique em Shell de Gerenciamento do SharePoint 2010.

  5. No prompt de comando do Windows PowerShell, crie um mapeamento, como mostrado no exemplo a seguir:

    $map = New-SPClaimTypeMapping -IncomingClaimType "https://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress" -IncomingClaimTypeDisplayName "EmailAddress" -SameAsIncoming
    

Criar um novo provedor de autenticação

Use o procedimento nesta seção para criar um novo provedor de autenticação que o aplicativo Web usará.

Para criar um novo provedor de autenticação usando o Windows PowerShell

  1. Verifique se você atende aos seguintes requisitos mínimos: Consulte Add-SPShellAdmin.

  2. No menu Iniciar, clique em Todos os Programas.

  3. Clique em Produtos do Microsoft SharePoint 2010.

  4. Clique em Shell de Gerenciamento do SharePoint 2010.

  5. No prompt de comando do Windows PowerShell, crie um novo provedor de autenticação, como mostrado no exemplo a seguir. Observe que o realm é o parâmetro usado pelo STS de confiança para identificar um farm específico do SharePoint.

    $realm = "urn:" + $env:ComputerName + ":Geneva"
    $ap = New-SPTrustedIdentityTokenIssuer -Name "Geneva" -Description "Geneva" -Realm $realm -ImportTrustCertificate $cert -ClaimsMappings $map -SignInUrl "https:// test-2/FederationPassive/" -IdentifierClaim "https://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"
    

Criar um novo aplicativo Web do SharePoint e configurá-lo para usar a entrada SAML

Nesta etapa, crie e configure o aplicativo Web.

Para criar um novo aplicativo Web do SharePoint e configurá-lo para usar a entrada SAML usando o Windows PowerShell

  1. Verifique se você atende aos seguintes requisitos mínimos: Consulte Add-SPShellAdmin.

  2. No menu Iniciar, clique em Todos os Programas.

  3. Clique em Produtos do Microsoft SharePoint 2010.

  4. Clique em Shell de Gerenciamento do SharePoint 2010.

  5. No prompt de comando do Windows PowerShell, crie um novo aplicativo Web do SharePoint e configure-o para usar a entrada SAML. Observe que você deve substituir "WebAppUrl" e "domain\admin" pelos valores válidos.

    $wa = New-SPWebApplication -Name "SAML Sign-In" -SecureSocketsLayer -ApplicationPool "SAML Sign-In" -ApplicationPoolAccount "domain\admin" -
    Url "WebAppUrl" -Port 443 -AuthenticationProvider $ap
    

    Observação

    Você está habilitando o SSL porque, com a entrada SAML, cookies são usados como o tíquete de logon único do usuário. Isso permite que os administradores concedam acesso aos recursos do SharePoint pela duração do token sem a necessidade de autenticar novamente o usuário. Sem SSL, esses cookies podem ser facilmente interceptados por um usuário mal-intencionado e ser usados para representar o usuário original.

Depois de concluir esses procedimentos, crie um site do SharePoint e designe um proprietário. Para obter informações sobre a criação de um site do SharePoint, consulte Criar um conjunto de sites (SharePoint Server 2010).