権限付与のステータスと履歴を確認したり、他のプリンシパルの有効な権限付与を取り消すことができます。権限付与の履歴は、権限付与の終了後 30 日間利用できます。
始める前に
Privileged Access Manager を有効にして、権限を設定していることを確認します。
Google Cloud コンソールを使用して権限付与を表示する
権限付与を表示するには、次の操作を行います。
[Privileged Access Manager] ページに移動します。
権限付与を表示する組織、フォルダ、またはプロジェクトを選択します。
[権限付与] タブをクリックし、[すべてのユーザーに対する権限付与] タブをクリックします。このタブには、すべての権限付与、それらの権限付与のリクエスト元、権限付与のステータスが表示されます。権限付与のステータスは次のとおりです。
ステータス 説明 有効にしています 権限付与の有効化中です。 有効にできませんでした 再取得できないエラーのため、Privileged Access Manager がロールを付与できませんでした。 有効 権限付与が有効で、プリンシパルがロールで許可されているリソースにアクセスできます。 承認待ち 権限付与リクエストは、承認者の決定を待機しています。 拒否 承認者が権限付与リクエストを拒否しました。 終了 権限付与が終了し、プリンシパルからロールが削除されました。 期限切れ 24 時間以内に承認されなかったため、権限付与リクエストが期限切れになりました。 取り消し済み 権限付与が取り消され、プリンシパルはロールで許可されているリソースにアクセスできなくなります。 無効にしています 権限付与の取り消し中です。 ステータスのラベル
これらのステータスに加えて、ステータスの横に次のステータス ラベルが表示される場合があります。これは、特別な条件を示します。
IAM を通して変更
この権限付与に関連付けられた IAM ポリシー バインディングが IAM で直接変更されています。変更されたバインディングの詳細については、Google Cloud コンソールの IAM ページをご覧ください。変更された権限が取り消された場合や終了した場合、Privileged Access Manager は、IAM で変更されていないバインディングのみを削除します。
IAM 条件のタイトルまたは式の変更、または付与されたロールに対するリクエスト エージェントのアクセス権の削除は、外部変更として扱われます。IAM 条件の説明の追加または変更は、外部による変更とは見なされません。
Privileged Access Manager は、5 分ごとに権限に対する外部変更を確認します。変更が反映されるまでに 5 分ほどかかることがあります。この 5 分間に行われた一時的な変更を元に戻すと、Privileged Access Manager で検出されない場合があります。
表で、確認する利用資格と同じ行にある
(その他のオプション)をクリックします。履歴を含む権限付与の詳細を表示するには、[詳細を表示] をクリックします。このパネルから権限を取り消すこともできます。
有効な権限付与を取り消すには、[権限付与を取り消す] をクリックします。
一時的に付与されたロールは、Google Cloud コンソールの [IAM] ページでも確認できます。[プリンシパル別に表示] タブで、一時的に付与されたロールの条件は「作成者: PAM」です。
プログラムで権限付与を表示する
プログラムで権限付与を表示するには、権限付与を検索、一覧表示、取得します。
権限付与を検索する
gcloud
gcloud beta pam grants search
コマンドは、作成され、承認または拒否可能な権限と、すでに承認または拒否された権限を検索します。この方法では、Privileged Access Manager の特定の権限は必要ありません。
後述のコマンドデータを使用する前に、次のように置き換えます。
ENTITLEMENT_ID
: 権限付与の利用資格の ID。 ID は、利用資格の表示で取得できます。-
CALLER_RELATIONSHIP_TYPE
: 次のいずれかの値を使用できます。had-created
: 呼び出し元が作成した権限を返します。had-approved
: 呼び出し元が承認または拒否した権限を返します。can-approve
: 呼び出し元が承認または拒否できる権限を返します。
RESOURCE_TYPE
: 省略可。利用資格が属するリソースタイプ。値organization
、folder
、またはproject
を使用します。RESOURCE_ID
:RESOURCE_TYPE
とともに使用します。利用資格を管理する Google Cloud プロジェクト、フォルダ、または組織の ID。プロジェクト ID は英数字からなる文字列です(例:my-project
)。フォルダ ID と組織 ID は数値です(例:123456789012
)。
次のコマンドを実行します。
Linux、macOS、Cloud Shell
gcloud beta pam grants search \ --entitlement=ENTITLEMENT_ID \ --caller-relationship=CALLER_RELATIONSHIP_TYPE \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows(PowerShell)
gcloud beta pam grants search ` --entitlement=ENTITLEMENT_ID ` --caller-relationship=CALLER_RELATIONSHIP_TYPE ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows(cmd.exe)
gcloud beta pam grants search ^ --entitlement=ENTITLEMENT_ID ^ --caller-relationship=CALLER_RELATIONSHIP_TYPE ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
次のようなレスポンスが返されます。
additionalEmailRecipients: - bola@example.com createTime: '2024-03-07T00:34:32.557017289Z' justification: unstructuredJustification: Renaming a file to mitigate issue #312 name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID privilegedAccess: gcpIamAccess: resource: //cloudresourcemanager.googleapis.com/projects/my-project resourceType: cloudresourcemanager.googleapis.com/Project roleBindings: - role: roles/storage.admin requestedDuration: 3600s requester: cruz@example.com state: DENIED timeline: events: - eventTime: '2024-03-07T00:34:32.793769042Z' requested: expireTime: '2024-03-08T00:34:32.793769042Z' - denied: actor: alex@example.com reason: Issue has already been resolved eventTime: '2024-03-07T00:36:08.309116203Z' updateTime: '2024-03-07T00:34:32.926967128Z'
REST
Privileged Access Manager API の searchGrants
メソッドは、作成した権限付与、承認または拒否できる権限付与、すでに承認または拒否した権限付与を検索します。この方法では、Privileged Access Manager の特定の権限は必要ありません。
リクエストのデータを使用する前に、次のように置き換えます。
SCOPE
: 利用資格が含まれる組織、フォルダ、またはプロジェクト。organizations/ORGANIZATION_ID
、folders/FOLDER_ID
、またはprojects/PROJECT_ID
の形式です。プロジェクト ID は英数字からなる文字列です(例:my-project
)。フォルダ ID と組織 ID は数値です(例:123456789012
)。ENTITLEMENT_ID
: 権限付与の利用資格の ID。 ID は、利用資格の表示で取得できます。RELATIONSHIP_TYPE
: 有効な値は次のとおりです。HAD_CREATED
: 呼び出し元が作成した権限を返します。HAD_APPROVED
: 呼び出し元が以前に承認または拒否した権限を返します。CAN_APPROVE
: 呼び出し元が承認または拒否できる権限を返します。
FILTER
: 省略可。フィールド値が AIP-160 式と一致する権限付与を返します。PAGE_SIZE
: 省略可。レスポンスで返すアイテムの数。PAGE_TOKEN
: 省略可。前のレスポンスで返されたページトークンを使用して、レスポンスの開始ページを指定します。
HTTP メソッドと URL:
GET https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID/grants:search?callerRelationship=RELATIONSHIP_TYPE&filter=FILTER&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN
リクエストを送信するには、次のいずれかのオプションを開きます。
次のような JSON レスポンスが返されます。
{ "grants": [ { "name": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID", "createTime": "2024-03-06T03:08:49.330577625Z", "updateTime": "2024-03-06T03:08:49.625874598Z", "requester": "alex@example.com", "requestedDuration": "3600s", "justification": { "unstructuredJustification": "Emergency service for outage" }, "state": "APPROVAL_AWAITED", "timeline": { "events": [ { "eventTime": "2024-03-06T03:08:49.462765846Z", "requested": { "expireTime": "2024-03-07T03:08:49.462765846Z" } } ] }, "privilegedAccess": { "gcpIamAccess": { "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/my-project", "roleBindings": [ { "role": "roles/storage.admin" } ] } }, "additionalEmailRecipients": [ "bola@google.com" ] } ] }
権限付与を一覧表示する
gcloud
gcloud beta pam grants list
コマンドは、特定の利用資格に属する権限付与を一覧表示します。
後述のコマンドデータを使用する前に、次のように置き換えます。
ENTITLEMENT_ID
: 権限付与の利用資格の ID。 ID は、利用資格の表示で取得できます。RESOURCE_TYPE
: 省略可。利用資格が属するリソースタイプ。値organization
、folder
、またはproject
を使用します。RESOURCE_ID
:RESOURCE_TYPE
とともに使用します。利用資格を管理する Google Cloud プロジェクト、フォルダ、または組織の ID。プロジェクト ID は英数字からなる文字列です(例:my-project
)。フォルダ ID と組織 ID は数値です(例:123456789012
)。
次のコマンドを実行します。
Linux、macOS、Cloud Shell
gcloud beta pam grants list \ --entitlement=ENTITLEMENT_ID \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows(PowerShell)
gcloud beta pam grants list ` --entitlement=ENTITLEMENT_ID ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows(cmd.exe)
gcloud beta pam grants list ^ --entitlement=ENTITLEMENT_ID ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
次のようなレスポンスが返されます。
createTime: '2024-03-25T23:10:16.952789492Z' justification: unstructuredJustification: Adding missing file for service to work properly name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID privilegedAccess: gcpIamAccess: resource: //cloudresourcemanager.googleapis.com/projects/my-project resourceType: cloudresourcemanager.googleapis.com/Project roleBindings: - role: roles/storage.admin requestedDuration: 1800s requester: alex@example.com state: EXPIRED timeline: events: - eventTime: '2024-03-25T23:10:17.155612987Z' requested: expireTime: '2024-03-26T23:10:17.155612987Z' - eventTime: '2024-03-26T23:10:17.279777370Z' expired: {} updateTime: '2024-03-25T23:10:17.273416257Z'
REST
Privileged Access Manager API の listGrants
メソッドは、特定の利用資格に属する権限付与を一覧表示します。
リクエストのデータを使用する前に、次のように置き換えます。
SCOPE
: 利用資格が含まれる組織、フォルダ、またはプロジェクト。organizations/ORGANIZATION_ID
、folders/FOLDER_ID
、またはprojects/PROJECT_ID
の形式です。プロジェクト ID は英数字からなる文字列です(例:my-project
)。フォルダ ID と組織 ID は数値です(例:123456789012
)。ENTITLEMENT_ID
: 権限付与の利用資格の ID。 ID は、利用資格の表示で取得できます。FILTER
: 省略可。フィールド値が AIP-160 式と一致する権限付与を返します。PAGE_SIZE
: 省略可。レスポンスで返すアイテムの数。PAGE_TOKEN
: 省略可。前のレスポンスで返されたページトークンを使用して、レスポンスの開始ページを指定します。
HTTP メソッドと URL:
GET https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID?filter=FILTER&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN
リクエストを送信するには、次のいずれかのオプションを開きます。
次のような JSON レスポンスが返されます。
{ "grants": [ { "name": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID", "createTime": "2024-03-06T03:08:49.330577625Z", "updateTime": "2024-03-06T03:08:49.625874598Z", "requester": "alex@example.com", "requestedDuration": "3600s", "justification": { "unstructuredJustification": "Emergency service for outage" }, "state": "APPROVAL_AWAITED", "timeline": { "events": [ { "eventTime": "2024-03-06T03:08:49.462765846Z", "requested": { "expireTime": "2024-03-07T03:08:49.462765846Z" } } ] }, "privilegedAccess": { "gcpIamAccess": { "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/my-project", "roleBindings": [ { "role": "roles/storage.admin" } ] } }, "additionalEmailRecipients": [ "bola@google.com" ] } ] }
権限付与を取得する
gcloud
gcloud beta pam grants describe
コマンドは、特定の権限付与を取得します。
後述のコマンドデータを使用する前に、次のように置き換えます。
GRANT_ID
: 詳細を取得する権限付与の ID。ENTITLEMENT_ID
: 権限付与の利用資格の ID。RESOURCE_TYPE
: 省略可。利用資格が属するリソースタイプ。値organization
、folder
、またはproject
を使用します。RESOURCE_ID
:RESOURCE_TYPE
とともに使用します。利用資格を管理する Google Cloud プロジェクト、フォルダ、または組織の ID。プロジェクト ID は英数字からなる文字列です(例:my-project
)。フォルダ ID と組織 ID は数値です(例:123456789012
)。
次のコマンドを実行します。
Linux、macOS、Cloud Shell
gcloud beta pam grants describe \ GRANT_ID \ --entitlement=ENTITLEMENT_ID \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows(PowerShell)
gcloud beta pam grants describe ` GRANT_ID ` --entitlement=ENTITLEMENT_ID ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows(cmd.exe)
gcloud beta pam grants describe ^ GRANT_ID ^ --entitlement=ENTITLEMENT_ID ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
次のようなレスポンスが返されます。
createTime: '2024-03-25T23:10:16.952789492Z' justification: unstructuredJustification: Adding missing file for service to work properly name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID privilegedAccess: gcpIamAccess: resource: //cloudresourcemanager.googleapis.com/projects/my-project resourceType: cloudresourcemanager.googleapis.com/Project roleBindings: - role: roles/storage.admin requestedDuration: 1800s requester: alex@example.com state: EXPIRED timeline: events: - eventTime: '2024-03-25T23:10:17.155612987Z' requested: expireTime: '2024-03-26T23:10:17.155612987Z' - eventTime: '2024-03-26T23:10:17.279777370Z' expired: {} updateTime: '2024-03-25T23:10:17.273416257Z'
REST
Privileged Access Manager API の getGrant
メソッドは、特定の権限付与を取得します。
リクエストのデータを使用する前に、次のように置き換えます。
SCOPE
: 利用資格が含まれる組織、フォルダ、またはプロジェクト。organizations/ORGANIZATION_ID
、folders/FOLDER_ID
、またはprojects/PROJECT_ID
の形式です。プロジェクト ID は英数字からなる文字列です(例:my-project
)。フォルダ ID と組織 ID は数値です(例:123456789012
)。ENTITLEMENT_ID
: 権限付与の利用資格の ID。GRANT_ID
: 詳細を取得する権限付与の ID。
HTTP メソッドと URL:
GET https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID
リクエストを送信するには、次のいずれかのオプションを開きます。
次のような JSON レスポンスが返されます。
{ "name": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID", "createTime": "2024-03-06T03:08:49.330577625Z", "updateTime": "2024-03-06T03:08:49.625874598Z", "requester": "alex@example.com", "requestedDuration": "3600s", "justification": { "unstructuredJustification": "Emergency service for outage" }, "state": "APPROVAL_AWAITED", "timeline": { "events": [ { "eventTime": "2024-03-06T03:08:49.462765846Z", "requested": { "expireTime": "2024-03-07T03:08:49.462765846Z" } } ] }, "privilegedAccess": { "gcpIamAccess": { "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/my-project", "roleBindings": [ { "role": "roles/storage.admin" } ] } }, "additionalEmailRecipients": [ "bola@google.com" ] }