Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Gerenciar funções personalizadas

Este guia é destinado a usuários com a Função Admin no ClickHouse Cloud.

Os clientes do ClickHouse Cloud podem selecionar funções de sistema predefinidas ou criar funções personalizadas para atribuir aos usuários. Para mais informações sobre as funções de sistema e as permissões associadas, consulte Console roles and permissions. Este guia fornece detalhes sobre como gerenciar funções personalizadas.

Criar funções personalizadas

As funções personalizadas podem incluir uma combinação de permissões de organização, serviço e banco de dados. As permissões podem ser aplicadas a todos os serviços e bancos de dados ou a um subconjunto deles.

Acesse as configurações da organização e selecione `Users and roles`

Na página de serviços, selecione o nome da sua organização. No menu pop-up, selecione o item de menu Users and roles.

[object Object]

Selecione a aba Roles na parte superior central da tela.

[object Object]

Selecione o botão Create new role no canto superior direito da tela.

Dê um nome à função

Digite um nome descritivo para a função. Esse será o nome exibido ao atribuir funções a usuários e chaves de API.

[object Object]

Clique no botão Allow e selecione permissões de organização, serviço e/ou banco de dados. Para ver a descrição de todas as permissões, consulte Console roles and permissions.

Revise sua nova função

Revise as permissões atribuídas à sua nova função antes de concluir. Clique em Create role quando terminar.

Gerenciar funções de banco de dados (beta)

Recurso beta

Além das permissões do console, as funções personalizadas podem incluir permissões de dados que controlam o acesso aos bancos de dados dos serviços selecionados. Isso permite gerenciar o acesso ao console e aos bancos de dados em um só lugar, em vez de manter funções separadas em cada banco de dados.

Quando você adiciona permissões de dados a uma função personalizada, o ClickHouse Cloud cria uma função correspondente em cada serviço selecionado, com o prefixo cloud:. Por exemplo, uma função personalizada chamada readonly aparece no banco de dados como cloud:readonly. Os membros da função personalizada recebem essas permissões de banco de dados ao se conectarem ao serviço por meio da autenticação sem senha do SQL Console.

Pré-requisitos

As funções de banco de dados personalizadas em um serviço dependem da autenticação JWT e não são aplicadas enquanto ela estiver desabilitada. Antes de adicionar permissões de dados a uma função, navegue até o serviço, abra Settings e localize o cartão JWT authentication na seção Security. Certifique-se de que o controle SQL Console esteja habilitado.

Cartão de autenticação JWT com o controle SQL Console habilitado

Adicionar permissões de dados a uma função

Crie uma função personalizada ou edite uma existente. Na caixa de diálogo da função, clique no botão Allow permissions e selecione Data.

Selecionar o serviço

Selecione o serviço ao qual as permissões se aplicam. Adicione outros serviços para aplicar as mesmas permissões Read-only ou Admin a vários serviços.

Escolher o nível de acesso

Selecione o acesso Read-only, Admin ou Custom. Com o acesso Custom, defina permissões específicas de acesso a dados usando instruções GRANT do ClickHouse. O acesso Custom só pode ser selecionado quando as permissões se aplicarem a um único serviço; para definir permissões personalizadas para vários serviços, adicione uma permissão Data separada para cada serviço.

Caixa de diálogo de criação de nova função com permissões de dados definidas por instruções GRANT personalizadas

Criar a função

Clique em Create role. As funções de banco de dados são criadas nos serviços selecionados. As funções podem levar até 10 minutos para serem propagadas para um serviço, mas os usuários aos quais a função foi atribuída recebem suas permissões imediatamente ao consultar o serviço.

Verificar funções de banco de dados

As funções gerenciadas pelo console são criadas no banco de dados com o prefixo cloud: e o tipo de armazenamento cloud, e podem levar até 10 minutos para aparecer após a criação. Para listá-las, consulte a tabela system.roles no serviço:

SELECT * FROM system.roles;
┌─name───────────┬─id───────────────────────────────────┬─storage─┐
│ cloud:readonly │ 9a4910f4-abcf-4904-466a-717c8c75ac42 │ cloud   │
└────────────────┴──────────────────────────────────────┴─────────┘

Atualizar funções personalizadas

As funções personalizadas podem ser atualizadas após serem criadas. Os usuários perderão todas as permissões removidas da função e receberão todas as permissões adicionadas.

  1. Acesse as configurações da organização e selecione Users and roles
  2. Selecione a aba Roles
  3. Selecione os três pontos ao lado da função que você quer atualizar
  4. Selecione Edit
  5. Modifique as permissões
  6. Selecione Edit role

Excluir funções personalizadas

As funções personalizadas podem ser excluídas a qualquer momento.

  1. Acesse as configurações da organização e selecione Users and roles
  2. Selecione a guia Roles
  3. Selecione os três pontos ao lado da função que você deseja excluir
  4. Revise os usuários e as chaves de API que perderão acesso quando a função for removida. Ajuste as atribuições conforme necessário.
  5. Selecione Delete role para concluir o processo
Navigation