

 Amazon Redshift는 패치 198부터 새 Python UDF 생성을 더 이상 지원하지 않습니다. 기존 Python UDF는 2026년 6월 30일까지 계속 작동합니다. 자세한 내용은 [블로그 게시물](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)을 참조하세요.

# PG\_GET\_SESSION\_ROLES
<a name="PG_GET_SESSION_ROLES"></a>

현재 로그인한 사용자의 세션 역할을 반환합니다. 사용자의 세션 역할은 로그인한 사용자에 대해 ID 제공업체(iDP)가 정의한 그룹입니다. 예를 들어 [Microsoft Azure Active Directory(Azure AD)](https://azure.microsoft.com/en-us/services/active-directory/)와 같은 ID 제공업체(idP)는 사용자 로그인 프로세스 중에 사용자의 신원을 확인하고 사용자가 속한 모든 외부 그룹을 제공합니다. 이러한 외부 그룹은 Amazon Redshift 역할로 변환되며 현재 세션 중에 사용할 수 있습니다. 이러한 역할을 세션 역할이라고 합니다. 관리자는 다른 Amazon Redshift 역할과 유사하게 세션 역할에 권한을 부여할 수 있습니다. 역할 사용에 대한 자세한 내용은 [역할 기반 액세스 제어(RBAC)](t_Roles.md)를 참조하세요. ID 제공업체(iDP)로 ID를 관리하는 방법에 대한 자세한 내용은 **Amazon Redshift 관리 가이드에서 [Amazon Redshift용 기본 IdP(ID 공급자) 페더레이션](https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-native-idp.html)을 참조하세요

Amazon Redshift 카탈로그에 정의된 역할을 보려면 [SVV\_ROLES](r_SVV_ROLES.md) 시스템 뷰를 쿼리합니다.

## 구문
<a name="PG_GET_LATE_BINDING_VIEW_COLS-synopsis"></a>

```
pg_get_session_roles()
```

## 반환 타입
<a name="PG_GET_SESSION_ROLES-return-type"></a>

두 개의 값으로 구성된 행 집합입니다. 첫 번째 값은 콜론(:)으로 구분된 두 부분으로 구성되며, 이 두 부분에는 `idp-namespace:role-name`이 포함되어 있습니다. `idp-namespace`는 ID 제공업체(iDP)의 네임스페이스입니다. `role-name`은 ID 제공업체(iDP)의 외부 그룹 이름입니다. 두 번째 값에는 역할 식별자인 `role-id`가 포함됩니다.

## 사용 노트
<a name="PG_GET_SESSION_ROLES-usage-notes"></a>

`PG_GET_SESSION_ROLES` 함수는 반환된 각 세션 역할에 대해 하나의 행을 반환합니다.

## 예제
<a name="PG_GET_SESSION_ROLES-example"></a>

다음 예에서는 Azure Active Directory IdP에서 각 역할에 대해 하나의 행을 반환합니다. 반환된 열은 열 `name` 및 `roleid`를 사용하여 `sess_roles`로 캐스팅됩니다. 각 `name`은 Azure Active Directory 네임스페이스와 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
```

다음 예제에서는 현재 로그인한 IAM 사용자가 멤버인 각 IAM 그룹에 대해 하나의 행을 반환합니다. 반환된 열은 열 `name` 및 `roleid`를 사용하여 `sess_roles`로 캐스팅됩니다. 각 `name`은 IAM 네임스페이스 및 IAM 그룹 이름으로 구성됩니다.

```
SELECT * FROM pg_get_session_roles() AS sess_roles(name name, roleid integer);

name                  roleid
--------------------------------
IAM:myGroup           110332
```