Menu Docs
Página inicial do Docs
/
MongoDB Atlas
/ /

Configurar papéis personalizados do banco de dados

Nesta página

  • Considerações
  • Acesso necessário
  • Adicionar funções personalizadas
  • Visualizar funções personalizadas
  • Modificar funções personalizadas
  • Excluir funções personalizadas
  • Atribuir funções personalizadas

Você pode criar funções personalizadas no Atlas quando as funções internas não incluírem o conjunto de privilégios desejado. O Atlas aplica as funções personalizadas de cada usuário do banco de dados junto com:

  • Qualquer role integrada que você atribuir ao adicionar um usuário do banco de dados ou modificar um usuário do banco de dados.

  • Quaisquer privilégios específicos que você atribuir ao adicionar um usuário do banco de dados ou modificar um usuário do banco de dados.

Você pode atribuir múltiplos roles personalizados para cada usuário do banco de dados.

Observação

Limitação de cluster gratuito, cluster compartilhado e instância sem servidor

Alterações em funções personalizadas podem levar até 30 segundos para serem implantados em M0 clusters gratuitos, M2/M5 clusters compartilhados e instâncias sem servidor.

As ações de privilégio disponíveis para funções personalizadas e a API de funções personalizadas representam um subconjunto das ações de privilégio disponíveis para funções integradas.

Para revisar a lista de privilégios de papel personalizados, consulte a referência API.

Importante

Você deve usar o Atlas CLI, API de Administração do Atlas, IU do Atlas ou uma integração compatível para adicionar, modificar ou excluir funções de banco de dados de dados nos clusters do Atlas . Caso contrário, o Atlas reverte todas as modificações de função.

  • Você pode atribuir até 20 funções personalizadas para um único usuário do banco de dados e pode criar até 100 funções personalizadas por projeto. Se você exigir mais funções personalizadas por usuário do banco de dados ou por projeto, entre em contato com o suporte do Atlas.

  • O Atlas audita a criação, a exclusão e as atualizações de funções personalizadas do MongoDB no lista de atividadesdo projeto.

  • Se você atribuir vários roles a um usuário e essas funções concederem permissões conflitantes para um objeto, o Atlas honrará as permissões mais altas em qualquer role.

    Exemplo

    Você cria duas funções personalizadas e atribui ambas ao usuário A:

    • A primeira função personalizada concede apenas privilégios de read em seu banco de dados. Ela também concede bypassDocumentValidation em seu banco de dados.

    • A segunda função concede privilégios do dbAdmin no seu banco de dados. Ela não concede bypassDocumentValidation, que é uma negação implícita de permissões de bypass.

    O usuário A teria todos os privilégios dbAdmin para seu banco de dados, já que dbAdmin é a permissão de acesso ao banco de dados mais alta. O usuário A também teria bypassDocumentValidation, já que bypassDocumentValidation é a permissão de bypass mais alta.

Para configurar roles de banco de dados personalizados, você deve ter acesso do Organization Owner ou Project Owner ao Atlas.

Para criar um papel de banco de dados personalizado para seu projeto utilizando o Atlas CLI, execute o seguinte comando:

atlas customDbRoles create <roleName> [options]

Para saber mais sobre a sintaxe e os parâmetros do comando, consulte a documentação do Atlas CLI para criar Atlas customDbRoles.

Dica

Veja: links relacionados

Para criar funções personalizadas através da API de Administração do Atlas, consulte Criar uma.

Siga estas etapas para criar uma função personalizada por meio da interface do usuário do Atlas:

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 Access sob o título Security.

    A página Acesso ao banco de dados é exibida.

2
  1. Clique na aba Custom Roles.

  2. Clique em Add New Custom Role.

3
Campo
Descrição

Custom Role Name

Nome da sua função personalizada.

IMPORTANTE: o nome da função especificado só pode conter letras, números, sublinhados ou hífens. Além disso, você não pode especificar um nome de função que apresente qualquer um dos seguintes aspectos:

  • É um nome já usado por uma função personalizada existente no projeto

  • É um nome de qualquer um dos roles integrados

  • é atlasAdmin

  • Começa com xgen-

Action or Role

Privilégios concedidos pela função. Clique no menu suspenso para exibir a lista de ações e funções.de privilégio disponíveis.

O Atlas agrupa as ações e funções nas seguintes categorias:

  • Collection Actions,

  • Database Actions and Roles,

  • Global Actions and Roles,

  • Custom Roles (caso exista)

Selecione a ação ou função em uma única categoria. Depois de selecionar uma ação ou função, o Atlas desabilita as outras categorias com a seguinte exceção. Se você selecionar uma ação/função no Global Actions and Roles, ainda poderá selecionar ações/funções Custom Roles.

Para atribuir ações e funções de uma categoria diferente, clique em Add an action or role para adicionar uma nova linha.

O Atlas desabilita ações não disponíveis para qualquer versão de cluster em seu projeto. As funções personalizadas são definidas no nível do projeto e devem ser compatíveis com todas as versões do MongoDB utilizadas pelos clusters do seu projeto.

Database

Banco de dados no qual são concedidas as ações e funções selecionadas, se aplicável.

Este campo é obrigatório para todas as funções e ações nas categorias Collection Actions e Database Actions and Roles.

Collection

Coleção dentro do banco de dados especificado no qual as ações e funções são concedidas, se aplicável.

Este campo é obrigatório para todas as funções e ações em Collection Actions.

Para conceder o mesmo conjunto de privilégios em vários bancos de dados e coleções, clique em Add a database or collection.

4

Para listar todo s os papéis de banco de dados personalizados para seu projeto utilizando o Atlas CLI, execute o seguinte comando:

atlas customDbRoles list [options]

Para retornar os detalhes de uma única função de banco de dados personalizado no projeto que você especifica utilizando o Atlas CLI, execute o seguinte comando:

atlas customDbRoles describe <roleName> [options]

Para saber mais sobre a sintaxe e os parâmetros dos comandos anteriores, consulte a documentação do Atlas CLI para ver a lista de customDbRoles do Atlas e descrição de customDbRoles do Atlas.

Dica

Veja: links relacionados

Para visualizar funções personalizadas através da API de Administração do Atlas, consulte Obter todas.

Para visualizar suas funções personalizadas por meio da IU do Atlas:

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 Access sob o título Security.

    A página Acesso ao banco de dados é exibida.

2

Para atualizar um role de banco de dados personalizado para seu projeto utilizando a Atlas CLI, execute o seguinte comando:

atlas customDbRoles update <roleName> [options]

Para saber mais sobre a sintaxe e os parâmetros do comando, consulte a documentação do Atlas CLI para atlas customDbRoles update.

Dica

Veja: links relacionados

Para modificar funções personalizadas através da API de Administração do Atlas, consulte Atualizar uma.

Siga estas etapas para alterar uma função personalizada por meio da IU do Atlas:

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 Access sob o título Security.

    A página Acesso ao banco de dados é exibida.

2
  1. Clique na aba Custom Roles.

  2. Clique em Edit ao lado da função que você deseja modificar. Você pode modificar os seguintes componentes da função:

    • As ações ou funções que a função personalizada herda.

    • Os bancos de dados e coleções aos quais esses privilégios se aplicam.

  3. Clique em Update Custom Role para salvar as alterações.

Para excluir um role de banco de dados personalizado do seu projeto utilizando o Atlas CLI, execute o seguinte comando:

atlas customDbRoles delete <roleName> [options]

Para saber mais sobre a sintaxe do comando e parâmetros, consulte a documentação do Atlas CLI para atlas customDbRoles delete.

Dica

Veja: links relacionados

Para excluir funções personalizadas através da API de Administração do Atlas, consulte Remover uma.

Siga estas etapas para excluir uma função personalizada por meio da interface do usuário do Atlas:

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 Access sob o título Security.

    A página Acesso ao banco de dados é exibida.

2
  1. Clique na aba Custom Roles.

  2. Clique Delete ao lado da função que você deseja excluir.

  3. Clique em Delete na caixa de diálogo para confirmar a exclusão.

Você não pode excluir um roles personalizado nos seguintes cenários:

  • Quando excluir o role puder deixar uma ou mais funções filhas sem funções ou ações pai.

  • Quando excluir o role puder deixar um ou mais usuários do banco de dados sem roles.

Você pode atribuir funções personalizadas na interface do usuário do Atlas ao adicionar um usuário de banco de dados ou modificar um usuário de banco de dados. Para atribuir funções personalizadas por meio da API de administração do Atlas, consulte Criar um usuário de banco de dados ou atualizar um usuário de banco de dados.

Voltar

Funções e privilégios integrados