Autenticação SAML federada com SharePoint 2010 e Azure Access Control Service Parte 2
Artigo original publicado em 7 de maio de 2011, sábado
Na primeira postagem desta série (https://blogs.technet.com/b/speschka/archive/2011/05/05/federated-saml-authentication-with-sharepoint-2010-and-azure-access-control-service-part-1.aspx), descrevi como configurar o SharePoint para estabelecer uma relação de confiança diretamente com o serviço ACS (Azure Access Control) e usá-lo para federar autenticação entre ADFS, Yahoo, Google e Windows Live e, então, usar isso para entrar no SharePoint. Na parte 2, vou usar um cenário semelhante, mas um que esteja realmente implementado quase retroativamente à parte 1 – vamos configurar uma relação de confiança típica entre o SharePoint e o ADFS, mas vamos configurar o ACS como um provedor de identidade no ADFS e, depois, usar isso para sermos redirecionados ao logon; e então voltar novamente ao SharePoint. Esse tipo de confiança, pelo menos entre o SharePoint e o ADFS, é um tipo que, na minha opinião, é mais familiar aos usuários do SharePoint, e eu acho que, hoje, se conecta bem a um cenário mais comum em uso em muitas empresas.
Como fiz na parte 1, não vou descrever os elementos básicos da instalação e configuração do ACS – deixo isso para as equipes responsáveis pelo produto. Dessa forma, para a parte 2, aqui estão as etapas a serem conectadas:
1. Instale o aplicativo Web e o conjunto de sites do SharePoint, configurados com o ADFS.
-
- Primeiro e mais importante, você deve criar o SPTrustedIdentityTokenIssuer, uma terceira parte confiável do ADFS e um aplicativo Web e um conjunto de sites do SharePoint. Verifique se você pode fazer logon no site usando as credenciais do ADFS. Detalhes extremos sobre como isso pode ser feito estão descritos em uma de minhas postagens anteriores, em https://blogs.technet.com/b/speschka/archive/2010/07/30/configuring-sharepoint-2010-and-adfs-v2-end-to-end.aspx.
2. Abra a página referente ao gerenciamento de controle de acesso
-
- Faça logon no portal de gerenciamento do Windows Azure. No painel esquerdo, clique no menu Barramento de Serviço, Controle de Acesso e Cache. Clique em Controle de Acesso, na parte superior do painel esquerdo (sob AppFabric); clique no seu namespace, no painel direito; e clique no botão Access Control Service, na parte Gerenciar da faixa de opções. Isso abrirá a página de gerenciamento de controle de acesso.
3. Crie uma relação de confiança entre o ADFS e o ACS
-
- Nessa etapa, configuraremos o ACS como um provedor de identidade no ADFS. Para começar, vá para o servidor do ADFS e abre o console de gerenciamento do AD FS 2.0
- Vá até o nó AD FS 2.0…relações de confiança…relações de confiança do provedor de declarações e, no painel direito, clique no link para adicionar relação de confiança do provedor de declarações
- Clique no botão Iniciar para começar o assistente
- Use a opção padrão para importar dados da terceira parte confiável publicados online. A URL a ser utilizada está no portal de gerenciamento do ACS. Volte para o navegador que tem o portal aberto e clique no link Integração de Aplicativos, sob o menu Relações de confiança, no painel esquerdo
- Copie a URL mostrada para os Metadados do WS Federation e cole-a no endereço de metadados de federação (nome do host ou URL): edite a caixa no assistente do ADFS e clique no botão Avançar
- Digite um nome para exibição e, opcionalmente, algumas observações; depois, clique no botão Avançar
- Deixe a opção padrão de permissão a todos os usuários para acessar o provedor de identidade e clique no botão Avançar.
- Clique no botão Avançar, assim, ele cria o provedor de identidade, e deixe marcada a caixa para abrir a caixa de diálogo do editor de regras. O restante desta seção será bastante similar ao que descrevi nesta postagem https://blogs.technet.com/b/speschka/archive/2010/11/24/configuring-adfs-trusts-for-multiple-identity-providers-with-sharepoint-2010.aspx sobre a configuração de uma relação de confiança entre dois servidores de ADFS:
É preciso criar regras para passar todas as declarações obtidas do servidor de ADFS. Por isso, na caixa de diálogo de regras, para cada declaração a ser enviada ao SharePoint, você fará o seguinte:
- Clique em Adicionar Regra.
- Selecione a opção para passar ou filtrar uma declaração de entrada, no menu suspenso de modelo de regra de declaração, e clique no botão Avançar.
- Dê um nome à declaração - pode ser útil incluir o nome da declaração que está sendo passada. No menu suspenso Tipo de Declaração de Entrada, selecione o tipo de declaração que você deseja passar; por exemplo, Endereço de Email. Em geral, deixo selecionada a opção padrão para passar todos os valores de declaração, mas, se você tiver regras de negócios diferentes, selecione a opção mais apropriada e clique no botão Concluir. Observe que, se optar pela passagem de todos os valores de declaração, o ADFS emitirá uma caixa de diálogo de aviso.
Depois que tiver adicionado as declarações passadas a cada declaração necessária no SharePoint, você poderá fechar a caixa de diálogo de regras. Agora, para a última parte da configuração do ADFS, é preciso localizar a terceira parte confiável do SharePoint. Clique na caixa de diálogo de edição de regras de declaração e, para cada regra de passagem de declaração executada na etapa anterior, você TAMBÉM precisará adicionar uma regra de passagem de declaração à terceira parte confiável do SharePoint. Isso permitirá que as declarações fluam do ACS para o ADFS por meio do provedor de declaração confiável e saiam do SharePoint por meio da terceira parte confiável.
A configuração do ADFS agora está concluída.
4. Adicione o ADFS como uma terceira parte confiável no ACS
-
- Volte para o navegador que tem o portal aberto e clique no link de aplicativos de terceira parte confiável, no menu Relações de confiança, no painel esquerdo
- Clique no link Adicionar
- Complete a seção de configurações de aplicativo de terceira parte confiável
- Digite um nome para exibição; por exemplo, “ADFS para ACS”
- Use o modo padrão de entrada manual de configurações
- Na caixa de edição Realm, insira o realm que o ADFS enviará com a solicitação. Acontece que o ADFS terá uma lista específica de realms que ele enviará durante o redirecionamento para outro provedor de identidade, portanto, NÃO use o realm enviado durante a criação de SPTrustedIdentityTokenIssuer, no SharePoint. Em vez disso, é recomendável usar https://yourFullyQualifiedAdfsServerName/adfs/services/trust.
- Para retornar a URL, use https:// yourFullyQualifiedAdfsServerName /adfs/ls/.
- O menu suspenso de formato de token pode ser SAML 2.0 ou 1.1. Como o token está sendo enviado para o ADFS, e não para o SharePoint, e o ADFS oferece suporte para tokens SAML 2.0, não é preciso escolher SAML 1.1, como você faria se estivesse conectando diretamente o SharePoint
- Você pode definir o tempo de vida do token (segundos) com o valor que quiser. O padrão é 10 minutos; eu defino o meu como 3600, ou seja, 1 hora.
- Seção de preenchimento das definições de autenticação
- Para os provedores de identidade, é possível selecioná-los todos, exceto e a menos que você tenha adicionado anteriormente o mesmo servidor de ADFS como um provedor de identidade (e isso terá sido feito se você tiver seguido as etapas da primeira postagem desta série). Se fez isso, você pode marcar tudo, exceto o servidor de identidade que aponta de volta para o mesmo servidor de ADFS que, agora, você está configurando como terceira parte confiável.
- Nos grupos de regras, por uma questão de tempo, vou sugerir que você siga as diretrizes dos grupos de regras que expliquei na parte 1 ou, se já tiver concluído a parte, que apenas selecione esse grupo de regras na lista.
- Nas definições de autenticação de token, você pode deixar selecionada a opção padrão, que diz para usar o certificado de namespace de serviço (padrão).
Clique no botão Salvar para salvar as alterações e criar a terceira parte confiável.
Agora, você deve poder fazer logon no site do SharePoint usando o ADFS ou o ACS. Um aspecto a ser lembrado, porém, é que o ADFS gravará um cookie para memorizar o provedor de identidade usado por último. Desse ponto em diante, ele não solicitará o provedor de identidade, a menos que você use algo como uma janela de navegação InPrivate no IE (Faço esse destaque em fonte extra grande porque isso é esquecido com bastante frequência e é fonte de muita confusão ). Por exemplo, aqui está a aparência disso quando você é redirecionado, pela primeira vez, para o servidor de ADFS ou se estiver usando uma sessão de navegador InPrivate:
O restante funciona exatamente como descrito na parte 1 desta série (incluindo a advertência sobre como usar um endereço de email para Windows Live ID), por isso, não postarei as duas capturas de tela novamente, pois elas são quase idênticas. Com esta série completa, agora você deve poder integrar com êxito o ADFS, o ACS e todos os provedores de identidade compatíveis com o ACS ao seu ambiente do SharePoint 2010.
Esta é uma postagem de blog localizada. O arquivo original pode ser encontrado em Federated SAML Authentication with SharePoint 2010 and Azure Access Control Service Part 2