Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Menu Docs

Configurar Federação de Identidade da Força de Trabalho a partir do Okta

Este guia mostra como configurar o Workforce Identity Federation utilizando o Okta como seu IdP.

Depois de integrar o Okta e o Atlas, sua força de trabalho pode usar as credenciais do Okta para acessar os Atlas clusters com autenticação OIDC.

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.

Para utilizar o Okta como um IdP para o Atlas, você deve ter:

  • Um nome de domínio personalizado e roteável.

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

Use sua conta do Okta para configurar o Okta como um IdP do OIDC.

Para registrar seu aplicativo OIDC com o Okta:

1

No painel do Okta Admin, use o painel de navegação esquerdo para Ir para Applications → Applications.

  1. Na tela Applications, clique em Create App Integration.

  2. Na seção Sign-in method, selecione OIDC - OpenID Connect.

  3. Na seção Application type, selecione Native Application.

  4. Clique em Next.

Para saber mais, consulte Criar integrações de aplicação OIDC.

2

Depois de criar uma integração de aplicativo, você é automaticamente redirecionado para a tela New Native App Integration.

  1. No campo App integration name, insira um nome para o seu aplicação.

  2. No campo Grant type, selecione os tipos de concessã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.

  3. Na seção Sign-in redirect URIs, insira uma URL.

    Insira a seguinte URL: http://localhost:27097/redirect.

  4. Na seção Assignments, configure os campos Controlled access e Enable immediate access.

    1. Para o campo Controlled access, selecione Allow everyone in your organization to access.

    2. Para Enable immediate access campo, certifique-se de que Enable immediate access with Federation Broker Mode esteja marcado.

  5. Clique em Save.

Para saber mais, consulte Criar integrações de aplicação OIDC.

3

No painel do aplicação , vá para a guia General e configure o seguinte:

  1. No Client ID campo, clique no ícone para copiar o ID do cliente para uso posterior.

  2. No campo Proof Key for Code Exchange (PKCE), certifique-se de que Require PKCE as additional verification esteja ativado (marcado por padrão).

4

No painel de navegação esquerdo, vá para Security → API. Clique em Add Authorization Server.

  1. No campo Name, insira um nome para o servidor.

  2. No campo Audience, cole o ID do cliente da etapa anterior.

  3. (Opcional) No Description campo, insira uma descrição do seu servidor.

  4. Clique em Save.

Para saber mais, consulte Criar um servidor de autorização.

5

Depois de criar seu servidor de autorização , você é automaticamente redirecionado para a tela do seu servidor de autorização .

Na guia Settings, salve o URI do emissor copiando a primeira parte do Metadata URI até a seção .well-known. A estrutura do URI deve ser semelhante a: https://trial4238026.okta.com/oauth2/ausabgmhveoOQSMsE697.

6

Na tela do servidor de autorização , vá para a aba Claims e clique em Add Claim.

  1. Configure a reivindicação Groups com as seguintes informações de configuração:

    Campo
    Valor

    Name

    Insira um nome para sua reivindicação.

    Include in token type

    Clique no menu suspenso e selecione Access Token.

    Value type

    Clique no menu suspenso e selecione Groups.

    Filter

    Clique no menu suspenso e selecione Matches regex. Ao lado da lista suspensa, insira uma expressão regular que corresponda apenas a grupos usados para autorização do Atlas . Por exemplo , se seus grupos de autorização do Atlas utilizarem um prefixo de nomenclatura comum, insira ^<mongodb-atlas-group-prefix>.* onde <mongodb-atlas-group-prefix> é o prefixo escolhido.

    Disable claim

    Não verifique.

    Include in

    Selecione Any scope.

  2. Clique em Create.

Importante

Evite utilizar .* como o valor do filtro. A expressão .* corresponde a todos os grupos atribuídos ao usuário, incluindo grupos não relacionados à autorização do Atlas . Um filtro amplo aumenta o tamanho do token de acesso e pode causar falhas de autenticação quando o token exceder o limite preAuthMaximumMessageSizeBytes (16 KB por padrão).

Para reduzir o tamanho do token, crie uma convenção de nomenclatura dedicada para grupos de autorização do Atlas e filtre nessa convenção.

Se a implantação exigir intencionalmente uma declaração de grupos grandes, você poderá aumentar o parâmetro preAuthMaximumMessageSizeBytes no cluster. No entanto, o aumento desse limite tem implicações de recursos e segurança e não deve ser usado como solução alternativa para uma reivindicação desnecessariamente ampla.

Para saber mais, consulte Criar declarações.

7

Na tela do servidor de autorização , vá para a aba Access Policies e clique em Add Policy.

  1. No campo Name, insira um nome de política.

  2. No campo Description, insira uma descrição para a política.

  3. No campo Assign to, selecione All clients.

  4. Clique em Create Policy.

Para saber mais, consulte Criar uma Política de Acesso.

8

Na aba Access Policies, clique em Add Rule.

  1. No campo Rule Name, insira um nome para a política de acesso.

  2. Para IF Grant Type is, selecione um tipo de concessão.

    Ao configurar tipos de concessão, selecione a opção apropriada com base no comportamento do cliente :

    • Se o cliente estiver agindo em nome próprio, selecione Client Credentials.

    • Se o cliente estiver agindo em nome de um usuário, selecione o seguinte:

      • Authorization Code

      • Device Authorization

  3. Adicione configurações de regras com base na política de segurançada sua organização.

    Exemplo de configuração da regra do Okta:

    Campo
    Valor

    AND user is

    Selecione Any user assigned to the app.

    AND Scopes requested

    Selecione Any scopes.

    THEN Use this inline hook

    Nenhum (desabilitado)

    AND Access token lifetime is

    1 Hours

    AND Refresh token lifetime is

    Clique no segundo menu suspenso e selecione Unlimited.

    but will expire if not used every

    Insira 7 days.

  4. Clique em Create Rule.

Para saber mais, consulte Criar regras para cada política de acesso.

9

No painel de navegação esquerdo, vá para Directory → Groups e clique em Add Group.

  1. No campo Name, nomeie seu diretório OIDC.

  2. (Opcional) No Description campo, insira uma descrição para sua regra.

  3. Clique em Save.

    Para saber mais,consulte Criar um grupo.

  4. Siga a documentação do Okta para atribuir pessoas manualmente ao grupo.

10

No painel de navegação esquerdo, vá para Directory → People e clique em Add Person.

  1. Forneça detalhes do usuário inserindo os seguintes valores nos campos correspondentes:

    Campo
    Valor

    User type

    Selecione User.

    First name

    Forneça o nome conforme necessário.

    Last name

    Forneça o nome conforme necessário.

    Username

    Insira um e-mail como nome de usuário.

    Primary email

    Insira um e-mail. O e-mail deve ser o mesmo usado para o campo Username.

    Secondary email

    Opcional.

    Groups

    Insira OIDC.

    Activation

    Selecione Activate Now e marque I will set password.

    Password

    Insira uma senha.

    User must change password on first login

    Selecione Optional

  2. Clique em Save.

Para saber mais, consulte Adicionar usuários manualmente.

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 Okta como provedor de identidade.

Para configurar um Fornecedor de Identidade da Força de Trabalho no Atlas:

1
  1. Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.

  2. Na barra lateral, clique em Federation sob o título Identity & Access.

  3. Clique em Open Federation Management App.

A página Federação é exibida.

2
  1. Clique em Identity Providers na barra lateral esquerda.

  2. 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).

  3. Selecione Workforce Identity Federation e clique em Continue.

  4. Selecione OIDC for Data Access.

3
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 /.well-known/openid-configuration.

Client ID

Obrigatório

Identificador único do seu aplicação registrado . Insira o clientId valor do aplicativo que você registrou com o provedor de identidade externo.

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. Geralmente, esse valor é igual ao Client ID.

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

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

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

4
5

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

  1. Em seu cartão Fornecedor de identidade da força de trabalho, clique em Associate Domains.

  2. No modal Associate Domains with Identity Provider, selecione um ou mais domínios.

  3. Clique em Submit.

6
  1. Clique em Connect Organizations.

  2. Para a organização que deseja conectar ao Provedor de Identidade da Força de Trabalho, clique em Configure Access.

  3. Clique em Connect Identity Provider.

    Observação

    Se você tiver outro IdP configurado, esse botão indicará Connect Identity Provider(s).

7

No modal Connect Identity Provider(s) , selecione um fornecedor de identidade da força de trabalho onde o Purpose é Workforce Identity Federation.

8

Quando você conecta seu fornecedor de identidade da força de trabalho a uma organização, o Atlas habilita seu fornecedor de identidade da força de trabalho para todos os projetos dessa organização.

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

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

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

2

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.

3

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.

4

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.

5

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.

6

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:

  1. Alterne Restrict Access to Specific Clusters/Federated Database Instances para On.

  2. Selecione os clusters e as instâncias de banco de dados federados aos quais conceder acesso ao grupo na lista Grant Access To.

7

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.

8

Execute uma das seguintes etapas:

  • Se você adicionou um usuário, clique no botão Add User .

  • Se você adicionou um grupo, clique no botão Add Group .

A seguir, listamos maneiras de conectar um cliente ao MongoDB com a autenticação do Workforce Identity Federation:

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