ステップ5: IAM 認証情報を使用するように JDBC または ODBC 接続を設定する - Amazon Redshift

「翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。」

ステップ5: IAM 認証情報を使用するように JDBC または ODBC 接続を設定する

Amazon Redshift JDBC または ODBC ドライバーを使用して SQL クライアントを設定できます。このドライバーは、データベースユーザーの認証情報を作成し、SQL クライアントと Amazon Redshift データベース間の接続を確立するプロセスを管理します。

認証に ID プロバイダーを使用する場合は、ID プロバイダープラグインの名前を指定します。Amazon Redshift JDBC および ODBC ドライバーには、次の SAML ベースの認証情報プロバイダーのプラグインが含まれます。

IAM 認証情報を使用するように JDBC 接続を設定するには

  1. JDBC ドライバーバージョン 1.0 接続の設定」ページから最新の Amazon Redshift JDBC ドライバーをダウンロードします。

  2. 次のいずれかの形式で IAM 認証情報オプションを使用して JDBC URL を作成します。IAM 認証を使用するには、次の例に示すように、jdbc:redshift: に続いて Amazon Redshift JDBC URL に iam: を追加します。

    jdbc:redshift:iam://

    追加 cluster-nameregion、および account-id. JDBCドライバは、IAMアカウント情報とクラスタ名を使用して、クラスタIDとAWS Regionを取得します。そのためには、IAM ユーザーまたはロールには、指定したクラスターで redshift:DescribeClusters オペレーションを呼び出すアクセス許可が必要です。IAM ユーザーまたはロールで、redshift:DescribeClusters オペレーションを呼び出すアクセス許可がない場合は、次の例に示すように、クラスター ID、AWS リージョン、ポートを含めます。ポート番号はオプションです。デフォルトのポート番号は 5439 です。

    jdbc:redshift:iam://examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com:5439/dev
  3. JDBC オプションを追加して IAM 認証情報を提供します。さまざまな組み合わせの JDBC オプションを使用して、IAM 認証情報を提供できます。詳細については、「データベースユーザー認証情報を作成するための JDBC および ODBC のオプション」を参照してください。

    次の URL は、 AccessKeyID および SecretAccessKey IAMユーザー用です。

    jdbc:redshift:iam://examplecluster:us-west-2/dev?AccessKeyID=AKIAIOSFODNN7EXAMPLE&SecretAccessKey=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

    次の例では、IAM 認証情報を含む名前付きプロファイルを指定します。

    jdbc:redshift:iam://examplecluster:us-west-2/dev?Profile=user2
  4. JDBC ドライバーを使用して GetClusterCredentials API オペレーションを呼び出す JDBC オプションを追加します。GetClusterCredentials API オペレーションをプログラムで呼び出す場合、これらのオプションは含めないでください。

    次の例では JDBC GetClusterCredentials オプションを含めています。

    jdbc:redshift:iam://examplecluster:us-west-2/dev?plugin_name=com.amazon.redshift.plugin.AzureCredentialsProvider&UID=user&PWD=password&idp_tenant=my_tenant&client_secret=my_secret&client_id=my_id

IAM 認証情報を使用するように ODBC 接続を設定するには

次の手順では、IAM 認証を設定するステップのみを示します。データベースユーザー名とパスワードを使用して標準認証を使用するステップについては、「ODBC 接続の設定」を参照してください。

  1. オペレーティングシステム用の最新の Amazon Redshift OBDC ドライバーをインストールおよび設定します。詳細については、「ODBC 接続の設定」ページを参照してください。

    重要

    Amazon Redshift ODBC ドライバーはバージョン 1.3.6.1000 以降である必要があります。

  2. 接続設定に関するオペレーティングシステムのステップに従います。

    詳細については、以下のいずれかを参照してください。

  3. Microsoft Windows オペレーティングシステムでは、Amazon Redshift ODBC ドライバーの DSN 設定ウィンドウにアクセスします。

    1. [接続設定] で以下の情報を入力します。

      • データソース名

      • [サーバー] (オプション)

      • [ポート] (オプション)

      • Database

      IAMユーザーまたは役割に redshift:DescribeClusters 操作、のみ データソース名 および データベース は必須です。 Amazon Redshift 使用 ClusterId および 地域 を呼び出し、サーバーとポートを取得します。 DescribeCluster 操作。

      IAM ユーザーまたはロールには、redshift:DescribeClusters を呼び出し、[Server (サーバー)] および [Port (ポート)] を指定するアクセス許可はありません。デフォルトのポート番号は 5439 です。

    2. [Authentication (認証)] で、[Auth Type (認証タイプ)] の値を選択します。

      認証タイプごとに、次のように値を入力します。

      AWS プロファイル

      次の情報を入力します。

      • ClusterID

      • [リージョン]

      • [Profile name (プロファイル名)]

        ODBC 接続オプションの値を含む AWS Config ファイルのプロファイル名を入力します。詳細については、設定プロファイルを使用する を参照してください。

      (オプション) GetClusterCredentials API オペレーションの呼び出すために ODBC ドライバーが使用するオプションの詳細を指定します。

      IAM 認証情報

      次の情報を入力します。

      • ClusterID

      • [リージョン]

      • AccessKeyID および SecretAccessKey

        IAM データベース認証用に設定された IAM ロールまたは IAM ユーザーのアクセスキー ID およびシークレットアクセスキー。

      • SessionToken

        SessionToken は、一時的な資格情報を持つIAMロールに必要です。詳細については、「一時的セキュリティ認証情報」を参照してください。

      GetClusterCredentials API オペレーションを呼び出すために ODBC ドライバーが使用するオプションの詳細を指定します。

      IDプロバイダー: AD FS

      AD FS を使用した Windows 統合認証の場合、[User (ユーザー)] および [Password (パスワード)] は空白にしておきます。

      提供 IdP 詳細:

      • IdP Host

        企業 ID プロバイダホストの名前。この名前には、スラッシュ (/) を含めないでください。

      • IdP ポート (オプション)

        ID プロバイダが使用するポート。デフォルトは 443 です。

      • [Preferred Role (優先ロール)]

        SAML アサーションの Role 属性の複数の値を持つ AttributeValue 要素からの IAM ロールの Amazon リソースネーム (ARN)。希望する役割に適した値を見つけるには、 IdP 管理者。詳細については、SAMLアサーションを IdP を参照してください。

      (オプション) GetClusterCredentials API オペレーションの呼び出すために ODBC ドライバーが使用するオプションの詳細を指定します。

      • DbUser

      • User AutoCreate

      • DbGroups

      詳細については、データベースユーザー認証情報を作成するための JDBC および ODBC のオプション を参照してください。

      IDプロバイダー: PingFederate

      対象 ユーザー および パスワード、 IdP ユーザー名およびパスワード。

      提供 IdP 詳細:

      • IdP Host

        企業 ID プロバイダホストの名前。この名前には、スラッシュ (/) を含めないでください。

      • IdP ポート (オプション)

        ID プロバイダが使用するポート。デフォルトは 443 です。

      • [Preferred Role (優先ロール)]

        SAML アサーションの Role 属性の複数の値を持つ AttributeValue 要素からの IAM ロールの Amazon リソースネーム (ARN)。希望する役割に適した値を見つけるには、 IdP 管理者。詳細については、SAMLアサーションを IdP を参照してください。

      (オプション) GetClusterCredentials API オペレーションの呼び出すために ODBC ドライバーが使用するオプションの詳細を指定します。

      • DbUser

      • User AutoCreate

      • DbGroups

      詳細については、データベースユーザー認証情報を作成するための JDBC および ODBC のオプション を参照してください。

      IDプロバイダー: Okta

      対象 ユーザー および パスワード、 IdP ユーザー名およびパスワード。

      提供 IdP 詳細:

      • IdP Host

        企業 ID プロバイダホストの名前。この名前には、スラッシュ (/) を含めないでください。

      • IdP ポート

        この値は Okta では使用されません。

      • [Preferred Role (優先ロール)]

        SAML アサーションの Role 属性の AttributeValue 要素からの IAM ロールの Amazon リソースネーム (ARN)。希望する役割に適した値を見つけるには、 IdP 管理者。詳細については、SAMLアサーションを IdP を参照してください。

      • [Okta App ID (Okta アプリケーション ID)]

        Okta アプリケーションの ID。アプリ ID の値は、Okta アプリケーションの埋め込みリンクの「amazon_aws」に続きます。あなたの IdP 管理者がこの値を取得します。

      (オプション) GetClusterCredentials API オペレーションの呼び出すために ODBC ドライバーが使用するオプションの詳細を指定します。

      • DbUser

      • User AutoCreate

      • DbGroups

      詳細については、データベースユーザー認証情報を作成するための JDBC および ODBC のオプション を参照してください。

      IDプロバイダー: Azure AD

      対象 ユーザー および パスワード、 IdP ユーザー名およびパスワード。

      [Cluster ID] と [Region] にクラスター ID と Amazon Redshift クラスターの AWS リージョンを入力します。

      [Database (データベース)] に、Amazon Redshift クラスター用に作成したデータベースを入力します。

      提供 IdP 詳細:

      • IdP テナント

        Azure AD に使用されるテナント。

      • Azure Client Secret (Azure クライアントシークレット)

        Azure の Amazon Redshift エンタープライズアプリのクライアントシークレット。

      • Azure Client ID (Azure クライアント ID)

        Azure の Amazon Redshift エンタープライズアプリケーションのクライアント ID (アプリケーション ID)。

      (オプション) GetClusterCredentials API オペレーションの呼び出すために ODBC ドライバーが使用するオプションの詳細を指定します。

      • DbUser

      • User AutoCreate

      • DbGroups

      詳細については、データベースユーザー認証情報を作成するための JDBC および ODBC のオプション を参照してください。