本页面介绍如何管理现有访问权限政策。您可以执行以下操作:
获取访问权限政策的名称和 etag
控制台
Google Cloud 控制台不支持管理访问权限政策。如果要管理访问政策,则必须使用 gcloud
命令行工具或 API。
gcloud
要获取访问政策的名称,请使用 list
命令。gcloud
命令行工具的所有访问权限级别命令均需要访问政策名称。
gcloud access-context-manager policies list \ --organization ORGANIZATION_ID
其中:
- ORGANIZATION_ID 是您的组织的数字 ID。
您应看到如下输出:
NAME ORGANIZATION TITLE ETAG 1034095178592 511928527926 Corp Policy 10bc3c76ca809ab2
API
要获取访问政策的名称,请调用 accessPolicies.list
。
GET https://accesscontextmanager.googleapis.com/v1/accessPolicies
请求正文
请求正文必须为空。
响应正文
如果成功,响应正文将类似于以下内容:
{ "accessPolicies": [ { object(AccessPolicy) } ], "nextPageToken": string }
其中:
accessPolicies
是AccessPolicy
对象的列表。
为 gcloud
命令行工具设置默认访问权限政策
使用 gcloud
命令行工具时,您可以设置默认访问权限政策。设置默认政策时,每次使用 Access Context Manager 命令时都不再需要指定政策。
要设置默认访问政策,请使用 config
命令。
gcloud config set access_context_manager/policy POLICY_NAME
其中:
- POLICY_NAME 是访问权限政策的数字名称。
委托访问权限政策
控制台
Google Cloud 控制台不支持管理访问权限政策。如果要管理访问政策,则必须使用 gcloud
命令行工具或 API。
gcloud
要通过将主账号和角色绑定到范围限定的访问权限政策来委派管理,请使用 add-iam-policy-binding
命令。
gcloud access-context-manager policies add-iam-policy-binding \ [POLICY] --member=PRINCIPAL --role=ROLE
其中:
POLICY 是政策的 ID 或政策的完全限定标识符。
PRINCIPAL 是要添加绑定的主账号。请按以下格式指定:
user|group|serviceAccount:email
或domain:domain
。ROLE 是要分配给主账号的角色名称。角色名称是预定义角色的完整路径(例如
roles/accesscontextmanager.policyEditor
),或自定义角色的角色 ID(例如organizations/{ORGANIZATION_ID}/roles/accesscontextmanager.policyEditor
)。
API
如需委派范围限定访问权限政策的管理,请执行以下操作:
创建请求正文。
{ "policy": "IAM_POLICY", }
其中:
- IAM_POLICY 是绑定的集合。绑定操作会将一个或多个成员或主账号绑定到单个角色。主账号可以是用户账号、服务账号、Google 群组和网域。角色是一组指定的权限;每个角色可以是 IAM 预定义角色或用户创建的自定义角色。
通过调用
accessPolicies.setIamPolicy
委派访问权限政策。POST https://accesscontextmanager.googleapis.com/v1/accessPolicies
响应正文
如果成功,则响应正文包含一个 policy
实例。
描述访问权限政策
控制台
Google Cloud 控制台不支持管理访问权限政策。如果要管理访问政策,则必须使用 gcloud
命令行工具或 API。
gcloud
要描述您的访问政策,请使用 describe
命令。
gcloud access-context-manager policies describe POLICY_NAME
其中:
- POLICY_NAME 是您的政策的数字名称。
此时会显示以下输出:
name: accessPolicies/1034095178592 parent: organizations/511928527926 title: Corp Policy
API
要描述您的访问政策,请调用 accessPolicies.get
GET https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME
其中:
- POLICY_NAME 是您的政策的数字名称。
请求正文
请求正文必须为空。
响应正文
如果成功,则响应正文包含一个 AccessPolicy
对象。
更新访问权限政策
控制台
Google Cloud 控制台不支持管理访问权限政策。如果要管理访问政策,则必须使用 gcloud
命令行工具或 API。
gcloud
要更新访问政策,请使用 update
命令。目前,您只能更改政策的标题。
gcloud access-context-manager policies update POLICY_NAME \ --title=POLICY_TITLE
其中:
POLICY_NAME 是您的政策的数字名称。
POLICY_TITLE 是直观易懂的政策标题。
此时会显示以下输出:
Waiting for PATCH operation [accessPolicies/POLICY_NAME/update/1542234231134882]...done.
API
目前,您只能更改访问权限政策的标题。
要更新您的政策,请执行以下操作:
创建请求正文。
{ "parent": "ORGANIZATION_ID", "title": "POLICY_TITLE" }
其中:
ORGANIZATION_ID 是您的组织的数字 ID。
POLICY_TITLE 是直观易懂的政策标题。
-
PATCH https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/UPDATE_MASK
其中:
POLICY_NAME 是您的政策的数字名称。
UPDATE_MASK 是一个字符串,表示要更新的值。例如
title
。
响应正文
如果成功,调用的响应正文将包含一个
Operation
资源,用于提供与PATCH
操作相关的详细信息。
删除访问权限政策
控制台
Google Cloud 控制台目前不支持管理访问权限政策。如果要管理访问政策,则必须使用 gcloud
命令行工具或 API。
gcloud
要删除访问权限政策,请执行以下操作:
使用
delete
命令。gcloud access-context-manager policies delete POLICY_NAME
其中:
- POLICY_NAME 是您的政策的数字名称。
确认您要删除访问权限政策。
例如:
You are about to delete policy [POLICY_NAME] Do you want to continue (Y/n)?
此时会显示以下输出:
Deleted policy [1034095178592].
API
要删除访问政策,请调用 accessPolicies.delete
。
DELETE https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME
其中:
- POLICY_NAME 是您的政策的数字名称。
请求正文
请求正文必须为空。
响应正文
如果成功,调用的响应正文将包含一个 Operation
资源,用于提供与 DELETE
操作相关的详细信息。