O Atlas App Connections é a plataforma MongoDB Atlas OAuth 2.1 que permite que os aplicativos ajam em nome dos usuários do Atlas por meio do acesso delegado pelo usuário. Quando um usuário autoriza um aplicativo, o aplicativo recebe tokens que pode usar para chamar a API de administração do Atlas com as mesmas permissões que o usuário tem em suas organizações do Atlas .
Os aplicativos podem incluir:
Clientes de IA, que se conectam ao Atlas por meio do Servidor MongoDB MCP
Aplicativos de parceiros
Aplicativos do MongoDB
Esta página explica os conceitos subjacentes ao acesso delegado do usuário por meio do Atlas App Connections. Para obter informações específicas sobre como usar clientes de IA para interagir com seus dados do MongoDB , consulte a documentação do servidor MCP do MongoDB vinculada ao longo desta página.
Como funciona o acesso delegado
Quando um usuário autoriza um aplicativo, o aplicativo age em nome desse usuário, não como uma entidade separada. O aplicativo recebe tokens que permitem que ele chame a API de administração do Atlas com as mesmas permissões que o usuário tem em suas organizações e projetos do Atlas . Se o usuário não puder executar uma ação, o aplicativo também não poderá executá-la em seu nome. O aplicativo nunca recebe a senha do usuário ou credenciais de longa duração.
Para clientes de IA especificamente, o acesso efetivo é o mais restritivo de dois fatores: o usuário que autoriza as permissões Atlas existentes do usuário e o modo de acesso somente leitura ou leitura e gravação que um proprietário da organização configura para a organização. O modo de acesso pode reduzir o que um cliente de IA pode fazer, mas nunca concede mais acesso do que as permissões do próprio usuário permitem.
Como o acesso é herdado das permissões do próprio usuário:
As permissões efetivas do aplicativo mudam automaticamente quando as funções do usuário mudam.
As operações em relação a uma organização são bem-sucedidas somente quando essa organização permite conexões de cliente de IA e o usuário que autoriza tem a função necessária para a operação.
Os usuários sempre delegam todo o seu acesso quando autorizam um cliente, que pode ser mais do que o cliente precisa para uma determinada tarefa. Para limitar delegações à sua organização, os proprietários da organização podem realizar as seguintes ações:
O Atlas desabilita o acesso de cliente de IA por padrão para organizações existentes e para novas organizações que um usuário existente do Atlas cria.
Os proprietários da organização podem habilitar o acesso do cliente IA apenas para as organizações que precisam dele.
Os proprietários da organização podem especificar um modo de acesso somente leitura ou leitura e gravação para clientes de IA.
Para saber mais, consulte Modelos de acesso MCP para MongoDB Atlas.
Autorização e Consentimento
Os aplicativos obtêm acesso delegado por meio do fluxo de código de autorização OAuth 2.1 com Proof Key for Code Change (PKCE). O fluxo do PKCE é o seguinte:
O usuário inicia a conexão a partir do aplicativo, não do Atlas.
As etapas exatas para iniciar uma conexão variam de acordo com a aplicação. Para clientes de IA, consulte a documentação do servidor MongoDB MCP para obter orientações de configuração específicas do cliente.
O aplicativo controla como direciona o usuário para a página de autorização , como por meio de uma nova janela do navegador, um pop-up ou um redirecionamento dentro da janela existente.
O Atlas solicita que o usuário faça login, se ainda não o fez.
Um usuário que ainda não tenha uma conta Atlas e crie uma durante essa etapa deve reiniciar a conexão a partir do aplicativo. O Atlas não redireciona automaticamente um usuário recém-registrado de volta para o aplicativo.
O Atlas mostra uma tela de autorização listando as permissões que estão sendo solicitadas.
O usuário seleciona Autorizar para conceder acesso ou Rejeitar para cancelar.
O Atlas redireciona o usuário de volta para o aplicativo.
A conexão agora está ativa.
Para saber mais,consulte Segurança, Administração e Auditoria.
Administração em nível de organização
O Atlas desativa as conexões de cliente de IA por padrão para organizações existentes e para novas organizações que os usuários existentes do Atlas criam. O proprietário da organização deve habilitar explicitamente o acesso do cliente de IA antes que um cliente de IA possa usar o acesso delegado nessa organização. O Atlas permite o acesso do cliente de IA por padrão para uma organização que um novo usuário cria durante a inscrição, quando o usuário não tem uma conta Atlas existente.
Os proprietários da organização podem:
Habilite ou desabilite o acesso do cliente IA para a organização.
Escolha um modo de acesso somente leitura ou leitura e gravação.
Defina a vida útil máxima do token para conexões autorizadas.
O modo de acesso que você configura e as permissões do Atlas do próprio usuário que autorizam determinar o que um cliente de IA pode fazer. O acesso efetivo de um cliente de IA é sempre o mais restritivo dos dois.
Para obter as etapas de instalação e configuração,consulte Gerenciar acesso de cliente IA à sua organização.
Revogação de acesso e sincronização
Quando um usuário autoriza o acesso delegado a uma aplicação, a aplicação recebe um token de acesso e um token de atualização. O aplicativo apresenta seu token de acesso com cada chamada de API de Administração do Atlas . Quando o token de acesso expira, o aplicativo usa seu token de atualização para obter um novo token de acesso sem exigir que o usuário entre novamente.
O tempo que leva para que a revogação de acesso de um cliente de IA entre em vigor difere dependendo de quem revoga o acesso:
Um proprietário da organização desabilita o acesso do cliente de IA para a organização: o acesso ao plano de controle é revogado imediatamente para cada cliente de IA conectado à organização.
Um usuário revoga o acesso de um cliente individual de IA: as alterações podem levar até 10 minutos para entrar em vigor.
Aviso
Desprovisionar usuários federados imediatamente
Quando sua organização usa o Mapeamento de Funções para gerenciar o acesso de usuários do Atlas por meio de grupos de Provedores de Identidade, as permissões de um usuário federado no Atlas só são atualizadas quando esse usuário faz login. Isso é conhecido como Provisionamento JIT (JIT). Se a sua organização não desprovisionar um usuário por meio da API de Administração do Atlas quando esse usuário perder o acesso, um cliente de IA que contenha um token de atualização para esse usuário poderá continuar a agir em seu nome.
Para limitar esse risco:
Desprovisione usuários por meio da API de administração do Atlas assim que eles perderem o acesso.
Defina o tempo de vida máximo do token de atualização para sua organização para reduzir o tempo que um cliente pode manter o acesso depois que um usuário é desprovisionado.
Para saber mais,consulte Vida útil do acesso do cliente IA.
Limitações
Ao planejar sua integração, considere o seguinte escopo e limites do Atlas App Connections:
Os proprietários da organização não podem revogar o acesso individual concedido de um usuário a um cliente. Para remover o acesso delegado por qualquer usuário em uma organização, desabilite o acesso de cliente IA para toda a organização. Habilitar o acesso de cliente de IA para uma organização habilita todos os clientes de IA atuais e futuros que oferecem suporte ao acesso delegado.
As listas de acesso IP da API de administração do Atlas não se aplicam ao tráfego de acesso delegado. As chamadas de acesso delegado de um cliente de IA não podem ser bloqueadas com base no endereço IP do qual o cliente de IA se conecta.
A revogação não remove artefatos de segurança que o cliente criou durante seu acesso autorizado. Esses artefatos permanecem válidos independentemente dos tokens revogados do cliente:
As contas de serviço e as chaves de API são artefatos do plano de controle. Audite-os e, em seguida, remova-os ou gire-os para encerrar o acesso ao plano de controle do cliente. Para saber mais, consulte Rotacionar segredos de conta de serviço.
Os usuários do banco de dados são artefatos do plano de dados. Revise-as junto com as outras identidades de banco de dados em seu projeto. Para saber mais, consulte Configurar usuários do banco de dados.