Share via


Descrição geral das funções de segurança

Os principais têm acesso aos recursos através de um modelo de controlo de acesso baseado em funções, onde as respetivas funções de segurança atribuídas determinam o acesso aos recursos.

Quando um principal tenta uma operação, o sistema efetua uma verificação de autorização para garantir que o principal está associado a, pelo menos, uma função de segurança que concede permissões para efetuar a operação. A falha de uma verificação de autorização aborta a operação.

Os comandos de gestão listados neste artigo podem ser utilizados para gerir principais e respetivas funções de segurança em bases de dados, tabelas, tabelas externas, vistas materializadas e funções.

Nota

As três funções de segurança ao nível do cluster do AllDatabasesAdmin, AllDatabasesViewere AllDatabasesMonitor não podem ser configuradas com comandos de gestão de funções de segurança. Para saber como configurá-las no portal do Azure, veja Gerir permissões de cluster.

Comandos de gestão

A tabela seguinte descreve os comandos utilizados para gerir funções de segurança.

Comando Descrição
.show Listas principais com a função especificada.
.add Adiciona um ou mais principais à função.
.drop Remove um ou mais principais da função.
.set Define a função para a lista específica de principais, removendo todos os anteriores.

Funções de segurança

A tabela seguinte descreve o nível de acesso concedido a cada função e mostra uma verificação se a função pode ser atribuída dentro do tipo de objeto especificado.

Função Permissões Bases de Dados Tables Tabelas externas Vistas materializadas Funções
admins Ver, modificar e remover o objeto e os subobjetos. ✔️ ✔️ ✔️ ✔️ ✔️
users Veja o objeto e crie novos subobjetos. ✔️
viewers Veja o objeto onde RestrictedViewAccess não está ativado. ✔️
unrestrictedviewers Veja o objeto mesmo onde RestrictedViewAccess está ativado. O principal também tem de ter adminspermissões ou viewersusers . ✔️
ingestors Ingerir dados no objeto sem acesso à consulta. ✔️ ✔️
monitors Veja metadados como esquemas, operações e permissões. ✔️

Para obter uma descrição completa das funções de segurança em cada âmbito, veja Controlo de acesso baseado em funções do Kusto.

Nota

Não é possível atribuir a função viewer apenas para algumas tabelas na base de dados. Para obter diferentes abordagens sobre como conceder acesso a uma vista principal a um subconjunto de tabelas, veja Gerir o acesso à vista de tabela.

Cenários comuns

Mostrar as funções no cluster

Para ver as suas próprias funções no cluster, execute o seguinte comando:

.show cluster principal roles

Mostrar as funções num recurso

Para verificar as funções que lhe foram atribuídas num recurso específico, execute o seguinte comando na base de dados relevante ou na base de dados que contém o recurso:

// For a database:
.show database DatabaseName principal roles

// For a table:
.show table TableName principal roles

// For an external table:
.show external table ExternalTableName principal roles

// For a function:
.show function FunctionName principal roles

// For a materialized view:
.show materialized-view MaterializedViewName principal roles

Mostrar as funções de todos os principais num recurso

Para ver as funções atribuídas a todos os principais de um determinado recurso, execute o seguinte comando na base de dados relevante ou na base de dados que contém o recurso:

// For a database:
.show database DatabaseName principals

// For a table:
.show table TableName principals

// For an external table:
.show external table ExternalTableName principals

// For a function:
.show function FunctionName principals

// For a materialized view:
.show materialized-view MaterializedViewName principals

Dica

Utilize o operador where para filtrar os resultados por um principal ou função específico.

Modificar as atribuições de funções

Para obter detalhes sobre como modificar as atribuições de funções ao nível da base de dados e da tabela, veja Gerir funções de segurança de bases de dados e Gerir funções de segurança de tabelas.