Visão geral
Você pode usar o OpenID Connect (OIDC) para gerenciar a autenticação e a autorização de usuários do Ops Manager com um provedor de identidade (IdP) externo. Quando você tenta acessar o Ops Manager sem uma sessão autenticada, o Ops Manager redireciona você para o seu provedor de identidade para conectar. Depois de autenticar, você retorna ao Ops Manager.
Para autenticação de IU, o MongoDB Ops Manager usa o token de ID que seu provedor de identidade emite em vez do token de acesso.
Este tutorial descreve como:
Configure a autenticação do OIDC para o Ops Manager.
Mapear grupos OIDC para Funções de organização do Ops Manager e Funções de projeto.
Gerencie mapeamentos de função de projeto e organização com a API pública.
Considerações
Usar HTTPS para OIDC
O HTTPS é altamente recomendado para o Ops Manager em geral, e especialmente para o OIDC. Algumas integrações de provedor de identidade podem não funcionar corretamente se o Ops Manager não usar HTTPS.
Pré-requisitos
Para configurar a integração do OIDC, você deve executar as seguintes ações em seu provedor de identidade:
Crie um aplicativo cliente para o Ops Manager.
Registre o MongoDB Ops Manager como um aplicativo da web que usa um cliente confidencial com autenticação de segredo do cliente. Adicione a URL de chamada de resposta do MongoDB Ops Manager, https://<ops-manager-host>:<port>/oidc/callback, à lista de URIs de redirecionamento permitidos. Inclua o caminho /oidc/callback completo: alguns provedores de identidade, como o Okta, rejeitam a solicitação durante a validação do URI de redirecionamento se você registrar apenas a URL base do MongoDB Ops Manager.
Crie um grupo para a Global Owner função e adicione o usuário a ele.
Procedimento
Para configurar a autenticação OIDC:
Configure as configurações de conexão OIDC.
Especifique valores para os campos obrigatórios e, em seguida, defina campos opcionais conforme necessário.
A tabela a seguir mapeia os campos da IU do Ops Manager para os campos do arquivo de configuração.
campo de IU do Ops Manager | campo de arquivo de configuração | Obrigatório | Descrição |
|---|---|---|---|
Issuer URI |
| Sim | Issuer URI ou URL do documento de descoberta de metadados do OIDC. |
Client ID |
| Sim | Identificador do cliente atribuído ao Ops Manager pelo provedor de identidade. |
Client Secret |
| Sim | Segredo do cliente atribuído ao Ops Manager pelo provedor de identidade. |
Custom CA Certificate (PEM) |
| No | Certificado ou certificados de CA codificados por PEM em que confiar ao conectar-se ao provedor de identidade. Use isso quando o seu provedor de identidade usar um certificado de CA autoassinado ou privado. Você pode concatenar vários certificados. |
Enable PKCE (Proof Key for Code Exchange) |
| Sim | Habilitação de PKCE para o fluxo de código de autorização. O PKCE adiciona uma etapa de verificação que protege contra a interceptação de código de autorização. Recomendado e habilitado por padrão. Desabilite apenas se o seu provedor de identidade não oferecer suporte a PKCE para clientes confidenciais. Valor padrão: |
Requested Scopes |
| No | Lista de escopo que o Ops Manager solicita do ponto de extremidade de autorização. |
Service Provider Base URL |
| No | URL base para o provedor de serviços OIDC. Se você não definir esse valor, o MongoDB Ops Manager usará |
Global Role Owner Groups |
| Sim | Lista separada por vírgulas de grupos provedor de identidade cujos membros recebem a função Proprietário global. Os Proprietários Globais têm privilégios completos sobre esta implantação, incluindo todas as permissões administrativas. |
Global Automation Admin Groups |
| No | Lista separada por vírgulas de grupos de provedor de identidade cujos membros recebem a função de Administrador de automação global. |
Global Backup Admin Groups |
| No | Lista separada por vírgulas de grupos provedor de identidade cujos membros recebem a função de Administrador de Backup Global. |
Global Monitoring Admin Groups |
| No | Lista separada por vírgulas de grupos provedor de identidade cujos membros recebem a função de Administrador de Monitoramento Global. |
Global User Admin Groups |
| No | Lista separada por vírgulas de grupos de provedor de identidade cujos membros recebem a função de Administrador de Usuário Global. |
Global Read Only Groups |
| No | Lista separada por vírgula de grupos provedor de identidade cujos membros recebem a função Global de Somente Leitura. |
OIDC Claim for User First Name |
| No | Declaração que contém o nome do usuário. Valor padrão: |
OIDC Claim for User Last Name |
| No | Declaração que contém o sobrenome do usuário. Valor padrão: |
OIDC Claim for User Email |
| No | Reclamação que contém o endereço de e-mail do usuário. Valor padrão: |
OIDC Claim for Group Member |
| No | Reivindicação que contém a lista de grupos que o Ops Manager usa para mapear funções para projetos e organizações. Valor padrão: |
O MongoDB Ops Manager lê o nome, sobrenome e endereço de e-mail do usuário a partir das declarações no token de ID. Embora as configurações de declaração sejam opcionais, as declarações em si devem estar presentes no token de ID. O MongoDB Ops Manager rejeita o login se qualquer uma dessas declarações estiver ausente ou vazia. Alguns provedores de identidade, como o Okta, não incluem a declaração given_name no token de ID sob o escopo openid padrão. Configure seu provedor de identidade para incluir essas declarações.
Como funcionam os mapeamentos de funções
Os mapeamentos de função OIDC funcionam da mesma forma que os mapeamentos de função SAML. Você mapeia grupos de provedor de identidade para funções de Ops Manager para organizações e projetos. Quando um usuário faz login, o Ops Manager atribui funções com base na associação de grupo do usuário.
Mapeamentos de função da organização
Os mapeamentos de funções da organização associam grupos provedor de identidade a funções da organização .
Os campos de mapeamento da organização incluem:
Grupos OIDC para função de proprietário da organização
Grupos OIDC para função de criador de projeto de organização
Grupos OIDC para a função de somente leitura da organização
Grupos OIDC para função de nó da organização
Mapeamentos de função do projeto
Os mapeamentos de funções do projeto associam grupos de provedor de identidade a funções do projeto.
Os campos de mapeamento do projeto incluem:
Grupos OIDC para a função de proprietário do projeto
Grupos OIDC para função Somente leitura
Grupos OIDC para função de administrador de automação
Grupos OIDC para função de administrador de backup
Grupos OIDC para monitorar função de administrador
Grupos OIDC para função de administrador do usuário
Grupos OIDC para função de administrador de acesso aos dados
Grupos OIDC para função de leitura e gravar acesso aos dados
Grupos OIDC para função Somente leitura de acesso aos dados
Gerencie mapeamentos de função com a API pública
Você pode gerenciar mapeamentos de função do provedor de identidade programaticamente usando o campo idpGroupMappings nas seguintes APIs públicas:
Obter organizações.
Criar e atualizar organizações.
Criar e atualizar projetos.
O campo idpGroupMappings é uma array que mapeia as funções do Ops Manager para grupos de provedor de identidade.
{ "idpGroupMappings": [ { "idpGroups": [ "name_of_your_idp_group", "another_name_of_idp_group" ], "roleName": "GROUP_USER_ADMIN" } ]}Os seguintes valores são válidos para a organização roleName:
ORG_OWNERORG_GROUP_CREATORORG_BILLING_ADMINORG_READ_ONLYORG_MEMBER
Os seguintes valores são válidos para o projeto roleName:
GROUP_OWNERGROUP_READ_ONLYGROUP_AUTOMATION_ADMINGROUP_BACKUP_ADMINGROUP_MONITORING_ADMINGROUP_USER_ADMINGROUP_BILLING_ADMINGROUP_DATA_ACCESS_ADMINGROUP_DATA_ACCESS_READ_ONLYGROUP_DATA_ACCESS_READ_WRITEGROUP_CHARTS_ADMINGROUP_CLUSTER_MANAGERGROUP_SEARCH_INDEX_EDITOR
desconexão do backchannel
O Ops Manager oferece suporte ao logout do backchannel do OIDC. Quando seu provedor de identidade envia um token de desconectar, o Ops Manager invalida a sessão do usuário.
Endpoint
POST {OPSMANAGER-HOST}:{PORT}/oidc/backchannel-logout
Solicitar
Envie uma solicitação codificada em formulário com o parâmetro logout_token contendo um JWT assinado.
Requisitos
Inclua uma reivindicação válida de
sub(assunto).Você pode incluir a reivindicação
sid(ID da sessão) para invalidação de sessão direcionada.
O Ops Manager não suporta desconectar iniciado pelo provedor de serviços. Para desconectar, os usuários devem desconectar do provedor de identidade.