O Amazon Redshift não permitirá mais a criação de funções definidas pelo usuário (UDFs) do Python a partir de 1.º de novembro de 2025. Se quiser usar UDFs do Python, você deve criá-las antes dessa data. As UDFs do Python existentes continuarão a funcionar normalmente. Para ter mais informações, consulte a publicação de blog
PG_GET_SESSION_ROLES
Retorna os perfis de sessão do usuário conectado no momento. Os perfis de sessão de um usuário são os grupos definidos por um provedor de identidades (IdP) para o usuário conectado. Por exemplo, um provedor de identidades (IdP) como Microsoft Azure Active Directory (Azure AD)
Para visualizar os perfis definidos no catálogo do Amazon Redshift, consulte a visualização do sistema SVV_ROLES.
Sintaxe
pg_get_session_roles()
Tipo de retorno
Um conjunto de linhas que consiste em dois valores. O primeiro valor tem duas partes separadas por dois-pontos (:) que contém um idp-namespace:role-name. O idp-namespace é o namespace do provedor de identidades (IdP). O role-name é o nome do grupo externo no provedor de identidades (IdP). O segundo valor contém um role-id, que é o identificador do perfil.
Observações de uso
A função PG_GET_SESSION_ROLES retorna uma linha para cada perfil de sessão retornado.
Exemplos
O exemplo a seguir retorna uma linha para cada perfil do IdP do Azure Active Directory. As colunas retornadas são transmitidas para sess_roles com colunas name e roleid. Cada name consiste no namespace do Azure Active Directory e em um nome de grupo no Azure Active Directory.
SELECT * FROM pg_get_session_roles() AS sess_roles(name name, roleid integer);name roleid -------------------------------- my_aad:test_group_1 106204 my_aad:test_group_2 106205 my_aad:test_group_3 106206 my_aad:test_group_4 106207 my_aad:test_group_5 106208
O exemplo a seguir retorna uma linha para cada grupo do IAM do qual o usuário do IAM conectado no momento é membro. As colunas retornadas são transmitidas para sess_roles com colunas name e roleid. Cada name consiste no namespace do IAM e no nome do grupo do IAM.
SELECT * FROM pg_get_session_roles() AS sess_roles(name name, roleid integer);name roleid -------------------------------- IAM:myGroup 110332