Menu Docs
Página inicial do Docs
/
MongoDB Cloud Manager
/ / /

Configurar a Federação de Identidade do Volume de Trabalho com OAuth 2.0

Nesta página

  • Como funciona
  • Autenticação integrada
  • Autenticação de chamada de resposta
  • Acesso necessário
  • Pré-requisitos
  • Procedimentos
  • Configurar um aplicativo de provedor de identidade externo
  • Configurar autenticação da Federação de Identidade do Volume de Trabalho
  • Configurar autorização OIDC
  • Conectar um aplicativo ao MongoDB com o Workload Identity Federation
  • Gerenciar uma configuração de federação de identidade de volume de trabalho existente
  • Revoke JWKS
  • Editar uma configuração
  • Excluir uma configuração

O Workload Identity Federation permite que seus aplicativos acessem implantações do MongoDB Cloud Manager usando identidades programáticas externas, como Azure Service Principals, Azure Managed Identities e Contas de serviço do Google.

O Workload Identity Federation permite que seus aplicativos acessem aos MongoDB deployments com tokens de acesso OAuth 2.0. Os tokens de acesso podem ser emitidos por qualquer fornecedor de identidade externo, incluindo o Azure Entra ID e o Google Cloud Platform. O Cloud Manager armazena os identificadores e privilégios do usuário, mas não os segredos. Esse mecanismo de autenticação para seus aplicativos é suportado apenas por determinados drivers do MongoDB .

Os drivers do MongoDB oferecem suporte a dois tipos de fluxo de autenticação para o Workload Identity Federation: autenticação integrada e autenticação de retorno de chamada.

Você pode usar a autenticação integrada se implantar o aplicação em uma infraestrutura compatível com um tipo principal compatível. Seu aplicação pode acessar os Cloud Manager sem fornecer uma senha ou solicitar manualmente um JSON web token JSON web token do serviço de metadados do seu fornecedor de nuvem. Em vez disso, o driver MongoDB escolhido usa seu identificador principal existente para solicitar um token de acesso ao JSON JSON web token web token, que é passado para o sistema do Cloud Manager automaticamente quando o aplicação é conectado.

Para obter mais detalhes de implementação, consulte a documentação do driver escolhido.

Infraestrutura suportada de autenticação integrada e tipos principais

Provedor de nuvem
Tipo de infraestrutura
Tipo principal
GCP
Mecanismo de computação
Contas de serviço GCP
Ambiente padrão do App Engine
Ambiente flexível do App Engine
Funções da nuvem
Cloud Run
Google Kubernetes Engine
Cloud Build
Azure
Azure VM
Azure Managed Identity (usuário e sistema atribuídos)

Você pode usar a autenticação de chamada de resposta de chamada com qualquer serviço que ofereça suporte a tokens de acesso OAuth 2.0. O Workload Identity Federation chama um método de chamada de resposta de chamada, no qual você pode solicitar o JSON web token necessário JSON web token do servidor de autorização ou do provedor de nuvem que você deve passar quando o aplicação se conectar ao Cloud Manager com o Workload Identity Federation.

Consulte a documentação do driver escolhido para obter detalhes adicionais de implementação.

Para configurar o Workload Identity Federation, é necessário ter acesso ao Cloud Project Owner Manager.

Você deve ter o seguinte:

  • MongoDB 7.0 ou posterior.

  • Pelo menos um outro mecanismo de autenticação com MongoDB Agent configurado.

    Observação

    O MongoDB Agent não pode se conectar à sua implantação via OIDC. Você deve habilitar um mecanismo de autenticação adicional para o MongoDB Agent. Se o Cloud Manager não gerenciar o Monitoramento ou o Backup, você deverá configurá-los manualmente para usar o mecanismo de autenticação alternativo.

Para configurar a Federação de Identidade do Volume de Trabalho, complete as seguintes etapas:

  1. Configure um fornecedor de identidade de volume de trabalho (configuração única).

    1. Configure seu provedor de identidade externo.

    2. Configure o fornecedor de identidade do volume de trabalho no Cloud Manager.

  2. Conceder identidades externas (entidades de usuário) ou acesso a grupos.

  3. Autentique-se no sistema do Cloud Manager .

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 Cloud Manager gerencia em seu projeto.

Para acessar as implantações do Cloud Manager com o Azure Managed Identidades ou o Azure Service Principals, você precisa registrar um aplicação de ID do Azure Entra. Se você tiver um registro de aplicação existente para acesso ao Workload (usuário humano), recomendamos que você registre um aplicação separado para acesso ao Workload.

1
  1. Navegue até App registrations.

    1. Em seu portal do Azure conta, pesquise e clique Microsoft Entra ID em .

    2. Na seção Manage da navegação à esquerda, clique em App registrations.

  2. Clique em New registration.

  3. Aplique os seguintes valores.

    Campo
    Valor
    Name
    Cloud Manager Database - Workload
    Supported Account Types
    Accounts in this organizational directory only (single tenant)
    Redirect URI
    Web
2

É uma prática recomendada usar identificadores principais de serviço como identificadores de usuário do MongoDB ao definir direitos de acesso no Cloud Manager. Se você planeja usar essa abordagem comum, pule esta etapa. No entanto, se você preferir usar identificadores de grupo, como o identificador do Microsoft Entra ID Security Group, poderá definir a reivindicação de grupos no registro do aplicação com as etapas abaixo.

  1. Navegue até Token Configuration.

    Na seção Manage da navegação à esquerda, clique em Token Configuration.

  2. Clique em Add groups claim.

  3. 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.

  4. 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.

  5. Clique em Add.

    Para saber mais sobre como adicionar uma declaração de grupo, consulte Documentação do Azure.

3
  1. Navegue até Expose an API na barra lateral esquerda e ative o URI do ID do aplicativo.

  2. Ative um URI de ID de aplicativo.

    1. Mantenha o URI de ID de aplicativo padrão atribuído pelo Azure, que é <application_client_id>. Copie e armazene este valor, pois o Cloud Manager e todos os drivers MongoDB exigem este valor para configuração do Workload Identity Federation.

4
  1. Na seção Manage da navegação à esquerda, clique em Manifest.

  2. Atualize o accessTokenAcceptedVersion de null para 2.

    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.

  3. Clique em Save.

Para saber mais sobre como adicionar uma reivindicação opcional, consulte Documentação do Azure.

5
  1. Na navegação à esquerda, clique em Overview.

  2. 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 quais propriedades de configuração do Cloud Manager esses valores de interface do usuário do Microsoft Entra ID mapeiam.

IU do Microsoft Entra ID
propriedade de configuração do Cloud Manager
OpenID Connect metadata document (without /.well-known/openid-configuration)
Issuer URI.
Application ID URI (<Application ID>)
Audience

Você não precisa fazer nenhuma alteração de configuração em sua conta do GCP.

Observação

O Workload Identity Federation suporta apenas JSON web JSON web token token para autenticação. Não suporta tokens de acesso opacos.

Para configurar um provedor de identidade da Federação de identidade de volume de trabalho com o ID do Azure Entra no Cloud Manager:

1
  1. Selecione a organização que contém seu projeto Organizations no menu da barra de navegação.

  2. Selecione seu projeto no menu Projects na barra de navegação.

  3. Clique em Deployment na barra lateral.

  4. Clique na aba Security.

  5. Clique na aba Settings.

  6. 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.

2
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 .pem que contém a cadeia de certificados raiz da autoridade de certificação. O MongoDB Agent usa esse mesmo arquivo de autoridade de certificação para se conectar a cada item em seu sistema.

A chave privada criptografada para o .pem arquivo de certificado deve estar em PKCS #1 formato. O MongoDB Agent não é compatível com o PKCS #8 formato.

Digite o caminho do arquivo da autoridade de certificação TLS em cada host que estiver executando um processo do MongoDB:

  • Digite o caminho do arquivo em todos os hosts Linux na primeira caixa.

  • Digite o caminho do arquivo em todos os hosts do Windows na segunda caixa.

Isto habilita a configuração do net.tls.CAFile para os processos do MongoDB no projeto.

Clique em Validate para testar se cada host no seu sistema tem uma Autoridade de Certificado TLS nos caminhos especificados.

Caminho do arquivo TLS CA do cluster

O arquivo .pem que contém a sequência de certificados raiz da autoridade de certificação usada para validar o certificado apresentado por um cliente que estabelece uma conexão. Especifique o nome do arquivo .pem usando caminhos relativos ou absolutos. net.tls.clusterCAFile requer que net.tls.CAFile esteja definido.

Se você não especificar net.tls.clusterCAFile, o cluster usará o arquivo .pem especificado na opção net.tls.CAFile .

net.tls.clusterCAFile permite que você use Autoridades de Certificação separadas para verificar as partes cliente-para-servidor e servidor-para-cliente do handshake TLS.

Modo de certificado de cliente

Selecione se os aplicativos do cliente ou os MongoDB Agents devem apresentar um certificado TLS ao se conectar asistemas MongoDB habilitadas para TLS. Cada sistema do MongoDB verifica se há certificados desses hosts cliente 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:

Opcional
Cada cliente pode apresentar um certificado TLS válido ao conectar a MongoDB deployments. Os MongoDB Agents podem usar certificados TLS se você não definir mongod tlsMode como None.
Obrigatório
Todo sistema do MongoDB neste projeto começa com conexões de rede criptografadas por TLS. Todos os agentes devem usar o TLS para se conectar a qualquer sistema do MongoDB.
3

Na seção MongoDB Deployment Authentication Mechanism, selecione Federated Auth (OIDC).

4
  1. Na seção OIDC Connection and Authorization (Required for OIDC), clique em + OIDC IdP Configuration.

  2. Na caixa de diálogo OIDC Protocol Settings, selecione Workload Identity Federation.

5
Contexto
necessidade
Valor
Configuration Name
Obrigatório

Etiqueta exclusiva que identifica esta configuração. Este rótulo é visível para seus usuários do Cloud Manager e é usado ao criar usuários e roles para autorização. Ela diferencia maiúsculas de minúsculas e só pode conter os seguintes caracteres:

  • caracteres alfanuméricos (combinação de a a z e 0 a 9)

  • hifens (-)

  • sublinhados (_)

Depois de salvar a configuração, você não poderá editar o nome da configuração.

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.
Audience
Obrigatório
Entidade para a qual seu provedor de identidade externo pretende o token. Insira o audience valor do aplicativo que você registrou com o provedor de identidade externo.
Tipo de autorização
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.

É mais comum utilizar o User ID para acesso ao aplicação .

Customize User Claim
Obrigatório

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: sub

Customize Group Claim
Obrigatório

Necessário se você selecionar Group Membership como o tipo de autorização . O 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.

Padrão: groups

6

O Cloud Manager salva a configuração e a lista na seção OIDC Connection and Authorization (Required for OIDC).

7
8
9

Caso contrário, clique em Cancel e você poderá fazer alterações adicionais.

Para configurar um provedor de identidade da federação de identidade de carga de trabalho com GCP no Cloud Manager:

1
  1. Selecione a organização que contém seu projeto Organizations no menu da barra de navegação.

  2. Selecione seu projeto no menu Projects na barra de navegação.

  3. Clique em Deployment na barra lateral.

  4. Clique na aba Security.

  5. Clique na aba Settings.

  6. 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.

2
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 .pem que contém a cadeia de certificados raiz da autoridade de certificação. O MongoDB Agent usa esse mesmo arquivo de autoridade de certificação para se conectar a cada item em seu sistema.

A chave privada criptografada para o .pem arquivo de certificado deve estar em PKCS #1 formato. O MongoDB Agent não é compatível com o PKCS #8 formato.

Digite o caminho do arquivo da autoridade de certificação TLS em cada host que estiver executando um processo do MongoDB:

  • Digite o caminho do arquivo em todos os hosts Linux na primeira caixa.

  • Digite o caminho do arquivo em todos os hosts do Windows na segunda caixa.

Isto habilita a configuração do net.tls.CAFile para os processos do MongoDB no projeto.

Clique em Validate para testar se cada host no seu sistema tem uma Autoridade de Certificado TLS nos caminhos especificados.

Caminho do arquivo TLS CA do cluster

O arquivo .pem que contém a sequência de certificados raiz da autoridade de certificação usada para validar o certificado apresentado por um cliente que estabelece uma conexão. Especifique o nome do arquivo .pem usando caminhos relativos ou absolutos. net.tls.clusterCAFile requer que net.tls.CAFile esteja definido.

Se você não especificar net.tls.clusterCAFile, o cluster usará o arquivo .pem especificado na opção net.tls.CAFile .

net.tls.clusterCAFile permite que você use Autoridades de Certificação separadas para verificar as partes cliente-para-servidor e servidor-para-cliente do handshake TLS.

Modo de certificado de cliente

Selecione se os aplicativos do cliente ou os MongoDB Agents devem apresentar um certificado TLS ao se conectar asistemas MongoDB habilitadas para TLS. Cada sistema do MongoDB verifica se há certificados desses hosts cliente 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:

Opcional
Cada cliente pode apresentar um certificado TLS válido ao conectar a MongoDB deployments. Os MongoDB Agents podem usar certificados TLS se você não definir mongod tlsMode como None.
Obrigatório
Todo sistema do MongoDB neste projeto começa com conexões de rede criptografadas por TLS. Todos os agentes devem usar o TLS para se conectar a qualquer sistema do MongoDB.
3

Na seção MongoDB Deployment Authentication Mechanism, selecione Federated Auth (OIDC).

4
  1. Na seção OIDC Connection and Authorization (Required for OIDC), clique em + OIDC IdP Configuration.

  2. Na caixa de diálogo OIDC Protocol Settings, selecione Workload Identity Federation.

5
Contexto
necessidade
Valor
Configuration Name
Obrigatório

Etiqueta exclusiva que identifica esta configuração. Este rótulo é visível para seus usuários do Cloud Manager e é usado ao criar usuários e roles para autorização. Ela diferencia maiúsculas de minúsculas e só pode conter os seguintes caracteres:

  • caracteres alfanuméricos (combinação de a a z e 0 a 9)

  • hifens (-)

  • sublinhados (_)

Depois de salvar a configuração, você não poderá editar o nome da configuração.

Issuer URI
Obrigatório
Insira o URI https://accounts.google.com.
Audience
Obrigatório
Especifique qualquer valor personalizado. O público é usado ao chamar drivers do MongoDB .
Tipo de autorização
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.

É mais comum utilizar o User ID para acesso ao aplicação .

Customize User Claim
Obrigatório

Não modifique o valor padrão, sub.

Padrão: sub

6

O Cloud Manager salva a configuração e a lista na seção OIDC Connection and Authorization (Required for OIDC).

7
8
9

Caso contrário, clique em Cancel e você poderá fazer alterações adicionais.

O MongoDB não cria explicitamente usuários do banco de dados de dados para OIDC . Ele mapeia os usuários do OIDC para as funções do MongoDB com base na configuração.

Selecione uma aba dependendo do tipo de autorização que você selecionou ao configurar a autenticação do OIDC.

Se você selecionou o tipo de autorização User ID, crie um novo usuário para conceder uma autorização de usuário individual :

1
  1. Selecione a organização que contém seu projeto Organizations no menu da barra de navegação.

  2. Selecione seu projeto no menu Projects na barra de navegação.

  3. Clique em Deployment na barra lateral.

  4. Clique na aba Security.

  5. Clique na aba MongoDB Users.

2
3

Observação

Antes de adicionar usuários, certifique-se de ter criado todas as funções que deseja atribuir aos usuários.

  1. Preencha os campos da conta de usuário:

    Campo
    Descrição
    Identifier
    • No primeiro campo, insira o banco de banco de dados $external .

    • No segundo campo, insira um nome de usuário usando seu nome de configuração OIDC IdP e a reivindicação principal de usuário de sua configuração, separados por uma barra /:

      {configuration_name}/{user_principal_claim}
    Roles
    Insira quaisquer roles definidas pelo usuário disponíveis e roles incorporadas nesta caixa. A caixa de combinação fornece uma lista de funções existentes quando você clica nela.
    Authentication Restrictions
    1. Clique em Add Entry.

    2. Adicione um ou mais endereços IP e/ou blocos CIDR nas caixas Client Source Server Address ou. Separe vários endereços ou blocos com vírgulas.

      • Client Source restringe quais endereços esse usuário pode autenticar e usar as roles fornecidas.

      • Server Address restringe os endereços que esse usuário pode autenticar e tem os roles fornecidos.

    3. Clique em Save.

    4. Para adicionar outra entrada, clique em Add Entry.

  2. Clique em Add User.

4
5

Caso contrário, clique em Cancel e você poderá fazer alterações adicionais.

Se você selecionou o Group Membership tipo de autorização, complete as etapas a seguir para criar uma função personalizada que conceda autorização com base na associação ao grupo de usuários do IdP:

1
  1. Selecione a organização que contém seu projeto Organizations no menu da barra de navegação.

  2. Selecione seu projeto no menu Projects na barra de navegação.

  3. Clique em Deployment na barra lateral.

  4. Clique na aba Security.

  5. Clique na aba MongoDB Roles.

2
3
  1. Insira os seguintes campos:

    Campo
    necessidade
    Descrição
    Identifier
    Obrigatório

    Na caixa Database , digite admin.

    Na Name caixa, insira o nome da configuração do OIDC IdP e o nome do grupo do provedor de identidade externo, separados por uma / barra:

    {configuration_name}/{group_name}
    Inherits From
    Opcional
    Uma lista de pares de nomes de roles e reconhecimento de data center. O formato para esses pares é roleName@dbName.
    Authentication Restrictions
    Opcional
    Uma lista de endereços IP ou notações CIDR que você deseja restringir do seu IdP.
    Privilege Actions by Resource
    Opcional

    ação permitidas no recurso.

    Para saber mais, consulte Ações de privilégio.

  2. Clique em Add Role.

Use os seguintes drivers do MongoDB para conectar um aplicação ao MongoDB com autenticação do Workload Identity Federation:

Para gerenciar sua configuração do Workload Identity Federation, você pode executar as seguintes ações.

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:

1
  1. Se ainda não estiver exibido, selecione a organização que contém o projeto desejado no menu Organizations na barra de navegação.

  2. Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.

  3. Se a página Deployment ainda não estiver exibida, clique em Deployment na barra lateral.

    A página Sistema é exibida.

2

Clique na aba Security para sua implantação.

A página Segurança é exibida.

3

Clique na aba Settings.

4
  1. Role até a seção OIDC Connection and Authorization (Required for OIDC) .

  2. Clique no botão REVOKE JWKS.

    Observação

    Este botão estará ocioso se não houver nenhum IdP configurado.

  3. Na caixa de diálogo Revoke JWKS tokens? , clique em Revoke.

Para editar sua configuração de Federação de Identidade do Workload:

1
  1. Se ainda não estiver exibido, selecione a organização que contém o projeto desejado no menu Organizations na barra de navegação.

  2. Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.

  3. Se a página Deployment ainda não estiver exibida, clique em Deployment na barra lateral.

    A página Sistema é exibida.

2

Clique na aba Security para sua implantação.

A página Segurança é exibida.

3
  1. Role até a seção OIDC Connection and Authorization (Required for OIDC) .

  2. Para a configuração que você deseja editar, clique no botão EDIT.

  3. Faça alterações na configuração.

4
5
6
7

Caso contrário, clique em Cancel e você poderá fazer alterações adicionais.

Para excluir sua configuração do Workload Identity Federation:

1
  1. Se ainda não estiver exibido, selecione a organização que contém o projeto desejado no menu Organizations na barra de navegação.

  2. Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.

  3. Se a página Deployment ainda não estiver exibida, clique em Deployment na barra lateral.

    A página Sistema é exibida.

2

Clique na aba Security para sua implantação.

A página Segurança é exibida.

3
  1. Role até a seção OIDC Connection and Authorization (Required for OIDC) .

  2. Para a configuração que você deseja excluir, clique no botão REMOVE.

  3. Na caixa de diálogo Removing OIDC IdP configuration? , clique em Remove.

Voltar

Força de trabalho (Humanos)