Amazon Aurora DSQL と IAM の連携
IAM を使用して Aurora DSQL へのアクセスを管理する前に、Aurora DSQL で利用できる IAM の機能について学びます。
| IAM の機能 | Aurora DSQL のサポート |
|---|---|
|
あり |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
なし |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
あり |
Aurora DSQL およびその他の AWS サービスと多くの IAM 機能の連携についての概要は、「IAM ユーザーガイド」の「IAM と連携する AWS のサービス」を参照してください。
Aurora DSQL のアイデンティティベースのポリシー
アイデンティティベースのポリシーのサポート: あり
アイデンティティベースポリシーは、IAM ユーザー、ユーザーグループ、ロールなど、アイデンティティにアタッチできる JSON 許可ポリシードキュメントです。これらのポリシーは、ユーザーとロールが実行できるアクション、リソース、および条件をコントロールします。アイデンティティベースポリシーの作成方法については、「IAM ユーザーガイド」の「カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する」を参照してください。
IAM アイデンティティベースのポリシーでは、許可または拒否するアクションとリソース、およびアクションを許可または拒否する条件を指定できます。JSON ポリシーで使用できるすべての要素について学ぶには、「IAM ユーザーガイド」の「IAM JSON ポリシーの要素のリファレンス」を参照してください。
Aurora DSQL のアイデンティティベースのポリシー例
Aurora DSQL でのアイデンティティベースのポリシーの例は、「Amazon Aurora DSQL のアイデンティティベースのポリシー例」を参照してください。
Aurora DSQL 内のリソースベースのポリシー
リソースベースのポリシーのサポート: あり
リソースベースのポリシーは、リソースに添付する JSON ポリシードキュメントです。リソースベースのポリシーには例として、IAM ロールの信頼ポリシーや Amazon S3 バケットポリシーがあげられます。リソースベースのポリシーをサポートするサービスでは、サービス管理者はポリシーを使用して特定のリソースへのアクセスを制御できます。ポリシーがアタッチされているリソースの場合、指定されたプリンシパルがそのリソースに対して実行できるアクションと条件は、ポリシーによって定義されます。リソースベースのポリシーで、プリンシパルを指定する必要があります。プリンシパルには、アカウント、ユーザー、ロール、フェデレーティッドユーザー、または AWS のサービスを含めることができます。リソースベースのポリシーは、そのサービス内にあるインラインポリシーです。リソースベースのポリシーで IAM の AWS マネージドポリシーを使用することはできません。
Aurora DSQL クラスターのリソースベースのポリシーを作成および管理する方法については、「Resource-based policies for Aurora DSQL」を参照してください。
Aurora DSQL のポリシーアクション
ポリシーアクションのサポート:あり
管理者は AWS JSON ポリシーを使用して、だれが何にアクセスできるかを指定できます。つまり、どのプリンシパルがどんなリソースにどんな条件でアクションを実行できるかということです。
JSON ポリシーの Action 要素にはポリシー内のアクセスを許可または拒否するために使用できるアクションが記述されます。このアクションは関連付けられたオペレーションを実行するためのアクセス許可を付与するポリシーで使用されます。
Aurora DSQL アクションのリストを確認するには、「サービス認可リファレンス」の「Actions Defined by Amazon Aurora DSQL」を参照してください。
Aurora DSQL のポリシーアクションは、アクションの前に次のプレフィックスを使用します。
dsql
単一のステートメントで複数のアクションを指定するには、アクションをカンマで区切ります。
"Action": [ "dsql:action1", "dsql:action2" ]
Aurora DSQL でのアイデンティティベースのポリシーの例は、「Amazon Aurora DSQL のアイデンティティベースのポリシー例」を参照してください。
Aurora DSQL のポリシーリソース
ポリシーリソースのサポート: あり
管理者は AWS JSON ポリシーを使用して、だれが何にアクセスできるかを指定できます。つまり、どのプリンシパルがどんなリソースにどんな条件でアクションを実行できるかということです。
Resource JSON ポリシー要素はアクションが適用されるオブジェクトを指定します。ベストプラクティスとして、Amazon リソースネーム (ARN) を使用してリソースを指定します。リソースレベルの権限をサポートしないアクションの場合は、ステートメントがすべてのリソースに適用されることを示すために、ワイルドカード (*) を使用します。
"Resource": "*"
Aurora DSQL のリソースタイプとその ARN のリストを確認するには、「サービス認可リファレンス」の「Resources Defined by Amazon Aurora DSQL」を参照してください。どのアクションで各リソースの ARN を指定できるかについては、「Actions Defined by Amazon Aurora DSQL」を参照してください。
Aurora DSQL でのアイデンティティベースのポリシーの例は、「Amazon Aurora DSQL のアイデンティティベースのポリシー例」を参照してください。
Aurora DSQL のポリシー条件キー
サービス固有のポリシー条件キーのサポート: あり
管理者は AWS JSON ポリシーを使用して、だれが何にアクセスできるかを指定できます。つまり、どのプリンシパルがどのリソースに対してどのような条件下でアクションを実行できるかということです。
Condition 要素は、定義された基準に基づいてステートメントが実行されるタイミングを指定します。イコールや未満などの 条件演算子 を使用して条件式を作成して、ポリシーの条件とリクエスト内の値を一致させることができます。すべての AWS グローバル条件キーを確認するには、IAM ユーザーガイドのAWS グローバル条件コンテキストキーを参照してください。
Aurora DSQL の条件キーのリストを確認するには、「サービス認可リファレンス」の「Condition keys for Amazon Aurora DSQL」を参照してください。条件キーを使用できるアクションとリソースについては、「Actions defined by Amazon Aurora DSQL」を参照してください。
Aurora DSQL でのアイデンティティベースのポリシーの例は、「Amazon Aurora DSQL のアイデンティティベースのポリシー例」を参照してください。
Aurora DSQL の ACL
ACL のサポート: なし
アクセスコントロールリスト (ACL) は、どのプリンシパル (アカウントメンバー、ユーザー、またはロール) がリソースにアクセスするための許可を持つかを制御します。ACL はリソースベースのポリシーに似ていますが、JSON ポリシードキュメント形式は使用しません。
Aurora DSQL での ABAC
ABAC (ポリシー内のタグ) のサポート: あり
属性ベースのアクセス制御 (ABAC) は、タグと呼ばれる属性に基づいてアクセス許可を定義する認可戦略です。IAM エンティティと AWS リソースにタグを付けることで、プリンシパルのタグがリソースタグと一致するときに操作を許可する ABAC ポリシーを設計できます。
タグに基づいてアクセスを管理するには、aws:ResourceTag/、key-nameaws:RequestTag/、または key-nameaws:TagKeys の条件キーを使用して、ポリシーの 条件要素でタグ情報を提供します。
サービスがすべてのリソースタイプに対して 3 つの条件キーすべてをサポートする場合、そのサービスの値はありです。サービスが一部のリソースタイプに対してのみ 3 つの条件キーのすべてをサポートする場合、値は「部分的」になります。
ABAC の詳細については、「IAM ユーザーガイド」の「ABAC 認可でアクセス許可を定義する」を参照してください。ABAC をセットアップする手順を説明するチュートリアルについては、「IAM ユーザーガイド」の「属性ベースのアクセスコントロール (ABAC) を使用する」を参照してください。
Aurora DSQLでの一時的な認証情報の使用
一時的な認証情報のサポート: あり
一時的な認証情報は、AWS リソースへの短期的なアクセスを提供し、フェデレーションまたはスイッチロールの使用時に自動的に作成されます。AWS では、長期的なアクセスキーを使用する代わりに、一時的な認証情報を動的に生成することをお勧めします。詳細については、「IAM ユーザーガイド」の「IAM の一時的な認証情報」および「IAM と連携する AWS のサービス」を参照してください。
Aurora DSQL のクロスサービスプリンシパル許可
転送アクセスセッション (FAS) のサポート: あり
転送アクセスセッション (FAS) は、AWS のサービスを呼び出すプリンシパルの権限を、AWS のサービスのリクエストと合わせて使用し、ダウンストリームのサービスに対してリクエストを行います。FAS リクエストを行う際のポリシーの詳細については、「転送アクセスセッション」を参照してください。
Aurora DSQL のサービスロール
サービスロールのサポート: あり
サービスロールとは、サービスがユーザーに代わってアクションを実行するために引き受ける IAM ロールです。IAM 管理者は、IAM 内からサービスロールを作成、変更、削除できます。詳細については、「IAM ユーザーガイド」の「AWS のサービス に許可を委任するロールを作成する」を参照してください。
警告
サービスロールのアクセス許可を変更すると、Aurora DSQL の機能が破損する可能性があります。Aurora DSQL が指示する場合以外は、サービスロールを編集しないでください。
Aurora DSQL のサービスリンクロール
サービスリンクロールのサポート: あり
サービスにリンクされたロールは、AWS のサービスにリンクされているサービスロールの一種です。サービスがロールを引き受け、ユーザーに代わってアクションを実行できるようになります。サービスにリンクされたロールは、AWS アカウント に表示され、サービスによって所有されます。IAM 管理者は、サービスリンクロールのアクセス許可を表示できますが、編集することはできません。
Aurora DSQL でのサービスリンクロールの作成または管理の詳細については、「Aurora DSQL でのサービスリンクロールの使用」を参照してください。