- 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()
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();
+------------------------------------------------------+
| CURRENT_SECONDARY_ROLES() |
+------------------------------------------------------+
| {"roles":"ROLE1,ROLE2,ROLE3","value":"ALL"} |
+------------------------------------------------------+