---
schema_version: "1"
id: 4a28f9b010bcbb8724c72057a5c8dbfa46de984f8c335ecce3bb665af76c8b45
title: Amazon Redshift IAM ID センター OAuth の設定
collection: tableau
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/tableau/current/ja-jp/server-linux/config_oauth_redshift_iam_idc.md
canonical_url: https://help.tableau.com/current/server-linux/ja-jp/config_oauth_redshift_iam_idc.htm
source_site: help.tableau.com
content_type: documentation
content_hash: e1e7014d70818fc945cb8eb9378f01e45cdfc623ad8f8af9f6c1bb374406d225
description: Set up Amazon Redshift IAM Identity Center OAuth federation, with driver setup and troubleshooting.
---
[メイン コンテンツに進む](#main-content)

# Amazon Redshift IAM ID センター OAuth の設定

Tableau 2023.3 以降より、OAuth 2.0/OIDC を使用して、外部の ID プロバイダーから Amazon Redshift に ID をフェデレートすることができます。

以下の手順は、新しい AWS IAM IDC サービス用です。オリジナルの IAM 統合については、「[Amazon Redshift IAM OAuth の設定](https://help.tableau.com/current/server-linux/ja-jp/config_oauth_redshift_iam.htm)」を参照してください。

ID プロバイダーによって、統合を設定するために必要な手順は異なります。これはおおまかな概要です。Tableau は、AWS または IDP の構成方法について詳細な手順を提供できませんが、一般的なアプローチは次のとおりです。

Redshift で認証を実装する詳細な例については、「[AWS IAM アイデンティティ センターを使用して Tableau と Okta を Amazon Redshift に統合する](https://aws.amazon.com/blogs/big-data/integrate-tableau-and-okta-with-amazon-redshift-using-aws-iam-identity-center/)」(英語) および「[AWS IAM アイデンティティ センターを使用して、Tableau と Microsoft Entra ID を Amazon Redshift に統合する](https://aws.amazon.com/jp/blogs/big-data/integrate-tableau-and-microsoft-entra-id-with-amazon-redshift-using-aws-iam-identity-center/?nc1=h_ls)」(英語) を参照してください。

## ステップ 1: IDP を構成する

1. IDP に Tableau Desktop と Tableau Server または Tableau Cloud の OAuth クライアントを作成します。Desktop クライアントでは、`PKCE` を有効にし、`http://localhost` リダイレクトを使用する必要があります。
2. ロールを承認するために必要なカスタム クレームを追加します。
3. Tableau OAuth 構成ファイルを作成します。[GitHub](https://tableau.github.io/connector-plugin-sdk/docs/oauth "Tableau OAuth 構成ファイルを作成するための GitHub のドキュメント。") のドキュメントと[例](https://github.com/tableau/connector-plugin-sdk/tree/master/samples/components/oauth "Tableau OAuth 構成ファイルを作成するための GitHub の例。")を参照してください。他の IDP の例も歓迎します。
    
    1. Tableau OAuth 構成 ID には必ず「`custom_`」というプレフィックスを付けてください。
        
        **注:** Oauth 構成 ID の最大文字数は 36 文字です。これより長い ID ではエラーが発生しない可能性がありますが、機能しません。
    2. IDP が動的 localhost ポートをサポートしている場合、`OAUTH_CAP_FIXED_PORT_IN_CALLBACK_URL` を無効にします。そうでない場合は、構成ファイルおよび IDP の許可リストにいくつかの localhost コールバック URL を追加してください。
4. デスクトップ ホスト (Tableau Desktop、Tableau Prep Builder、Tableau Bridge) 上、および OAuth を使用する Tableau Server と Tableau Cloud サイト上の各アプリケーションに関連付けられた `OAuthConfigs` フォルダーに、新しい Tableau OAuth 構成ファイルをインストールします。

## ステップ 2: AWS で IDP とロールを構成する

構成する方法については、AWS のドキュメントを参照してください。

## ステップ 3: Redshift に接続する

1. Redshift に接続します。
2. \[認証\]には \[OAuth\] を選択します。
3. \[フェデレーション タイプ\] には \[ID センター\] を選択します。
4. (オプション) 必要に応じて、\[ID センターの名前空間\] を指定します。

![](/tableau/current/ja-jp/server-linux/ja-jp/Img/redshift_oauth_idc_connect.png "Redshift の接続ダイアログ")

正しく構成されていると、ユーザーは IDP にリダイレクトされ、Tableau のトークンが認証および認可されます。Tableau はアクセス トークンと更新トークンを受け取ります。認証のためにアクセス トークンをドライバーに送信します。

## トークン

既定では、Redshift OAuth to IAM IDC はアクセス トークンをドライバーに渡します。Tableau Bridge を使用しているお客様を含むオンプレミスのお客様の場合は、代わりに TDC ファイルを使用して ID トークンを渡すこともできます。

<connection-customization class='redshift' enabled='true' version='10.0'>
	<vendor name='redshift' />
	<driver name='redshift' />
	<customizations>
		<customization name='CAP\_OAUTH\_FEDERATE\_ID\_TOKEN' value='yes'/>
	</customizations>
</connection-customization>

.tdc ファイルの設定とインストールの詳細については、[「接続をカスタマイズして調整する」](https://help.tableau.com/current/pro/desktop/ja-jp/connect_customize.htm)および[「Tableau Server で .tdc ファイルを使用する」](https://help.salesforce.com/s/articleView?id=001458291&type=1)を参照してください。

## Okta

Okta を使用する場合は、「組織認可サーバー」ではなく、「カスタム認可サーバー」を使用することをお勧めします。カスタム認可サーバーはより柔軟です。カスタム認可サーバーは既定で作成され、「既定」と呼ばれます。認可 URL は次のようになります。

https://${yourOktaDomain}/oauth2/{authServerName}/v1/authorize

![](/tableau/current/ja-jp/server-linux/ja-jp/Img/redshift_oauth_idc_okta_800x332.png)

## ドライバーを更新する

IAM IDC サービスを使用する Redshift OAuth の場合、ODBC ドライバーのバージョン 2.x 以上を使用する必要があります。Redshift ODBC ドライバーの最新バージョンは、[https://github.com/aws/amazon-redshift-odbc-driver/tags](https://github.com/aws/amazon-redshift-odbc-driver/tags "Redshift ODBC バージョン 2 のドライバーのダウンロード") でダウンロードできます。OSX 用の v2 ドライバーはまだ提供されていないことに注意してください。

## Redshift IAM IDC OAuth のトラブルシューティング

エラーを診断する最善の方法は、問題が発生している状況から Tableau を削除することです。代わりに、ドライバー マネージャーまたは同様のツールを使用してテストすることができます。これはあくまでトラブルシューティングを目的とした作業です。この機能の通常の使用時には DSN や「その他の ODBC」コネクタを使用しないでください。有効なテストを行えるようにするためには、クラスター情報、データベース、トークン、および名前空間を除くパラメーターが以下に示すものと同じである必要があります。

最初の接続時にドライバーから無効/期限切れのトークンに関するエラー メッセージが表示された場合 (エラー メッセージには \[28000\] や \[08001\] などの SQLState エラー コードが含まれます)、Tableau は OAuth フローを正常に完了していますが、ドライバーに関して失敗しています。これは、AWS 側または IDP 側のいずれかに設定ミスがあることを意味します。ドライバーからパーミッションまたは認可のエラーが返される場合もありますが、これも Tableau の制御の対象外です。

テストを開始する前に、まず、ドライバーに送信するアクセス トークン (IAM IDC の既定値) または更新トークン (カスタマイズされている場合) を取得する必要があります。

Okta を使用した例を次に示します。ほぼすべての IDP は、同様の方法で Okta を使用します。このフローを使用するには、リソース所有者のパスワード付与タイプを有効にする必要があることに注意してください。IDP URL、クライアント シークレット、クライアント ID、ユーザー名、パスワードを置き換えます。

curl -X POST "https://OKTA\_URL/v1/token" \\  
\-H 'accept: application/json' \\  
\-H "Authorization: Basic $(echo -n 'CLIENTID:CLIENTSECRET' | base64)" \\  
\-H "Content-Type: application/x-www-form-urlencoded" \\  
\-d "grant\_type=password&username=USER&password=PASSWORD&scope=openid"

トークンを取得したら、DSN を使用してテストできます。Windows では、ODBC ドライバー マネージャーを使用できます。Linux では、Tableau Server の customer-bin フォルダーに含まれている isql コマンド ライン ツールを使用できます。

サーバー環境では動作しない可能性があるため、他のプラグインを使用してテストしないことをお勧めします。固定の AWS プロファイルを使用するか、ブラウザーに直接アクセスする必要があります。

以下は、Windows での ODBC ドライバー マネージャーの使用例です。

![](/tableau/current/ja-jp/server-linux/ja-jp/Img/redshift_oauth_idc_troubleshoot.png)