Categorias:

Funções de contexto (Objeto da sessão)

CURRENT_SECONDARY_ROLES

Retorna as funções secundárias em uso para a sessão atual.

Para ativar um conjunto diferente de funções secundárias para a sessão, execute o comando USE SECONDARY ROLES.

Sintaxe

CURRENT_SECONDARY_ROLES()
Copy

Argumentos

Nenhum.

Retornos

Retorna uma cadeia de caracteres (VARCHAR) que é um objeto codificado em JSON com os seguintes pares nome/valor:

roles

Contém uma lista das funções secundárias ativadas. Esta lista inclui apenas as funções concedidas diretamente ao usuário; funções mais baixas na hierarquia dessas funções não são listadas.

value

Contém uma lista das funções secundárias solicitadas, aquelas solicitadas com a propriedade DEFAULT_SECONDARY_ROLES do usuário atual ou com o comando USE SECONDARY ROLES.

Notas de uso

É permitido o acesso em um UDF seguro ou exibição segura que contenha CURRENT_SECONDARY_ROLES para um compartilhamento. Quando a exibição segura ou UDF protegida é acessada a partir da conta do consumidor de compartilhamento de dados, CURRENT_SECONDARY_ROLES sempre retorna um valor NULL.

Exemplos

O usuário atual tem DEFAULT_SECONDARY_ROLES=('ALL'). As funções personalizadas role1, role2 e role3 são concedidas ao usuário atual e estão ativas como funções secundárias:

SELECT CURRENT_SECONDARY_ROLES();
Copy
+------------------------------------------------------+
|           CURRENT_SECONDARY_ROLES()                  |
+------------------------------------------------------+
| {"roles":"ROLE1,ROLE2,ROLE3","value":"ALL"}          |
+------------------------------------------------------+