Google Cloud 提供 Identity and Access Management (IAM),可让您授予对特定 Google Cloud 资源的细化访问权限,并防止对其他资源进行不必要的访问。本页面介绍了 Cloud Trace 的 IAM 角色。
要了解如何向用户或服务帐号分配 IAM 角色,请阅读 IAM 文档中的管理政策。
权限和角色
本部分汇总了 Cloud Trace 支持的各种权限和角色。
API 权限
下表列出了调用方在调用 Cloud Trace API 中的每个方法时必须具有的权限:
方法 (REST/RPC) | 所需权限 | 适用的资源类型 |
---|---|---|
projects.traces.list / ListTraces |
cloudtrace.traces.list |
项目 |
projects.traces.get / GetTrace |
cloudtrace.traces.get |
项目 |
projects.patchTraces / PatchTraces |
cloudtrace.traces.patch |
项目 |
projects.traces.batchWrite / BatchWriteSpans |
cloudtrace.traces.patch |
项目 |
projects.traces.spans.createSpan / CreateSpan |
cloudtrace.traces.patch |
项目 |
projects.traceSinks.list / ListTracesSinks |
cloudtrace.tracesinks.list |
项目 |
projects.traceSinks.get / GetTraceSink |
cloudtrace.tracesinks.get |
项目 |
projects.traceSinks.create / CreateTraceSink |
cloudtrace.tracesinks.create |
项目 |
projects.traceSinks.patch / UpdateTraceSink |
cloudtrace.tracesinks.update |
项目 |
projects.traceSinks.delete / DeleteTraceSink |
cloudtrace.tracesinks.delete |
项目 |
控制台权限
下表列出了在 Cloud Console 中使用 Cloud Trace 页面所需的权限:
活动 | 所需权限 |
---|---|
对 Trace 控制台的只读权限。 | cloudtrace.insights.get cloudtrace.insights.list cloudtrace.stats.get cloudtrace.tasks.get cloudtrace.tasks.list cloudtrace.traces.get cloudtrace.traces.list resourcemanager.projects.get resourcemanager.projects.list |
添加在控制台中创建分析报告的功能。 | 只读权限外加以下权限:cloudtrace.tasks.create |
添加在控制台中删除分析报告的功能。 | 只读权限外加以下权限:cloudtrace.tasks.delete |
添加在控制台中显示日志的功能。 | 只读权限外加以下权限:logging.logEntries.list |
添加显示 App Engine 服务和版本过滤器菜单的功能。 | 只读权限外加以下权限:appengine.applications.get appengine.services.list appengine.versions.list |
cloud.tasks.*
权限与分析报告的管理相关。cloudtrace.insights.*
权限用于显示跟踪记录数据分析。控制台可通过 cloudtrace.stats.get
检索当前项目的最常见 URI 和网址以及项目特定的跟踪记录统计信息。
角色
IAM 角色包括权限,可以分配给用户、组和服务帐号。以下角色包括列出的 Cloud Trace 权限:
角色名称 | 跟踪权限 | 说明 |
---|---|---|
roles/cloudtrace.agent Cloud Trace Agent |
cloudtrace.traces.patch |
适用于服务帐号。能够将数据发送到 Trace 来写入跟踪记录。 |
roles/cloudtrace.user Cloud Trace User |
cloudtrace.insights.get cloudtrace.insights.list cloudtrace.stats.get cloudtrace.tasks.create cloudtrace.tasks.delete cloudtrace.tasks.get cloudtrace.tasks.list cloudtrace.traces.get cloudtrace.traces.list resourcemanager.projects.get resourcemanager.projects.list cloudtrace.tracesinks.list cloudtrace.tracesinks.create cloudtrace.tracesinks.get cloudtrace.tracesinks.update cloudtrace.tracesinks.delete |
Trace 控制台的完整访问权限,跟踪记录的读取权限 以及接收器的读写权限。 |
roles/cloudtrace.admin Cloud Trace Admin |
roles/cloudtrace.user 中的权限,加上:cloudtrace.traces.patch |
Trace 控制台的完整访问权限,跟踪记录的读写权限 以及接收器的读写权限。 |
roles/viewer Project Viewer |
cloudtrace.insights.get cloudtrace.insights.list cloudtrace.stats.get cloudtrace.tasks.get cloudtrace.tasks.list cloudtrace.traces.get cloudtrace.traces.list resourcemanager.projects.get resourcemanager.projects.list cloudtrace.tracesinks.list cloudtrace.tracesinks.get |
拥有 Trace 控制台、跟踪记录和接收器的读取权限。 |
roles/editor Project Editor |
roles/viewer 的权限,加上:cloudtrace.tasks.create cloudtrace.tasks.delete |
对 Trace 控制台的读写权限以及对跟踪记录的读取权限。 |
roles/owner Project Owner |
roles/editor 的权限,加上:cloudtrace.traces.patch |
对 Trace 控制台和跟踪记录的读写权限。 |
自定义角色
如需创建包含 Cloud Trace 权限的自定义角色,请执行以下操作:
- 如需使角色仅能授予 Cloud Trace API 权限,请从上文 API 权限部分的权限中进行选择。
- 如需使角色能够授予 Cloud Trace API 和控制台的权限,请选择上一节(控制台权限)中的权限组。
- 如需授予向跟踪记录写入数据的权限,请在角色部分的
roles/cloudtrace.agent
角色中添加权限。
如需详细了解自定义角色,请转至创建和管理自定义角色。