

 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\$1GET\$1IAM\$1ROLE\$1BY\$1USER
<a name="PG_GET_IAM_ROLE_BY_USER"></a>

ユーザーに付与されたすべての IAM ロールとコマンド権限を返します。

## 構文
<a name="PG_GET_IAM_ROLE_BY_USER-synopsis"></a>

```
pg_get_iam_role_by_user('name')
```

## 引数
<a name="PG_GET_IAM_ROLE_BY_USER-arguments"></a>

 *.name*   
IAM ロールを返すユーザーの名前。

## 戻り型
<a name="PG_GET_IAM_ROLE_BY_USER-return-type"></a>

VARCHAR 

## 使用に関する注意事項
<a name="PG_GET_IAM_ROLE_BY_USER-usage-notes"></a>

PG\$1GET\$1IAM\$1ROLE\$1BY\$1USER 関数は、ロールとコマンド権限のセットごとに、行を 1 つ返します。行には、ユーザー名、IAM ロール、コマンドを含むコンマ区切りのリストが含まれています。

結果の値 `default` は、表示されたコマンドを実行するためにユーザーが使用できる任意のロールを指定できることを示します。

この機能を使用するには、スーパーユーザーである必要があります。

## 例
<a name="PG_GET_IAM_ROLE_BY_USER-example"></a>

次の例では、ユーザー `reg_user1` が COPY オペレーションを実行するために使用できる IAM ロールを指定できます。ユーザーは、UNLOAD オペレーションの `Redshift-S3-Write` ロールを指定することもできます。

```
select pg_get_iam_role_by_user('reg_user1');
```

```
                             pg_get_iam_role_by_user
---------------------------------------------------------------------------------
 (reg_user1,default,COPY)
 (reg_user1,arn:aws:iam::123456789012:role/Redshift-S3-Write,COPY|UNLOAD)
```

次の PG\$1GET\$1IAM\$1ROLE\$1BY\$1USER 関数の例では、結果をテーブルとしてフォーマットします。

```
select username, iam_role, cmd FROM pg_get_iam_role_by_user('reg_user1') res_iam_role(username text, iam_role text, cmd text);
```

```
 username  |                    iam_role                     | cmd
-----------+-------------------------------------------------+------
 reg_user1 | default                                         | None
 reg_user1 | arn:aws:iam::123456789012:role/Redshift-S3-Read | COPY
```