Overview - Amazon Redshift

Overview

Amazon Redshift は、一時的データベースユーザー認証情報を生成する GetClusterCredentials API オペレーションを提供します。GetClusterCredentials オペレーションを呼び出すプロセスを管理する Amazon Redshift JDBC、または ODBC ドライバーで SQL クライアントを設定できます。これは、データベースのユーザー認証情報を取得し、SQL クライアントと Amazon Redshift データベース間の接続を確立することにより行われます。また、データベースアプリケーションを使用してプログラムで GetClusterCredentials オペレーションを呼び出し、データベースのユーザー認証情報を取得して、データベースに接続することもできます。

既に AWSの外部でユーザー ID を管理している場合、Security Assertion Markup Language (SAML) 2.0 に準拠した ID プロバイダー (IdP) を使用して、Amazon Redshift リソースへのアクセスを管理できます。IAM ロールへのフェデレーティッドユーザーアクセスを許可するよう IdP を設定します。この IAM ロールにより、一時的データベース認証情報を生成し、Amazon Redshift データベースにログオンできます。

SQL クライアントには、自動的に GetClusterCredentials オペレーションを呼び出すためのアクセス許可が必要です。IAM ロールを作成し、 GetClusterCredentials オペレーションと関連アクションへのアクセスを付与または制限する IAM アクセス権限ポリシーを添付して、それらのアクセス許可を管理します。

このポリシーでは、Amazon Redshift クラスター、データベース、データベースユーザー名、ユーザーグループ名など特定のリソースへのアクセスが付与または制限されます。

注記

Amazon Redshift JDBC、または ODBC ドライバーを使用して GetClusterCredentials オペレーションを呼び出し、データベースにログオンするプロセスを管理することをお勧めします。分かりやすいように、このトピック全体で JDBC または ODBC ドライバーとともに SQL クライアントを使用するものと仮定します。

GetClusterCredentials オペレーションまたは並列 get-cluster-credentials CLI コマンドの使用の具体的な詳細と例については、GetClusterCredentials および get-cluster-credentials を参照してください。

認証と承認を一元的に管理するため、Amazon Redshift では IAM を使用したデータベース認証がサポートされ、エンタープライズフェデレーションによるユーザー認証が可能になります。IAM ユーザーを作成せずに AWS Directory Service、エンタープライズユーザーディレクトリ、ウェブ ID プロバイダーの既存の ID を使用することもできます。このようなユーザーはフェデレーティッドユーザーと呼ばれます。 AWS では、IdP を通じてアクセスが要求されたとき、フェデレーティッドユーザーにロールを割り当てます。

組織内のユーザーまたはクライアントアプリケーションに Amazon Redshift API オペレーションを呼び出すフェデレーティッドアクセスを提供するには、SAML 2.0 をサポートした JDBC または ODBC ドライバーを使用して、組織の IdP から認証をリクエストすることもできます。この場合、組織のユーザーは Amazon Redshift に直接アクセスすることはできません。