Redshift IAMロールの設定
注釈:本資料はAI技術を用いて翻訳されています。
概要
Redshift IAMロール認証は、AWS IAMロールを活用することで、追加のセキュリティレイヤーを提供します。この方法により、Redshiftクラスターの認証情報を公開する必要がなくなり、制御が強化され、認証情報の漏洩リスクが軽減されます。
Redshift IAMロール認証を使用すると、Connectorは各接続の一時的な認証情報のローテーションを自動的に管理し、手動介入なしでセキュリティが維持されます。
目標
ConnectorでRedshift IAMロール認証を実装する目標は以下の通りです:
- セキュリティの強化: Redshiftクラスターの認証情報を公開する必要をなくし、認証情報の漏洩リスクを軽減します。
- 自動認証情報ローテーション: Connectorによる一時的な認証情報の自動管理とローテーションにより、手動介入なしで一貫したセキュリティを実現します。
- きめ細かなアクセス制御: Redshiftリソースに対する特定のアクションについて、Connectorに一時的かつスコープ指定されたアクセスを提供します。
前提条件
Redshift IAMロール認証を設定する前に、以下の前提条件が満たされていることを確認してください:
- AWS Identity and Access Management (IAM)の概念に関する基本的な理解。
- Connectorアクセスを許可したいAmazon Redshiftクラスターが稼働していること。
- IAMポリシーと信頼関係テンプレートを取得するための管理ポータルへのアクセス。
Redshift IAMロール認証を設定するには、以下の手順に従ってください。
ステップバイステップの設定
- IAMポリシーの作成:
管理ポータルで提供されているテンプレートに基づいてポリシーを作成します。このポリシーは、ConnectorがRedshiftリソースと対話するために必要な権限を付与します。後で、このポリシーを作成したIAMロールにアタッチします。
Redshiftクラスターのタイプに基づいて、redshiftまたはredshift-serverlessのいずれかを選択してください。
ポリシーテンプレート:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowRedshift",
"Effect": "Allow",
"Action": [
"redshift:GetClusterCredentials",
"redshift-serverless:GetCredentials"
],
"Resource": "*"
}
]
}
- IAMロールの作成
- カスタム信頼ポリシーを選択し、管理ポータルで提供されているテンプレートに基づいて、AWSロールに信頼ポリシーを実装します。 この信頼関係ポリシーにより、サービス間のクロスアクセスが可能になり、ConnectorがIAMロールを引き受けることができるようになります。
信頼関係ポリシーテンプレート:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowCrossAccess",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::<accelbyte-aws-account-id>:root"
},
"Action": [
"sts:AssumeRole"
],
"Condition": {
"StringEquals": {
"sts:ExternalId": "<external-id>"
}
}
}
]
}
- 作成したポリシーをIAMロールにアタッチします。
- IAMロールを確認し、「ロールを作成」をクリックします。
- IAMロールにタグを追加:
Connectorがロールを識別できるように、IAMロールに以下のタグを追加します:
- キー:
accelbyte-service - 値:
accelbyte-analytics-connector-service
-
AWS Role ARNの保存
作成したAWS Role ARNを保存します。ARNは
arn:aws:iam::<aws-account-id>:role/<role-name>の形式です。後でRedshift Connector設定で使用します。 -
Redshiftクラスターでパブリックアクセスを有効化:
Redshiftクラスターがパブリックアクセス可能であることを確認してください。Redshiftクラスターがパブリックアクセス可能でない場合は、AWS Management Consoleでクラスター設定を変更することで有効にできます。
- Redshiftクラスターセキュリティグループにインバウンドルールを追加:
Connectorサービスからのトラフィックを許可するために、Redshiftクラスターセキュリティグループに、タイプがRedshiftでソースがAnywhere-IPv4 (0.0.0.0/0)のインバウンドルールを追加します。