Configurar MongoDB com Federação de Identidade da Força de Trabalho
Nesta página
Configure o MongoDB com o Workforce Identity Federation para autenticar usuários em diferentes plataformas usando um único conjunto de credenciais. Isso aumenta a segurança e simplifica o gerenciamento de usuários.
Antes de começar
Verifique se você está no MongoDB Enterprise.
Para verificar se você está usando o MongoDB Enterprise, passe a
--version
opção de linha de comando paramongod
oumongos
:mongod --version Na saída deste comando, procure a string
modules: subscription
oumodules: enterprise
para confirmar que você está usando os binários MongoDB Enterprise.Configure seu provedor de identidade externo. Para obter mais detalhes, consulte Configurar um provedor de identidade externo.
Passos
Configurar o servidor MongoDB com OpenID Connect (OIDC)
Para configurar o MongoDB Server, habilite o mecanismo de autenticação MONGODB-OIDC e use oidcIdentityProviders
para especificar as configurações do provedor de identidade (IDP).
Observação
Ao configurar MongoDB para Workforce Identity Federation, configure o supportsHumanFlows
campo em oidcIdentityProviders
para true
.
Você pode configurar o servidor MongoDB utilizando seu arquivo de configuração ou linha de comando.
Para usar seu arquivo de configuração, especifique dois parâmetros no arquivo:
setParameter: authenticationMechanisms: MONGODB-OIDC oidcIdentityProviders: [ { "issuer": "https://okta-test.okta.com", "audience": "example@kernel.mongodb.com", "authNamePrefix": "okta-issuer", "matchPattern": "@mongodb.com$", "JWKSPollSecs": 86400 } ]
Para usar a linha de comando, especifique o seguinte:
mongod --auth --setParameter authenticationMechanisms=MONGODB-OIDC --setParameter \ 'oidcIdentityProviders=[ { "issuer": "https://okta-test.okta.com", "audience": "example@kernel.mongodb.com", "authNamePrefix": "okta-issuer", "matchPattern": "@mongodb.com$", "JWKSPollSecs": 86400 } ]'
(Opcional) Habilitar autorização interna
Para habilitar a autorização interna , configure o campo useAuthorizationClaim
do parâmetro oidcIdentityProviders
para false
. Essa configuração permite um gerenciamento de usuários mais flexível, dependendo dos documentos do usuário em vez de em declarações de autorização do provedor de identidade.
setParameter: authenticationMechanisms: MONGODB-OIDC oidcIdentityProviders: [ { "issuer": "https://okta-test.okta.com", "audience": "example@kernel.mongodb.com", "authNamePrefix": "okta-issuer", "matchPattern": "@mongodb.com$", "useAuthorizationClaim": "false", "JWKSPollSecs": 86400 } ]
mongod --auth --setParameter authenticationMechanisms=MONGODB-OIDC --setParameter \ 'oidcIdentityProviders=[ { "issuer": "https://okta-test.okta.com", "audience": "example@kernel.mongodb.com", "authNamePrefix": "okta-issuer", "matchPattern": "@mongodb.com$", "useAuthorizationClaim": "false", "JWKSPollSecs": 86400 } ]'
Quando você define useAuthorizationClaim
como false
, os usuários que se autenticam com o mecanismo MONGODB-OIDC
obtêm seus direitos de autorização de um documento de usuário no $external
. O servidor pesquisa um documento de usuário com um _id
correspondente ao valor da declaração authNamePrefix/principalName
para cada tentativa de autenticação baseada em OIDC para um usuário do seu provedor de identidade.
Importante
Se este campo estiver configurado para false
, não inclua o authorizationClaim
campo .