GRANT ROLE

Atribui uma função a um usuário ou outra função:

  • A concessão de uma função a outra cria uma relação “pai-filho” entre as funções (também referida como hierarquia de funções).

  • A concessão de uma função a um usuário permite ao usuário realizar todas as operações permitidas pela função (por meio dos privilégios de acesso concedidos à função).

Para obter mais detalhes, consulte Visão geral do controle de acesso.

Consulte também:

REVOKE ROLE

GRANT DATABASE ROLE , REVOKE DATABASE ROLE

GRANT <privilégios>

Sintaxe

GRANT ROLE <name> TO { ROLE <parent_role_name> | USER <user_name> }
Copy

Parâmetros

name

Especifica o identificador da função a ser concedida. Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.

ROLE parent_role_name

Concede a função à função especificada.

USER user_name

Concede a função ao usuário especificado.

Requisitos de controle de acesso

Uma função usada para executar este comando SQL deve ter os seguintes privilégios no mínimo:

Privilégio

Objeto

Notas

OWNERSHIP

Função

Função atribuída a um usuário ou a outra função.

Alternativamente, use uma função com o privilégio global MANAGE GRANTS. Only the SECURITYADMIN role, or a higher role, has this privilege by default. The privilege can be granted to additional roles as needed.

Observe que operar em qualquer objeto de um esquema também requer o privilégio USAGE no banco de dados e esquema principais.

Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.

Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.

Notas de uso

  • As funções definidas pelo sistema, incluindo PUBLIC, não precisam ser concedidas a outras funções porque a hierarquia de funções para essas funções é definida e mantida pelo Snowflake.

Exemplos

GRANT ROLE analyst TO ROLE SYSADMIN;
Copy
GRANT ROLE analyst TO USER user1;
Copy