访问权限控制

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 角色中添加权限。

如需详细了解自定义角色,请转至创建和管理自定义角色