プリンシパル アクセス境界(PAB)ポリシーの Policy Simulator では、変更を commit する前に、プリンシパル アクセス境界ポリシーまたはバインディングへの変更がプリンシパルのアクセス権にどのように影響するかを確認できます。Policy Simulator を使用すると、プリンシパル アクセス境界ポリシーまたはバインディングの変更を適用する前に、その変更が与える可能性のある影響を把握できます。
この機能は、プリンシパル アクセス境界ポリシーとポリシー バインディングに基づいてアクセスを評価するだけです。
他のポリシータイプの変更をシミュレートする方法については、以下をご覧ください。
プリンシパル アクセス境界ポリシーの Policy Simulator の仕組み
プリンシパル アクセス境界ポリシーの Policy Simulator を使用すると、プリンシパル アクセス境界ポリシーまたはポリシー バインディングの変更が組織内のプリンシパルのアクセスにどのように影響するかを判断できます。
プリンシパル アクセス境界ポリシーまたはポリシー バインディングのシミュレーションを実行すると、Policy Simulator は次の処理を行います。
現在のプリンシパル アクセス境界ポリシーとバインディング、シミュレートされたプリンシパル アクセス境界ポリシーまたはバインディングのコンテキストで、再生期間中に生成された組織のアクセスログを確認します。
アクセス権の変更の一連の変更を返します。これらのアクセス権の変更は、シミュレートされたポリシーまたはバインディングを適用した場合に、ログのどのアクセス試行の結果が異なる可能性が高いかを示します。
Policy Simulator が返すアクセス権の変更の詳細については、Policy Simulator の結果をご覧ください。
再生期間
リプレイ期間は、シミュレーションの実行時に Policy Simulator がアクセスログを取得する期間です。再生期間の初日より前または再生期間の最終日より後に発生したアクセスログは、シミュレーションに含まれません。
通常、再生期間の最終日はシミュレーションの 1 日前です。ただし、場合によっては、再生期間の最終日がシミュレーションの 10 日前になることがあります。再生期間の最終日以降に発生したアクセスログは、シミュレーションに含まれません。
再生期間は 90 日間です。組織が 90 日以上存在していない場合、Policy Simulator は、組織が作成されてからのすべてのアクセス試行を取得します。
再生ウィンドウにも結果整合性があります。つまり、シミュレーションを実行すると、一部のデータが他のデータよりも新しい可能性があります。ただし、最終的にはすべてのデータの鮮度が同じになります。
Policy Simulator の結果
プリンシパル アクセス境界の Policy Simulator は、プリンシパル アクセス境界ポリシーまたはバインディングに対して提案された変更の影響を、アクセス権の変更のリストとしてレポートします。アクセス権の変更とは、シミュレートされたポリシーが適用された場合に結果が異なる可能性のある、リプレイ期間のアクセス試行を表します。
Policy Simulator は、アクセス権の変更ごとに次の情報もレポートします。
- アクセス試行に関与したプリンシパル、権限、リソース(利用可能な場合)。
- プリンシパルが権限を使用してリソースにアクセスしようとした、再生期間中の日数。この合計には、最新のアクセス試行と同じ結果のアクセス試行のみが含まれます。
- 最後にアクセスが試行された日付。
アクセス権の変更
アクセス変更は、関連するプリンシパル アクセス境界ポリシーに基づいて、シミュレートされたポリシーまたはバインディングを適用すると、ユーザーのアクセス権が変更される可能性が高いことを示します。アクセス権の変更は、アクセス権の付与またはアクセス権の取り消しのいずれかになります。
アクセス変更を計算する場合、プリンシパル アクセス境界の Policy Simulator は、プリンシパル アクセス境界ポリシーとバインディングのみを評価します。他のポリシータイプは評価されません。
Policy Simulator は、次の情報を使用してアクセス権の変更を計算します。
- 最近のアクセス試行の結果
- 現在のプリンシパル アクセス境界ポリシーとバインディングの影響
- 提案されたプリンシパル アクセス境界ポリシーとバインディングの影響
アクセスが許可されるには、次の条件をすべて満たす必要があります。
- 最近のアクセス試行がブロックされました
- 現在のプリンシパル アクセス境界ポリシーとバインディングによってアクセスがブロックされている
- 提案されたプリンシパル アクセス境界ポリシーとバインディングによってアクセスがブロックされない
アクセスが取り消されるには、次の条件をすべて満たしている必要があります。
- 最近のアクセス試行はブロックされていません
- 現在のプリンシパル アクセス境界ポリシーとバインディングによってアクセスがブロックされていない
- 提案されたプリンシパル アクセス境界ポリシーとバインディングによってアクセスがブロックされる
プリンシパル アクセス境界ポリシーとバインディングのセットは、次の条件がすべて満たされている場合に、プリンシパルのアクセスをブロックします。
- プリンシパル アクセス境界ポリシーはプリンシパルのアクセス権に影響します。つまり、プリンシパルは、リクエスト内の権限をサポートする適用バージョンを持つプリンシパル アクセス境界ポリシーの対象となります。
- プリンシパルが適用されるプリンシパル アクセス境界ポリシーにリソースが含まれていません。
次のいずれかの条件が満たされている場合、プリンシパル アクセス境界ポリシーとバインディングのセットはプリンシパルのアクセスをブロックしません。
- プリンシパル アクセス境界ポリシーは、プリンシパルのアクセス権に影響しません。つまり、プリンシパルは、リクエスト内の権限をサポートする適用バージョンを持つプリンシパル アクセス境界ポリシーの対象ではありません。
- プリンシパルが適用されるプリンシパル アクセス境界ポリシーの少なくとも 1 つにリソースが含まれている。
エラー
次のエラーが発生すると、シミュレーションが失敗する可能性があります。
- タイムアウト: シミュレーションの実行に時間がかかりすぎてタイムアウトしました。この問題を解決するには、もう一度シミュレーションを実行します。
- 無効なシミュレーションの構築: 提案されたプリンシパル アクセス境界ポリシーまたはプリンシパル アクセス境界ポリシー バインディングが無効です。たとえば、提案されたポリシーに無効な条件式が含まれている場合や、提案されたバインディングが、すでに最大数のポリシーにバインドされているプリンシパル セットを対象としている場合などです。解決するには、ポリシーまたはバインディングを修正して、もう一度お試しください。
- Permission denied: シミュレーションを実行する権限がありません。解決するには、必要なロールが付与されていることを確認してから、もう一度お試しください。
サポートされているプリンシパル タイプ
プリンシパル アクセス境界ポリシーの Policy Simulator は、次のタイプのプリンシパルのアクセスログのみを確認します。
- Google アカウント
- サービス アカウント
プリンシパル アクセス境界ポリシーとバインディングをシミュレートする場合、Policy Simulator は他のプリンシパル タイプのアクセスログを確認しません。そのため、ポリシーまたはバインディングに対する提案された変更が、これらのプリンシパルのアクセス権に影響するかどうかはレポートされません。
次のステップ
- プリンシパル アクセス境界ポリシーまたはバインディングの変更をシミュレートする方法を確認する。
- その他の Policy Intelligence ツールを調べる。