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.1
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.2
Selecione a aba Roles
Selecione a aba
Roles na parte superior central da tela.3
Selecione Create new role no canto superior direito
Selecione o botão
Create new role no canto superior direito da tela.4
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.
5
Clique em Allow e selecione o escopo da permissão
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.Acesso à aba Data SourcesPara acessar a aba Data Sources, no momento a função exige a permissão
Manage selected services.6
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
Além das permissões do console, as funções personalizadas podem incluir uma políticaData que controla 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.
Este recurso está disponível para serviços que executam o ClickHouse versão 26.4 ou superior.
Data 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 uma políticaData 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.
1
Abrir a caixa de diálogo da função
Crie uma função personalizada ou edite uma existente.
2
Adicionar uma política de organização
Na caixa de diálogo da função, clique em
Allow, selecione Organization e habilite a permissão Access organization.3
Adicionar uma política de serviço
Clique em
Allow permissions, selecione Service, escolha os serviços aos quais a política de dados será aplicada e habilite a permissão View selected services.Os membros da função precisam de ambas as permissões para entrar no console e abrir o serviço no SQL console, onde a política de dados se aplica.4
Adicionar uma política de dados
Clique em
Allow permissions e selecione Data.5
Selecionar o serviço
Selecione o serviço ao qual a política se aplica. Adicione outros serviços para aplicar as mesmas permissões
Read-only ou Admin a vários serviços.6
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 a política se aplicar a um único serviço; para definir permissões personalizadas para vários serviços, adicione uma política Data separada para cada serviço.7
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 prefixocloud: 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:
Atualizar funções personalizadas
- Acesse as configurações da organização e selecione
Users and roles - Selecione a aba
Roles - Selecione os três pontos ao lado da função que você quer atualizar
- Selecione
Edit - Modifique as permissões
- Selecione
Edit role
Excluir funções personalizadas
- Acesse as configurações da organização e selecione
Users and roles - Selecione a guia
Roles - Selecione os três pontos ao lado da função que você deseja excluir
- 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.
- Selecione
Delete rolepara concluir o processo