Configurando o Microsoft Azure Active Directory Usando WS-Federation¶
O Vinyl se integra ao Microsoft Azure Active Directory (AD) usando o protocolo WS-Federation, permitindo logon único. Cada instância do Vinyl deve ser configurada individualmente para funcionar com o Azure AD e vice-versa. Existem três tarefas principais envolvidas:
- Registre o Vinyl como um aplicativo Azure AD
- Configure o Azure AD como um provedor de segurança de Vinyl
- Mapeie usuários e grupos do Vinyl para identidades do Azure
Requisitos¶
Para prosseguir, você precisará do seguinte:
- Acesso de administrador a uma conta do Azure com um serviço Azure Active Directory
- Acesso de administrador ao Vinyl
- O Vinyl deve estar disponível via HTTPS com um certificado SSL válido
Propriedades¶
Este documento fará referência às seguintes propriedades.
Exemplo | Notas | |
---|---|---|
URL de Vinyl | https://example.com/Vinyl/ | O Vinyl deve ser acessível via HTTPS. O URL deve incluir a barra final. O caminho diferencia maiúsculas de minúsculas. |
Nome do provedor | Azure | Normalmente, o nome do provedor deve corresponder ao nome de domínio do Active Directory. Uma vez que o nome do fornecedor aparecerá no URL de início de sessão (ver abaixo), evite espaços, pontuação e carateres especiais. |
URL de login | Diretório raiz do Vinyl/signin-[Nome do provedor de segurança] https://example.com/Vinyl/signin-Azure | URL de retorno de chamada provisionado automaticamente ao criar o provedor de segurança do Azure AD no Vinyl. O exemplo fornecido aqui pressupõe que: example.com é o nome do host, https://example.com/Vinyl/ é o diretório raiz do aplicativo Vinyl e que Azure é o nome do Provedor de Segurança do Azure. |
Registrar o Vinyl Como um Aplicativo do Azure AD¶
A instância do Vinyl deve ser registrada como aplicativo do Azure AD. A página a seguir documenta o processo:
https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-integrating-applications
Resumidamente:
- Faça login no Portal Microsoft Azure
- Navegue até o centro de administração Azure Active Directory
- Clique em Azure Active Directory na navegação
- Clique em Registros de Aplicativos
- Crie um Novo Registro e forneça o Nome como Vinyl
-
Digite seu URI de redirecionamento como
https://yourdomainname.com/signin-Vinyl
(Altere 'Vinyl' para qualquer nome que você usará nos Provedores de Segurança de Vinyl.) -
Clique em Registrar
-
Abra o aplicativo recém-criado que você registrou e, na barra lateral Gerenciar, selecione Manifesto:
- Anote a string appId, como '"appId": "062e3d2f-c200-40bc-b402-5be728bcdd1a",'
- Anote seu domínio principal, mostrado nas 'Informações do locatário' do AzureAD.
-
Edite as seguintes linhas da seguinte forma:
Editar:
"groupMembershipClaims": null, "identifierUris": [],
Para ser:
"groupMembershipClaims": "SecurityGroup", "identifierUris": [ "https://[yourprimarydomain.com]/[appId]" ],
Exemplo: se o domínio primário do Azure Tenant for zudy.com:
-
Clique em Salvar
- Clique em Visão geral na navegação
- Clique na aba Endpoints
- Onde estiver escrito Documento de metadados da federação, clique no ícone copiar para a área de transferência e cole o valor em algum lugar que você possa consultar mais tarde (por exemplo, Bloco de Notas)
Conecte e Configure Novo Provedor de Segurança no Vinyl¶
Nesta etapa você definirá o novo Provedor de Segurança para Azure AD. Isso inclui definir o Tipo como serviços WS-Federation, definir os parâmetros Audience, MetadataAddress e Wtrealm (fornecidos pela Microsoft) e configurar os Claim Types emitidos pela Microsoft para alinhar com qualquer mapeamento de grupo dentro do Vinyl.
- Navegue até o IDE
- Selecione Provedores de segurança
- Clique em + Autenticação de usuário em Autenticação de usuário
- Selecione Tipo como WS-Federation
- Forneça um Nome que corresponda ao que você usou para configurar o Redirect URI. Por exemplo:
Azure
-
Opções para alterar: (Deixar como está para não listado)
- Nome: ('Azure' no exemplo)
- Tipo: WS-Federation
- Ativado: Sim
- Provisionamento de usuários: Sim ; Isso permitirá que o Azure crie usuários no Vinyl.
- Membro do Grupo de Suprimentos: Sim
- Campo Declarações da Loja: Opcional; Isso permite a visibilidade dos dados de meta-reivindicações provenientes da Microsoft para um usuário do Vinyl.
-
Clique em Salvar
- Observe que ao Salvar o Vinyl emitirá um valor de Identificador exclusivo para este Provedor
Configurar os Parâmetros de Propriedades¶
Nesta etapa você configurará três parâmetros que representam valores fornecidos pelo Microsoft Azure.
-
No painel Propriedades, crie as seguintes declarações:
-
Público:
https://**YourAzureprimarydomain.com**/**App-id-from-azure-app-reg**
Exemplo:
https://zudy.com/062e3d2f-c200-40bc-b402-5be728bcdd1r
-
MetadadosEndereço:
https://login.microsoftonline.com/***Your-Tenant-ID***/federationmetadata/2007-06/federationmetadata.xml
- Wtrealm:
https://**YourAzureprimarydomain.com**/**App-id-from-azure-app-reg**
-
-
Em Reivindicações crie o seguinte:
- Pesquise a palavra "grupos" e selecione a primeira entrada que aparecer, que é
http://schemas.microsoft.com/ws/2008/06/identity/claims/groups
- Pesquise a palavra "grupos" e selecione a primeira entrada que aparecer, que é
-
Para Uso, selecione Grupo
- Clique no ícone de marca de seleção para salvar
Mapear Usuários e Grupos de Vinyl para Identidades do Azure¶
Na área Identidades do Seguro, você verá agora uma entrada para o Provedor de Segurança criado. Quando os usuários se autenticarem no Vinyl usando este Provedor de Segurança, todas as identidades associadas fluirão e você verá os registros aparecerem nos painéis Grupos de Provedores e Identidades por Provedor de acordo.
No painel Grupos de Provedores você pode fornecer mapeamentos entre quaisquer Grupos Vinyl e Grupos Azure que desejar, usando o campo Grupos. O campo Grupos aqui é um menu suspenso que lista todos os grupos configurados no Vinyl. Isso permitirá o provisionamento just in time.
Com Provisionamento de Usuários¶
Se você habilitou o provisionamento de usuários conforme descrito acima e tentou fazer login, você poderá ser redirecionado de volta para o login do Vinyl. O formulário de login exibirá uma mensagem semelhante a esta:
The user account (arthur.dent@example.onmicrosoft.com) has not been granted access to an application.
Embora o Vinyl tenha conseguido provisionar o usuário com êxito, o usuário não tem acesso a nenhum aplicativo do Vinyl por padrão. Supondo que o usuário do Azure AD tenha sido adicionado a um ou mais grupos e que a associação ao grupo de suprimentos esteja habilitada (conforme descrito acima), você precisará mapear os grupos de segurança do Azure AD para grupos de segurança do Vinyl. Para fazer isso:
- Faça login no Vinyl como administrador
- Navegue até o IDE
- Clique no botão Gerenciamento de usuários
- Clique na aba Identidades
- No painel Provedores, destaque seu novo provedor de segurança do Azure AD
- No painel Grupos de Provedores, clique em + Grupo
-
Insira o nome de um grupo que você possui no AzureAD, juntamente com seu identificador (isso pode ser encontrado abrindo um tipo de grupo de segurança em grupos AAD e anotando sua ID de objeto).
Em seguida, escolha o grupo de Vinyl ao qual ele será adicionado automaticamente como membro ao fazer login.
-
Clique no botão Salvar
Sem Provisionamento de Usuários¶
Se você não tiver habilitado o provisionamento de usuários, a autenticação falhará com uma mensagem semelhante a esta:
Although you've successfully authenticated with Azure, the account arthur.dent@example.onmicrosoft.com (arthur.dent@example.onmicrosoft.com) is not associated with a local account.
Na mensagem acima, "arthur.dent@example.onmicrosoft.com" é o nome de usuário (chamado "nome" na autenticação de declarações). A parte entre parênteses é o identificador exclusivo (chamado de "identificador de nome" na autenticação de declarações). Você precisará dessas duas informações para a próxima etapa.
- Faça login no Vinyl como administrador
- Navegue até o IDE
- Clique no botão Gerenciamento de usuários
- Clique na aba Usuários
- No painel Usuários, selecione o usuário que deseja mapear
- No painel Identidades, clique no botão + Identidade
-
Forneça o seguinte:
- Provedor: Nome do Provedor (veja acima)
- Nome: o nome de usuário do Azure (veja acima)
- Identificador: o identificador do nome de usuário do Azure (veja acima)
-
Clique no botão Salvar.
Saída do Vinyl
Confirme que agora na página de Login existe um botão "Entrar com…" que aparece agora, e ele lerá o Nome que você forneceu ao configurar o Provedor de Segurança
Exemplo de botão de login para novo provedor de segurança na página de login
Teste o login, você deve ser redirecionado para autenticar com uma conta do Azure