Habilitar autenticação OIDC para seu projeto do Ops Manager
Nesta página
- Configurar um aplicativo de provedor de identidade externo
- Registre um novo aplicativo para o Ops Manager.
- Defina o valor Redirect URL como
http://localhost:27097/redirect
. - Adicione ou ative a reivindicação groups .
- Opcional: permita tokens de atualização se quiser que os clientes do MongoDB atualizem os tokens para uma melhor experiência do usuário.
- Opcional: configure a duração do token de acesso (
exp
reivindicação) para alinhar com o tempo da sessão de conexão do reconhecimento de data center. - Configurar o Azure AD como um provedor de identidade
- Pré-requisitos
- Procedimentos
- Configurar autenticação OIDC
- Configurar autorização OIDC
- Revogar JWKS
O Ops Manager permite configurar os mecanismos de autenticação que todos os clientes, incluindo os agentes do Ops Manager, usam para se conectar aos MongoDB deployments. Você pode habilitar vários mecanismo de autenticação para cada um dos seu projeto, mas deve escolher apenas um mecanismo para o agente.
MongoDB Enterprise permite autenticação usando OIDC. Para autenticar com OIDC, você deve primeiro registrar seu aplicativo OIDC ou OAuth com um IdP que ofereça suporte ao padrão OIDC , como Azure AD, Okta e Ping Identity.
Configurar um aplicativo de provedor de identidade externo
As etapas de registro de aplicativos OIDC podem variar de acordo com o seu IdP. Certifique-se de que preenche os seguintes itens durante o processo de registo:
Depois de registrar seu aplicativo, salve os valores issuer
, clientId
e audience
para usar na próxima etapa da configuração do OIDC IdP.
Configurar o Azure AD como um fornecedor de identidade
Para registrar seu aplicativo OIDC ou OAuth com o Azure AD:
Registre um aplicativo.
Navegue até App registrations.
Em seu Azure portal do conta, Atlas Search e clique Azure Active Directory em .
Na seção Manage da navegação à esquerda, clique em App registrations.
Clique em New registration.
Aplique os seguintes valores.
CampoValorNameOM Database - OIDCSupported Account TypesAccounts in this organizational directory only (single tenant)Redirect URI- Public client/native (mobile & desktop)-http://localhost:27097/redirect
Clique em Register.
Para saber mais sobre como registrar um aplicativo, consulte Documentação do Azure.
Adicione uma reivindicação de grupo.
Navegue até Token Configuration.
Na seção Manage da navegação à esquerda, clique em Token Configuration.
Clique em Add groups claim.
No modal Edit groups claim, selecione Security.
Quais grupos você seleciona dependem do tipo de grupos que você configurou em seu ambiente Azure. Talvez seja necessário selecionar um tipo diferente de grupo para enviar as informações apropriadas do grupo.
Na seção Customize token properties by type , certifique-se de selecionar apenas Group ID.
Quando você seleciona Group Id, o Azure envia o ID de objeto do grupo de segurança.
Clique em Add.
Para saber mais sobre como adicionar uma declaração de grupo, consulte Documentação do Azure.
Adicione uma reivindicação de identificador de usuário ao token de acesso.
Clique em Add optional claim.
No modal Add optional claim, selecione Access.
Selecione uma declaração que contenha um identificador de usuário que você possa consultar nos registros de acesso do MongoDB, como um e-mail.
Clique em Add.
Na anotação Microsoft Graph Permissions, marque a caixa e clique em Add.
Para saber mais, consulte Documentação do Azure.
Atualize o manifesto.
Na seção Manage da navegação à esquerda, clique em Manifest.
Atualize o accessTokenAcceptedVersion de
null
para2
.O número
2
representa a Versão 2 dos tokens de acesso da Microsoft. Outros aplicativos podem usar isso como um atestado assinado da identidade do usuário gerenciado pelo Active Directory. A versão 2 garante que o token seja um JSON Web Token que o MongoDB entenda.Clique em Save.
Para saber mais sobre como adicionar uma reivindicação opcional, consulte Documentação do Azure.
Lembre-se dos metadados.
Na navegação à esquerda, clique em Overview.
Copie o valor Application (client) ID.
Na navegação superior, clique em Endpoints.
Copie o valor OpenID Connect metadata document sem a parte
/.well-known/openid-configuration
.Você também pode recuperar este valor seguindo a URL do OpenID Connect metadata document e copiando o valor para
issuer
.
A tabela a seguir mostra como esses valores de interface do usuário do Azure AD são mapeados em nossas propriedades de configuração do Ops Manager:
Interface do Azure AD | propriedade de configuração do Ops Manager |
---|---|
Application (client) ID | Client ID Audience |
OpenID Connect metadata document (without /.well-known/openid-configuration) | Issuer URI. |
Pré-requisitos
Para habilitar a autenticação OIDC, você deve:
Use
mongosh
1.9.1 ou posterior.Use o MongoDB 7.0 ou posterior.
Configure pelo menos um outro mecanismo de autenticação com o MongoDB Agent.
Observação
O MongoDB Agent não pode se conectar ao seu cluster via OIDC. Você deve habilitar um mecanismo de autenticação adicional para o MongoDB Agent. Se o Ops Manager não managed o Monitoramento ou o Backup, você deverá configurá-los manualmente para usar o mecanismo de autenticação alternativo.
Procedimentos
Observação
Se você deseja redefinir as configurações de Autenticação e TLS para seu projeto, primeiro deixe de gerenciar qualquer MongoDB deployment que o Ops Manager gerencia em seu projeto.
Configurar autenticação OIDC
Navegue até a Security Settings caixa de diálogo para seu sistema.
Se ainda não estiver exibido, selecione a organização que contém o projeto desejado no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Se ainda não estiver exibido, clique em Deployment na barra lateral.
Clique na aba Security.
Clique na aba Settings.
Realize uma das seguintes ações:
Se esta for a primeira vez que você define configurações de TLS, autenticação ou autorização para este projeto, clique em Get Started.
Se você já configurou a autenticação do TLS ou as configurações de autorização deste projeto, clique em Edit.
Opcional: Especifique as Configurações do TLS .
Campo | em ação | ||||
---|---|---|---|---|---|
MongoDB Deployment Transport Layer Security (TLS) | Alterne este controle deslizante para ON. | ||||
Caminho do arquivo TLS CA | O arquivo da autoridade de certificação TLS é um arquivo de certificado no formato ObservaçãoDigite o caminho do arquivo da autoridade de certificação TLS em cada host que estiver executando um processo do MongoDB:
Isto habilita a configuração do Clique em Validate para testar se cada host no seu sistema tem uma Autoridade de Certificado TLS nos caminhos especificados. | ||||
Modo de certificado de cliente | Selecione se os aplicativos do cliente ou os MongoDB Agents devem apresentar um certificado TLS ao se conectar a um sistema MongoDB habilitado para TLS. Cada sistema do MongoDB verifica se há certificados desses hosts clientes quando eles tentam se conectar. Se você optar por exigir os certificados TLS do cliente, verifique se eles são válidos. Os valores aceitos são:
|
O TLS não é necessário para uso com autenticação Federated Auth (OIDC) .
Defina as configurações de autorização OIDC.
Forneça os seguintes valores:
Contexto | necessidade | Valor |
---|---|---|
Audience | Obrigatório | Especifique para quem seu fornecedor de OIDC pretende o token. |
Issuer URI | Obrigatório | Valor do emissor fornecido pelo seu aplicativo IdP registrado. Usando esse URI, o MongoDB encontra um documento de configuração do provedor OpenID, que deve estar disponível no endpoints /.wellknown/open-id-configuration . |
Client ID | Obrigatório | Identificador único para a sua aplicação registada. Digite o clientId valor do aplicativo que você registrou no IdP do OIDC. |
Requested Scopes | Opcional | Tokens que dão aos usuários permissão para solicitar dados do endpoints de autorização. Para cada escopo adicional que você deseja adicionar, clique em Add more scopes. |
User Claim | Opcional | O identificador da reclamação que inclui a identidade principal do utilizador. Aceite o valor padrão, a menos que seu IdP use uma declaração diferente. Padrão: |
Groups Claim | Opcional | O identificador da reivindicação que inclui as informações de associação do grupo de usuários do IdP do responsável. Aceite o valor padrão, a menos que seu IdP use uma declaração diferente ou você precise de uma declaração personalizada. Padrão: |
Configurar autorização OIDC
O MongoDB não cria explicitamente trigger de banco de dados para o OIDC. Ele mapeia usuários do OIDC para roles do MongoDB com base em seus grupos.
Para criar um reconhecimento de data center role para um grupo OIDC :
Navegue até a MongoDB Roles aba do seu sistema.
Se ainda não estiver exibido, selecione a organização que contém o projeto desejado no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Se ainda não estiver exibido, clique em Deployment na barra lateral.
Clique na aba Security.
Clique na aba MongoDB Roles.
Crie o papel OIDC.
Insira os seguintes campos:
CamponecessidadeDescriçãoIdentifierObrigatórioNa caixa database , digite
admin
.Na caixa name , insira seu
projectId
e o nome do grupo do seu IdP separados por uma barra/
:{projectId}/{group_name} Inherits FromOpcionalUma lista de pares de nomes de roles e reconhecimento de data center. O formato para esses pares éroleName@dbName
.Authentication RestrictionsOpcionalUma lista de endereços IP ou notações CIDR que você deseja restringir do seu IdP.Clique em Add Role.
Revogar JWKS
Observação
Não use este recurso para girar suas chaves de assinatura. Quando você alterna as chaves de assinatura do IdP do OIDC , o MongoDB busca o JWKS automaticamente após a expiração dos tokens de acesso existentes.
Se sua chave privada estiver comprometida, você poderá revogar imediatamente seus Conjuntos de chaves da Web JSON (JWKS) armazenados em cache nos nós MongoDB:
Navegue até a Security Settings caixa de diálogo para seu sistema.
Se ainda não estiver exibido, selecione a organização que contém o projeto desejado no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Se ainda não estiver exibido, clique em Deployment na barra lateral.
Clique na aba Security.
Clique na aba Settings.