Redshift
Redshift接続の設定方法と利用方法について説明します。
Codatumを使用して、Redshiftのデータに接続、クエリ、管理ができます。
この機能は現在プライベートプレビューです。この機能のご利用を希望される場合は、Codatumサポートまでお問い合わせください。
設定方法
Redshift連携は、RA3ノードのクラスターとサーバーレスを対象とします。
1. AWSコンソールで必要な準備を行う
1. DBにおける必要な権限の付与
連携用のロールを作成し、権限を付与します。
使用したいスキーマに対する
USAGE
権限をそのロールに付与する使用したいテーブルに対する
SELECT
権限をそのロールに付与するシステムビュー
svv_table_info
に対するSELECT
権限をそのロールに付与する
2. Secrets ManagerでSecretの作成
接続したいData Warehouseを指定し、Secretを作成する
作成したSecretに
RedshiftDataFullAccess
というタグを追加する(Valueは空でOK)
3. IAMユーザーの作成とポリシーの付与
連携用のIAMユーザーを作成し、 以下のポリシーを付与する
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "DataAPIPermissions",
"Effect": "Allow",
"Action": [
"redshift-data:BatchExecuteStatement",
"redshift-data:ExecuteStatement",
"redshift-data:CancelStatement",
"redshift-data:ListStatements",
"redshift-data:GetStatementResult",
"redshift-data:DescribeStatement",
"redshift-data:ListDatabases",
"redshift-data:ListSchemas",
"redshift-data:ListTables",
"redshift-data:DescribeTable"
],
"Resource": "*"
},
{
"Sid": "SecretsManagerPermissions",
"Effect": "Allow",
"Action": [
"secretsmanager:GetSecretValue"
],
"Resource": [
"1-2で作成したSecretのARNを指定する"
],
"Condition": {
"StringLike": {
"secretsmanager:ResourceTag/RedshiftDataFullAccess": "*"
}
}
},
{
"Sid": "ServiceLinkedRole",
"Effect": "Allow",
"Action": "iam:CreateServiceLinkedRole",
"Resource": "arn:aws:iam::*:role/aws-service-role/redshift-data.amazonaws.com/AWSServiceRoleForRedshift",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "redshift-data.amazonaws.com"
}
}
}
]
}
4. サーバーレスの場合のみ、追加で以下の対応が必要
連携するWorkgroupに
RedshiftDataFullAccess
というタグを追加する(Valueは空でOK)IAMで以下のポリシーを作成し、IAMユーザーに付与する
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServerlessWorkgroupInfo",
"Effect": "Allow",
"Action": [
"redshift-serverless:GetWorkgroup"
],
"Resource": "*"
}
]
}
2. CodatumにRedshiftコネクションを登録する
最後に、CodatumでRedshiftコネクションを作成します。
ワークスペース設定
のコネクション
からコネクションを追加
を選択コネクション名
を入力アクセスレベル
を選択アカウントID
を入力AWSのアカウントIDです。
リージョン
を入力Redshiftリソースが属しているリージョンです。
接続タイプ
を選択クラスターを選択した場合
クラスター識別子
を入力デフォルトデータベース
を入力接続先のデータベースです。この設定は、クエリ可能なデータベース、スキーマ、テーブルを制限するものではありません。
サーバーレスを選択した場合
サーバーレス 名前空間
を入力サーバーレス ワークグループ名
を入力デフォルトデータベース
を入力接続先のデータベースです。この設定は、クエリ可能なデータベース、スキーマ、テーブルを制限するものではありません。
AWS アクセスキー
を入力ステップ1で準備したIAMユーザーのアクセスキーを使用します。
AWS シークレットアクセスキー
を入力ステップ1で準備したIAMユーザーのシークレットアクセスキーを使用します。
シークレットARN
を入力ステップ1で準備したSecretのシークレットARNを使用します。
入力が完了したら、接続テストを行った後、コネクションを保存してください。
最終更新
役に立ちましたか?