Configurar a autenticação usando um token de segurança SAML (SharePoint Foundation 2010)
Aplica-se a: SharePoint Foundation 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 Foundation 2010.
A entrada SAML é usada normalmente em 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 residem em um domínio que não pertence à floresta que contém o SharePoint Foundation 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 Foundation 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 Guia de Implantação dos AD FS 2.0 (https://go.microsoft.com/fwlink/?linkid=191723&clcid=0x416).
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
Verifique se você atende aos seguintes requisitos mínimos: Consulte Add-SPShellAdmin.
No menu Iniciar, clique em Todos os Programas.
Clique em Produtos do Microsoft SharePoint 2010.
Clique em Shell de Gerenciamento do SharePoint 2010.
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")
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
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"
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/"
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
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
.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
Crie um site criando primeiro um objeto de declaração, conforme mostrado no exemplo a seguir:
$claim = New-SPClaimsPrincipal -TrustedIdentityTokenIssuerr $ap -Identity $env:UserName
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
Abra o console de Gerenciamento dos AD_FS 2.0.
No painel esquerdo, expanda Política e selecione Terceiras Partes Confiáveis.
No painel direito, clique em Adicionar Terceira Parte Confiável. Isso abre o assistente de configuração do AD FS (Serviços de Federação do Active Directory) 2.0.
Na primeira página do assistente, clique em Iniciar.
SelecioneInserir configuração de terceira parte confiável manualmente e clique em Avançar.
Digite o nome de uma terceira parte confiável e clique em Avançar.
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.
Não use um certificado de criptografia. Clique em Avançar.
Selecione Habilitar suporte para federação de identidade baseada em navegador da Web.
Digite o nome da URL do aplicativo Web e acrescente /_trust/ (por exemplo: https://nomedoservidor/_trust/). Clique em Avançar.
Digite o nome de um identificador (por exemplo: urn:NOMEDOCOMPUTADOR:Geneva) e clique em Adicionar. Clique em Avançar.
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.
No painel esquerdo, expanda Nova Regra e selecione Regra Predefinida.
Selecione Criar Declarações do Repositório de Atributos LDAP.
No painel direito, na lista suspensa Repositório de Atributos, selecione Repositório Corporativo de Contas de Usuário do Active Directory.
Em Atributo LDAP, selecione sAMAccountName.
Em Tipo de Declaração de Saída, selecione Endereço de Email.
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
Verifique se você atende aos seguintes requisitos mínimos: Consulte Add-SPShellAdmin.
No menu Iniciar, clique em Todos os Programas.
Clique em Produtos do Microsoft SharePoint 2010.
Clique em Shell de Gerenciamento do SharePoint 2010.
No prompt de comando do Windows PowerShell, estabeleça uma relação de confiança, conforme 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 Foundation 2010 possa acessar.
Para exportar o certificado IP-STS confiável usando o Windows PowerShell
Verifique se você atende aos seguintes requisitos mínimos: Consulte Add-SPShellAdmin.
No menu Iniciar, clique em Todos os Programas.
Clique em Produtos do Microsoft SharePoint 2010.
Clique em Shell de Gerenciamento do SharePoint 2010.
No prompt de comando do Windows PowerShell, exporte o certificado IP-STS de confiança, conforme 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
Verifique se você atende aos seguintes requisitos mínimos: Consulte Add-SPShellAdmin.
No menu Iniciar, clique em Todos os Programas.
Clique em Produtos do Microsoft SharePoint 2010.
Clique em Shell de Gerenciamento do SharePoint 2010.
No prompt de comando do Windows PowerShell, crie um mapeamento, conforme 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
Verifique se você atende aos seguintes requisitos mínimos: Consulte Add-SPShellAdmin.
No menu Iniciar, clique em Todos os Programas.
Clique em Produtos do Microsoft SharePoint 2010.
Clique em Shell de Gerenciamento do SharePoint 2010.
No prompt de comando do Windows PowerShell, crie um novo provedor de autenticação, conforme 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
Verifique se você atende aos seguintes requisitos mínimos: Consulte Add-SPShellAdmin.
No menu Iniciar, clique em Todos os Programas.
Clique em Produtos do Microsoft SharePoint 2010.
Clique em Shell de Gerenciamento do SharePoint 2010.
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 Foundation 2010).