Este guia mostra como configurar o Workforce Identity Federation usando o PingOne como seu IdP.
Depois de integrar o PingOne e o Atlas, sua força de trabalho pode usar as credenciais do PingOne para acessar Atlas clusters com autenticação OIDC.
Acesso necessário
Para gerenciar a autenticação federada, você deve ter acesso de Organization Owner a uma ou mais organizações que delegam configurações de federação à instância.
Pré-requisitos
Para utilizar o PingOne como um IdP para Atlas, você deve ter:
Uma assinatura do PingOne. Para obter uma assinatura, visite PingOne.
Um usuário PingOne com privilégios administrativos. Para conceder privilégios administrativos a um usuário,consulte Gerenciando administradores. Como alternativa, você pode usar o usuário administrativo padrão criado após a ativação de sua conta PingOne.
Procedimentos
Durante todo o procedimento a seguir, é útil ter uma guia do navegador aberta no Atlas Federation Management Console e uma guia aberta na sua conta PingOne.
Configurar PingOne como provedor de identidade
Use o console de administração do PingOne para configurar o PingOne como um IdP do OIDC.
Crie um aplicação no PingOne.
No console de administração do PingOne, acesse Applications > My Applications > OIDC.
Clique em Add Application.
Selecione Native App e clique em Next.
Para saber mais, consulte Adicionar ou atualizar um aplicação OIDC .
Configure tipos de concessão e redirecione URIs.
Selecione os tipos de concessão permitidos para o aplicação.
Habilitar os seguintes tipos de concessão:
Authorization Code ou Device Authorization
(Opcional) Refresh Token
Habilitar tokens de atualização fornece uma melhor experiência do usuário. Quando os tokens de atualização não estão habilitados, os usuários devem se autenticar novamente com o provedor de identidade assim que o token de acesso expirar.
No campoRedirect URIs, insira a seguinte URL:
http://localhost:27097/redirect.Clique em Next.
Obtenha o URI do emissor e o ID do cliente .
Depois de criar o aplicação, copie os seguintes valores da página de resumo do aplicação :
Discovery URL ou Issuer
- Client ID
IDPID (se exibido)
O URI do emissor normalmente segue este formato: https://auth.pingone.com/<environment-id>/as.
Salve esses valores para usar no próximo estágio da configuração do Atlas .
Configurar Federação de Identidade da Força de Trabalho no Atlas
Observação
Pré-requisitos
Esse procedimento exige que você tenha acesso Organization Owner e pressupõe que você já tenha um aplicação OIDC criado no seu IdP. Para saber como configurar um IdP, consulte Configurar PingOne como provedor de identidade.
Para configurar um Fornecedor de Identidade da Força de Trabalho no Atlas:
In Atlas, acesse o console do Federation Management para sua organização.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Na barra lateral, clique em Federation sob o título Identity & Access.
Clique em Open Federation Management App.
A página Federação é exibida.
Configurar provedores de identidade.
Clique em Identity Providers na barra lateral esquerda.
Execute uma das seguintes etapas:
Se você ainda não tiver nenhum provedor de identidade configurado, clique em Set Up Identity Provider.
Caso contrário, na tela Identity Providers , clique em Configure Identity Provider(s).
Selecione Workforce Identity Federation e clique em Continue.
Selecione OIDC for Data Access.
Insira as seguintes configurações do protocolo do fornecedor de identidade da força de trabalho.
Contexto | necessidade | Valor |
|---|---|---|
Configuration Name | Obrigatório | Etiqueta legível por humanos que identifica esta configuração. Este rótulo é visível para seus usuários do Atlas . |
Configuration Description | Opcional | Etiqueta legível por humanos que descreve esta configuração. |
Issuer URI | Obrigatório | Valor do emissor fornecido pelo seu aplicativo IdP registrado. Usando este URI, o MongoDB encontra um documento de configuração do provedor OpenID, que deve estar disponível no ponto de extremidade |
Client ID | Obrigatório | Identificador único do seu aplicação registrado . Insira o |
Audience | Obrigatório | Entidade para a qual seu provedor de identidade externo pretende o token. Insira o |
Requested Scopes | Opcional | Tokens que dão aos usuários permissão para solicitar dados do endpoints de autorização. Se você planeja oferecer suporte a tokens de atualização, esse campo deve incluir o valor Para cada escopo adicional que você deseja adicionar, clique em Add more scopes. |
Authorization Type | Obrigatório | Selecione Group Membership para conceder autorização com base na associação ao grupo de usuários do IdP ou selecione User ID para conceder uma autorização de usuário individual. |
Customize Groups Claim | Obrigatório | Identificador da declaração que inclui as informações de associação ao grupo de usuários do IdP principal. Aceite o valor padrão, a menos que seu IdP use uma declaração diferente ou você precise de uma declaração personalizada. Este campo só é obrigatório se você selecionar Group Membership. Padrão: |
Customize User Claim | Obrigatório | Identificador da declaração que inclui a identidade principal do usuário. Aceite o valor padrão, a menos que seu IdP use outra declaração. Padrão: |
(Optional) Associe um domínio ao seu Workforce provedor de identidade.
Observação
Esta etapa é necessária somente se você precisar conectar vários provedores de identidade Workforce provedores de identidadeà mesma organização com domínios diferentes. O Atlas suporta um máximo de dois provedores de identidade de força de trabalho IdPconectados a uma organização: um provedor de identidade OIDC IdP (para acesso ao banco de dados) e um provedor de identidade SAML IdP (para acesso à IU).
Em seu cartão Fornecedor de identidade da força de trabalho, clique em Associate Domains.
No modal Associate Domains with Identity Provider, selecione um ou mais domínios.
Clique em Submit.
Habilite seu fornecedor de identidade da força de trabalho em uma organização.
Clique em Connect Organizations.
Para a organização que deseja conectar ao Provedor de Identidade da Força de Trabalho, clique em Configure Access.
Clique em Connect Identity Provider.
Observação
Se você tiver outro IdP configurado, esse botão indicará Connect Identity Provider(s).
Adicionar um usuário de banco de dados usando a autenticação do Workforce
No Atlas, vá para a página Database & Network Access do seu projeto.
Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione seu projeto no menu Projects na barra de navegação.
Na barra lateral, clique em Database & Network Access sob o título Security.
O banco de dados & A página Acesso à rede é exibida depois de concluir as etapas anteriores.
Abra a caixa de diálogo Add New Database User or Group.
Clique em Add New Database User or Group.
Observação
Até que você aplique seu IdP do Workforce ao Atlas, esse botão diz Add New Database User.
Selecione Federated Auth.
Na seção Authentication Method, selecione Federated Auth.
Observação
Até habilitar o Workforce IdP para sua organização, você não poderá selecionar essa caixa.
Selecione o fornecedor de identidade e identificador
In the Select Identity Provider section, select a configured OIDC Identity Provider.
Especifique o identificador de usuário ou o identificador de grupo associado ao seu Workforce Identity Provider configurado.
Observação
Para usuários do Azure Entra ID, esse valor é mapeado para o ID do objeto do seu grupo de usuários do Azure em vez do nome do grupo de usuários.
Atribuir privilégios de usuário ou grupo.
Para atribuir privilégios ao novo usuário ou grupo, faça uma ou mais das seguintes tarefas:
Selecione uma função integrada no menu suspenso Built-in Role.
Você pode selecionar um papel embutido por grupo de banco de dados na UI do Atlas.
Se você excluir a opção padrão, você poderá clicar em Add Built-in Role para selecionar um novo papel embutido.
Selecione ou adicione funções personalizadas.
Se você tiver alguma função personalizada definida, poderá expandir a seção Custom Roles e selecionar uma ou mais funções no menu suspenso Custom Roles .
Clique em Add Custom Role para adicionar mais funções personalizadas.
Clique no link Custom Roles para visualizar os papéis personalizados para seu projeto.
Adicionar privilégios.
Expanda a seção Specific Privileges e selecione um ou mais privilégios do Specific Privileges menu suspenso.
Clique em Add Specific Privilege para adicionar mais privilégios. Isso atribui privilégios específicos do grupo em bancos de dados e coleções individuais.
Remova uma função ou privilégio aplicado.
- Clique em Delete ao lado do
- função ou privilégio a ser excluído.
Observação
O Atlas não exibe o ícone Delete ao lado de sua seleção Built-in Role, Custom Role ou Specific Privilege se você tiver selecionado apenas uma opção. Você pode excluir o papel ou privilégio selecionado após aplicar outro papel ou privilégio.
O Atlas pode aplicar um papel embutido, múltiplos papéis personalizados e múltiplos privilégios específicos para um grupo do banco de dados.
Para saber mais sobre autorização, consulte Controle de acesso baseado em funções e Funções incorporadas no manual MongoDB.
Especifique os recursos no projeto que o usuário ou grupo pode acessar.
Por padrão, os grupos podem acessar todos os clusters e instâncias do banco de dados federado no projeto. Para restringir o acesso a clusters específicos e instâncias do banco de dados federado:
Alterne Restrict Access to Specific Clusters/Federated Database Instances para On.
Selecione os clusters e as instâncias de banco de dados federados aos quais conceder acesso ao grupo na lista Grant Access To.
Salve como usuário ou grupo temporário.
Alterne Temporary User ou Temporary Group para On e escolha um tempo após o qual o Atlas pode excluir o usuário ou grupo a partir da lista suspensa Temporary User Duration ou Temporary Group Duration . Você pode selecionar um dos seguintes períodos para o grupo existir:
6 horas
1 dia
1 semana
Na guia Database Users , usuários ou grupos temporários exibem o tempo restante até que o Atlas exclua os usuários ou grupo. Depois que o Atlas exclui o usuário ou grupo, qualquer cliente ou aplicativo que use as credenciais temporárias do usuário ou grupo perde o acesso ao cluster.
Conecte um cliente ao MongoDB com o Workforce Identity Federation
A seguir, listamos maneiras de conectar um cliente ao MongoDB com a autenticação do Workforce Identity Federation:
Compass v1.38+
MongoDB shell v2.1.4+
Observação
Se você configurou o Fluxo de Autorização de Dispositivo, você deverá passar a bandeira --oidcFlows=device-auth ao conectar com mongosh. Por exemplo:
mongosh "<connection-string>" \ --authenticationMechanism MONGODB-OIDC \ --oidcFlows=device-auth