为托管式区域设置和管理 IAM 政策
本页面介绍了如何为同一项目下的不同代管区域设置特定的读取、写入或管理员 Identity and Access Management (IAM) 权限。
如需详细了解 IAM 政策,请参阅了解允许政策。如需了解 IAM 政策 API,请参阅 Policy
。 如需了解如何创建可在托管区域使用的 IAM 自定义角色,请参阅了解 IAM 自定义角色。
执行此任务所需的权限
如需执行此任务,您必须已获得以下权限或 IAM 角色。
权限
- 用于
setIamPolicy
方法的 dns.managedZones.setIamPolicy
- 用于
getIamPolicy
方法的 dns.managedZones.getIamPolicy
- 用于
testIamPermission
方法的 dns.managedZones.list
角色
roles/iam.securityAdmin
roles/dns.admin
此过程假定您已在项目中创建代管区域。如需了解如何创建托管区域,请参阅创建、修改和删除区域。
为托管式区域设置 IAM 政策
如需对特定托管区域设置 IAM 政策,请按照以下步骤操作。
控制台
在 Trusted Cloud 控制台中,前往 Cloud DNS 区域页面。
前往 Cloud DNS 区域
选择要为其添加访问权限控制权限的一个或多个区域。
在资源权限页面上,点击添加主账号。
在授予对资源的访问权限页面上的新建主账号下,添加您希望添加为新主账号的用户、群组、网域或服务账号的电子邮件地址。
从分配角色列表中,选择要分配给主账号的角色。
如需分配更多角色,请点击添加其他角色。
点击保存。
gcloud
运行 gcloud dns managed-zones set-iam-policy
命令:
gcloud dns managed-zones set-iam-policy NAME \
--policy-file=POLICY-FILE
替换以下内容:
NAME
:要为其设置 IAM 权限的代管区域的名称
POLICY-FILE
:包含您要为代管区域指定的 IAM 政策的文件。如需查看政策文件示例,请参阅政策。
如果此命令成功运行,则会返回 IAM 政策。否则,将返回指定具体错误的错误消息。
API
使用 managedZone.setIamPolicy
方法发送 POST
请求:
POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE:setIamPolicy
替换以下内容:
PROJECT_ID
:项目的名称或 ID
MANAGED_ZONE
:要为其设置 IAM 权限的代管区域的名称
如需详细了解此 API 调用,请参阅 IAM Policy
API 页面上的绑定。
获取托管式区域的 IAM 政策
如需获取特定托管区域的 IAM 政策,请按以下步骤操作。
API
使用 managedZone.getIamPolicy
方法发送 POST
请求:
POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/ManagedZone:getIamPolicy
替换以下内容:
PROJECT_ID
:项目的名称或 ID
MANAGED_ZONE
:要为其设置 IAM 权限的代管区域的名称
检查托管区域的 IAM 权限
使用 managedZone.testIamPermissions
方法发送 POST
请求:
POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/ManagedZone:testIamPermissions
替换以下内容:
PROJECT_ID
:项目的名称或 ID
MANAGED_ZONE
:您要检查其 IAM 权限的托管区域的名称
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-08-25。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-08-25。"],[[["\u003cp\u003eThis guide outlines the process for configuring Identity and Access Management (IAM) permissions for read, write, or administrator access across different managed zones within a single project.\u003c/p\u003e\n"],["\u003cp\u003eSetting IAM policies for a managed zone can be achieved using the Google Cloud console, the \u003ccode\u003egcloud\u003c/code\u003e command-line tool, or the API, each with its specific steps and required parameters.\u003c/p\u003e\n"],["\u003cp\u003eRetrieving the current IAM policy for a managed zone is possible through the \u003ccode\u003egcloud\u003c/code\u003e command or the API, allowing users to view the existing permissions.\u003c/p\u003e\n"],["\u003cp\u003eTo check a managed zones IAM permissions you can use the API and by sending a \u003ccode\u003ePOST\u003c/code\u003e request.\u003c/p\u003e\n"],["\u003cp\u003eSpecific permissions, such as \u003ccode\u003edns.managedZones.setIamPolicy\u003c/code\u003e, \u003ccode\u003edns.managedZones.getIamPolicy\u003c/code\u003e, and \u003ccode\u003edns.managedZones.list\u003c/code\u003e, or roles like \u003ccode\u003eroles/iam.securityAdmin\u003c/code\u003e and \u003ccode\u003eroles/dns.admin\u003c/code\u003e, are necessary to perform IAM policy actions on managed zones.\u003c/p\u003e\n"]]],[],null,[]]