Amazon FSx for Lustre と IAM の連携の仕組み
IAM を使用して Amazon FSx へのアクセスを管理する前に、Amazon FSx で使用できる IAM 機能について理解しておく必要があります。
IAM の機能 | Amazon FSx のサポート |
---|---|
あり |
|
なし |
|
あり |
|
Yes |
|
Yes |
|
なし |
|
はい |
|
可能 |
|
可能 |
|
いいえ |
|
はい |
Amazon FSx および AWS のその他のサービスが大部分の IAM 機能とどのように動作するかに関するおおまかな説明については、「IAM ユーザーガイド」の「IAM と連携する AWS のサービス」を参照してください。
Amazon FSx のアイデンティティベースの ポリシー
アイデンティティベースのポリシーのサポート: あり
アイデンティティベースポリシーは、IAM ユーザーグループ、ユーザーのグループ、ロールなど、アイデンティティにアタッチできる JSON 許可ポリシードキュメントです。これらのポリシーは、ユーザーとロールが実行できるアクション、リソース、および条件をコントロールします。ID ベースのポリシーを作成する方法については、「IAM ユーザーガイド」の「カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する」を参照してください。
IAM アイデンティティベースのポリシーでは、許可または拒否するアクションとリソース、およびアクションを許可または拒否する条件を指定できます。プリンシパルは、それが添付されているユーザーまたはロールに適用されるため、アイデンティティベースのポリシーでは指定できません。JSON ポリシーで使用できるすべての要素について学ぶには、「IAM ユーザーガイド」の「IAM JSON ポリシーの要素のリファレンス」を参照してください。
Amazon FSx のアイデンティティベースのポリシー例
Amazon FSx のアイデンティティベースポリシーの例を確認するには、「Amazon FSx for Lustre のアイデンティティベースのポリシー例」を参照してください。
Amazon FSx 内のリソースベースのポリシー
リソースベースのポリシーのサポート: なし
Amazon FSx のポリシーアクション
ポリシーアクションのサポート: あり
管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どのプリンシパルがどんなリソースにどんな条件でアクションを実行できるかということです。
JSON ポリシーのAction
要素には、ポリシー内のアクセスを許可または拒否するために使用できるアクションが記述されます。ポリシーアクションの名前は通常、関連する AWS API オペレーションと同じです。一致する API オペレーションのない許可のみのアクションなど、いくつかの例外があります。また、ポリシーに複数のアクションが必要なオペレーションもあります。これらの追加アクションは、依存アクションと呼ばれます。
このアクションは、関連付けられたオペレーションを実行するための権限を付与するポリシーで使用されます。
Amazon FSx のアクションの一覧を確認するには、サービス認可リファレンスの「Amazon FSx for Lustre で定義されるアクション」を参照してください。
Amazon FSx のポリシーアクションは、アクションの前に次のプレフィックスを使用します。
fsx
単一のステートメントで複数のアクションを指定するには、アクションをカンマで区切ります。
"Action": [ "fsx:
action1
", "fsx:action2
" ]
Amazon FSx のアイデンティティベースポリシーの例を確認するには、「Amazon FSx for Lustre のアイデンティティベースのポリシー例」を参照してください。
Amazon FSx のポリシーリソース
ポリシーリソースのサポート: あり
管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どのプリンシパルがどのリソースにどのような条件でアクションを実行できるかということです。
Resource
JSON ポリシー要素は、アクションが適用されるオブジェクトを指定します。ステートメントには、Resource
または NotResource
要素を含める必要があります。ベストプラクティスとして、Amazon リソースネーム (ARN) を使用してリソースを指定します。これは、リソースレベルの許可と呼ばれる特定のリソースタイプをサポートするアクションに対して実行できます。
オペレーションのリスト化など、リソースレベルの権限をサポートしないアクションの場合は、ステートメントがすべてのリソースに適用されることを示すために、ワイルドカード (*) を使用します。
"Resource": "*"
Amazon FSx リソースのタイプとその ARN の一覧を確認するには、サービス認可リファレンスの「Amazon FSx for Lustre で定義されるリソース」を参照してください。リソースごとの ARN を指定するためのアクションについては、「Amazon FSx for Lustre で定義されるアクション」を参照してください。
Amazon FSx のアイデンティティベースポリシーの例を確認するには、「Amazon FSx for Lustre のアイデンティティベースのポリシー例」を参照してください。
Amazon FSx のポリシー条件キー
サービス固有のポリシー条件キーのサポート: あり
管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どのプリンシパルがどんなリソースにどんな条件でアクションを実行できるかということです。
Condition
要素 (または Condition
ブロック) を使用すると、ステートメントが有効な条件を指定できます。Condition
要素はオプションです。イコールや未満などの 条件演算子 を使用して条件式を作成することで、ポリシーの条件とリクエスト内の値を一致させることができます。
1 つのステートメントに複数の Condition
要素を指定する場合、または 1 つの Condition
要素に複数のキーを指定する場合、AWSでは AND
論理演算子を使用してそれらを評価します。単一の条件キーに複数の値を指定する場合、AWS では OR
論理演算子を使用して条件を評価します。ステートメントの権限が付与される前にすべての条件が満たされる必要があります。
条件を指定する際にプレースホルダー変数も使用できます。例えば IAM ユーザーに、IAM ユーザー名がタグ付けされている場合のみリソースにアクセスできる権限を付与することができます。詳細については、IAM ユーザーガイドのIAM ポリシーの要素: 変数およびタグを参照してください。
AWS はグローバル条件キーとサービス固有の条件キーをサポートしています。すべての AWS グローバル条件キーを確認するには、IAM ユーザーガイド の「AWS グローバル条件コンテキストキー」を参照してください。
Amazon FSx での条件キーの一覧を確認するには、サービス認可リファレンスの「Amazon FSx for Lustre の条件キー」を参照してください。条件キーを使用できるアクションとリソースについては、「Amazon FSx for Lustre で定義されるアクション」を参照してください。
Amazon FSx のアイデンティティベースポリシーの例を確認するには、「Amazon FSx for Lustre のアイデンティティベースのポリシー例」を参照してください。
Amazon FSx アクセスコントロールリスト (ACL)
ACL のサポート: なし
Amazon FSx での属性ベースのアクセスコントロール (ABAC)
ABAC (ポリシー内のタグ) のサポート: あり
属性ベースのアクセス制御 (ABAC) は、属性に基づいてアクセス許可を定義する認可戦略です。AWS では、属性は タグ と呼ばれます。タグは、IAM エンティティ (ユーザーまたはロール)、および多数の AWS リソースにアタッチできます。エンティティとリソースのタグ付けは、ABAC の最初の手順です。その後、プリンシパルのタグがアクセスしようとしているリソースのタグと一致した場合にオペレーションを許可するように ABAC ポリシーをします。
ABAC は、急成長する環境やポリシー管理が煩雑になる状況で役立ちます。
タグに基づいてアクセスを管理するには、aws:ResourceTag/
、key-name
aws:RequestTag/
、または key-name
aws:TagKeys
の条件キーを使用して、ポリシーの 条件要素でタグ情報を提供します。
サービスがすべてのリソースタイプに対して 3 つの条件キーすべてをサポートする場合、そのサービスの値はありです。サービスが一部のリソースタイプに対してのみ 3 つの条件キーのすべてをサポートする場合、値は「部分的」になります。
ABAC の詳細については、「IAM ユーザーガイド」の「ABAC 認可でアクセス許可を定義する」を参照してください。ABAC をセットアップするステップを説明するチュートリアルについては、「IAM ユーザーガイド」の「属性に基づくアクセスコントロール (ABAC) を使用する」を参照してください。
Amazon FSx リソースのタグ付けの詳細については、「Amazon FSx for Lustre リソースのタグ付け」を参照してください。
リソースのタグに基づいてリソースへのアクセスを制限するためのアイデンティティベースのポリシーの例を表示するには、「タグを使用した Amazon FSx リソースへのアクセスのコントロール」を参照してください。
Amazon FSx でのテンポラリ認証情報の使用
一時的な認証情報のサポート: あり
AWS のサービス には、一時的な認証情報を使用してサインインしても機能しないものがあります。一時的な認証情報を利用できる AWS のサービス を含めた詳細情報については、「IAM ユーザーガイド」の「IAM と連携する」AWS のサービスを参照してください。
ユーザー名とパスワード以外の方法で AWS Management Console にサインインする場合は、一時的な認証情報を使用していることになります。例えば、会社のシングルサインオン (SSO) リンクを使用して AWS にアクセスすると、そのプロセスは自動的に一時認証情報を作成します。また、ユーザーとしてコンソールにサインインしてからロールを切り替える場合も、一時的な認証情報が自動的に作成されます。ロールの切り替えの詳細については、「IAM ユーザーガイド」の「ユーザーから IAM ロールに切り替える (コンソール)」を参照してください。
一時認証情報は、AWS CLIまたは AWS API を使用して手動で作成できます。作成後、一時認証情報を使用して AWS にアクセスできるようになります。AWSは、長期的なアクセスキーを使用する代わりに、一時認証情報を動的に生成することをお勧めします。詳細については、IAM の一時的セキュリティ認証情報を参照してください。
Amazon FSx の転送アクセスセッション
転送アクセスセッション (FAS) のサポート: あり
IAM ユーザーまたはロールを使用して AWS でアクションを実行するユーザーは、プリンシパルとみなされます。一部のサービスを使用する際に、アクションを実行してから、別のサービスの別のアクションを開始することがあります。FAS は、AWS のサービスを呼び出すプリンシパルの権限を、AWS のサービスのリクエストと合わせて使用し、ダウンストリームのサービスに対してリクエストを行います。FAS リクエストは、サービスが、完了するために他の AWS のサービス またはリソースとのやりとりを必要とするリクエストを受け取ったときにのみ行われます。この場合、両方のアクションを実行するためのアクセス許可が必要です。FAS リクエストを行う際のポリシーの詳細については、「転送アクセスセッション」を参照してください。
Amazon FSx のサービスロール
サービスロールのサポート: なし
サービスロールとは、サービスがユーザーに代わってアクションを実行するために引き受ける IAM ロールです。IAM 管理者は、IAM 内からサービスロールを作成、変更、削除できます。詳細については、「IAM ユーザーガイド」の「AWS のサービス にアクセス許可を委任するロールの作成」を参照してください。
警告
サービスロールの許可を変更すると、Amazon FSx の機能が破損する可能性があります。Amazon FSx が指示する場合以外は、サービスロールを編集しないでください。
Amazon FSx のサービスにリンクされたロール
サービスリンクロールのサポート: あり
サービスにリンクされたロールは、AWS のサービスにリンクされているサービスロールの一種です。サービスがロールを引き受け、ユーザーに代わってアクションを実行できるようになります。サービスにリンクされたロールは、AWS アカウント に表示され、サービスによって所有されます。IAM 管理者は、サービスにリンクされたロールのアクセス許可を表示できますが、編集することはできません。
Amazon FSx サービスにリンクされたロールの作成と管理の詳細については、「Amazon FSx のサービスリンクロールの使用」を参照してください。