翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
IAM Access Analyzer AWS の使用
以下のセクションでは、 AWS Toolkit for Visual Studio Codeで IAM ポリシー検証とカスタムポリシーチェックを実行する方法について説明します。詳細については、 AWS Identity and Access Management 「 ユーザーガイド」の「IAM Access Analyzer ポリシーの検証」および「IAM Access Analyzer カスタムポリシーチェック」を参照してください。
前提条件
ツールキットから IAM Access Analyzer ポリシーチェックを使用する前に、次の前提条件を満たす必要があります。
Python バージョン 3.6 以降をインストールします。
Python CLI ツールで必要であり、IAM ポリシーチェックウィンドウで指定されている CloudFormation用の IAM Policy Validator
または Terraform 用の IAM Policy Validator のいずれかをインストールします。 AWS ロールの認証情報を設定します。
IAM Access Analyzerのポリシーチェック
を使用して、 CloudFormation テンプレート、Terraform プラン、JSON ポリシードキュメントのポリシーチェックを実行できます AWS Toolkit for Visual Studio Code。チェックの検出結果は VS Code の [Problems Panel] に表示されます。次の図は、VS Code の [Problems Panel] を示しています。
IAM Access Analyzer には 4 種類のチェックがあります。
ポリシーの検証
CheckAccessNotGranted
CheckNoNewAccess
CheckNoPublicAccess
次のセクションでは、各種類のチェックを実行する方法について説明します。
注記
任意のタイプのチェックを実行する前に、 AWS ロールの認証情報を設定します。サポートされているファイルには、 CloudFormation テンプレート、Terraform プラン、JSON ポリシードキュメントのドキュメントタイプが含まれます。
ファイルパス参照は通常、管理者またはセキュリティチームによって提供され、システムファイルパスまたは Amazon S3 バケット URI となります。Amazon S3 バケット URI を使用するには、現在のロールが Amazon S3 バケットにアクセスできる必要があります。
料金は、各カスタムポリシーチェックに関連付けられます。カスタムポリシーチェックの料金の詳細については、AWS IAM Access Analyzer の料金
ポリシー検証の実行
ポリシーの検証チェックは、ポリシーの検証とも呼ばれ、IAM ポリシーの文法と AWS ベストプラクティスに照らしてポリシーを検証します。詳細については、「 AWS Identity and Access Managementユーザーガイド」の「IAM JSON ポリシー言語の文法」と AWS 「IAM トピックのセキュリティのベストプラクティス」を参照してください。
VS Code から、VS Code AWS エディタで IAM ポリシーを含むサポートされているファイルを開きます。
IAM Access Analyzer ポリシーチェックを開くには、
CRTL+Shift+Pを押して VS Code コマンドパレットを開き、IAM Policy Checksを検索し、クリックして VS Code エディタの [IAM Policy Checks] ペインを開きます。[IAM Policy Checks] ペインで、ドロップダウンメニューからドキュメントタイプを選択します。
[Validate Policies] セクションから、[Run Policy Validation] ボタンを選択して、ポリシーの検証チェックを実行します。
VS Code [Problems Panel] から、ポリシーチェックの検出結果を確認します。
ポリシーを更新し、この手順を繰り返します。ポリシーチェックの結果にセキュリティ警告やエラーが表示されなくなるまで、ポリシーの検証チェックを再実行します。
CheckAccessNotGranted の実行
CheckAccessNotGranted は、特定の IAM アクションがポリシーで許可されていないことを確認するカスタムポリシーチェックです。
注記
ファイルパス参照は通常、管理者またはセキュリティチームによって提供され、システムファイルパスまたは Amazon S3 バケット URI となります。Amazon S3 バケット URI を使用するには、現在のロールが Amazon S3 バケットにアクセスできる必要があります。少なくとも 1 つのアクションまたはリソースを指定し、次の例にしたがってファイルを構成する必要があります。
{"actions": ["action1", "action2", "action3"], "resources": ["resource1", "resource2", "resource3"]}
VS Code から、VS Code AWS エディタで IAM ポリシーを含むサポートされているファイルを開きます。
IAM Access Analyzer ポリシーチェックを開くには、
CRTL+Shift+Pを押して VS Code コマンドパレットを開き、IAM Policy Checksを検索し、クリックして VS Code エディタの [IAM Policy Checks] ペインを開きます。[IAM Policy Checks] ペインで、ドロップダウンメニューからドキュメントタイプを選択します。
[Custom Policy Checks] セクションで、CheckAccessNotGranted を選択します。
テキスト入力フィールドに、アクションとリソースの ARN を含むカンマ区切りのリストを入力できます。少なくとも 1 つのアクションまたはリソースを指定する必要があります。
[Run Custom Policy Check] ボタンを選択します。
VS Code [Problems Panel] から、ポリシーチェックの検出結果を確認します。カスタムポリシーチェックは、
PASSまたはFAILの結果を返します。ポリシーを更新し、この手順を繰り返して、
PASSが返されるまで CheckAccessNotGranted チェックを再実行します。
CheckNoNewAccess の実行
CheckNoNewAccess は、ポリシーが参照ポリシーと比較して新しいアクセスを許可していないかを確認するカスタムポリシーチェックです。
VS Code から、VS Code AWS エディタで IAM ポリシーを含むサポートされているファイルを開きます。
IAM Access Analyzer ポリシーチェックを開くには、
CRTL+Shift+Pを押して VS Code コマンドパレットを開き、IAM Policy Checksを検索し、クリックして VS Code エディタの [IAM Policy Checks] ペインを開きます。[IAM Policy Checks] ペインで、ドロップダウンメニューからドキュメントタイプを選択します。
[Custom Policy Checks] セクションで、[CheckNoNewAccess] を選択します。
参照 JSON ポリシードキュメントを入力します。または、JSON ポリシードキュメントを参照するファイルパスを指定することもできます。
参照ドキュメントのタイプに一致する参照ポリシータイプを選択します。
[Run Custom Policy Check] ボタンを選択します。
VS Code [Problems Panel] から、ポリシーチェックの検出結果を確認します。カスタムポリシーチェックは、
PASSまたはFAILの結果を返します。ポリシーを更新し、この手順を繰り返して、
PASSが返されるまで CheckNoNewAccess チェックを再実行します。
CheckNoPublicAccess の実行
CheckNoPublicAccess は、テンプレート内のサポートされているリソースタイプに対して、ポリシーがパブリックアクセスを付与していないかを検証するためのカスタムポリシーチェックです。
サポートされているリソースタイプの詳細については、cloudformation-iam-policy-validator
VS Code から、VS Code AWS エディタで IAM ポリシーを含むサポートされているファイルを開きます。
IAM Access Analyzer ポリシーチェックを開くには、
CRTL+Shift+Pを押して VS Code コマンドパレットを開き、IAM Policy Checksを検索し、クリックして VS Code エディタの [IAM Policy Checks] ペインを開きます。[IAM Policy Checks] ペインで、ドロップダウンメニューからドキュメントタイプを選択します。
[Custom Policy Checks] セクションで、[CheckNoPublicAccess] を選択します。
[Run Custom Policy Check] ボタンを選択します。
VS Code [Problems Panel] から、ポリシーチェックの検出結果を確認します。カスタムポリシーチェックは、
PASSまたはFAILの結果を返します。ポリシーを更新し、この手順を繰り返して、
PASSが返されるまで CheckNoNewAccess チェックを再実行します。