Amazon Redshift dejará de admitir la creación de nuevas UDF de Python a partir del 1 de noviembre de 2025. Si desea utilizar las UDF de Python, créelas antes de esa fecha. Las UDF de Python existentes seguirán funcionando con normalidad. Para obtener más información, consulte la publicación del blog
PG_GET_SESSION_ROLES
Devuelve los roles de sesión del usuario que ha iniciado sesión actualmente. Los roles de sesión de un usuario son los grupos definidos por un proveedor de identidades (IdP) para el usuario que ha iniciado sesión. Por ejemplo, un proveedor de identidades (IdP) como Microsoft Azure Active Directory (Azure AD)
Para ver los roles definidos en el catálogo de Amazon Redshift, consulte la vista del sistema SVV_ROLES.
Sintaxis
pg_get_session_roles()
Tipo de retorno
Un conjunto de filas que consta de dos valores. El primer valor tiene dos partes separadas por dos puntos (:) que contiene un idp-namespace:role-name. idp-namespace es el espacio de nombres del proveedor de identidades (IdP). role-name es el nombre del grupo externo del proveedor de identidades (IdP). El segundo valor contiene un role-id que es el identificador del rol.
Notas de uso
La función PG_GET_SESSION_ROLES devuelve una fila por cada rol de sesión devuelto.
Ejemplos
El siguiente ejemplo devuelve una fila para cada rol del IdP de Azure Active Directory. Las columnas devueltas se convierten en sess_roles con columnas name y roleid. Cada name consta del espacio de nombres de Azure Active Directory y un nombre de grupo en 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
El siguiente ejemplo devuelve una fila para cada grupo de IAM del que es miembro el usuario de IAM que ha iniciado sesión actualmente. Las columnas devueltas se convierten en sess_roles con columnas name y roleid. Cada name consta del espacio de nombres de IAM y el nombre del grupo de IAM.
SELECT * FROM pg_get_session_roles() AS sess_roles(name name, roleid integer);name roleid -------------------------------- IAM:myGroup 110332