×

GET /v1/debug/authz/trace

流式传输所有传入请求的授权跟踪。

描述

参数

内容类型

  • application/json

响应

表 1. HTTP 响应代码
代码 消息 数据类型

200

成功的响应。(流式响应)

Stream_result_of_v1AuthorizationTraceResponse

0

意外的错误响应。

GooglerpcStatus

示例

公共对象引用

AuthorizationTraceResponseResponseStatus

枚举值

UNKNOWN_STATUS

SUCCESS

FAILURE

AuthorizationTraceResponseTrace

字段名称 必填 可为空 类型 描述 格式

scopeCheckerType

字符串

内置

TraceBuiltInAuthorizer

AuthorizationTraceResponseUserRole

字段名称 必填 可为空 类型 描述 格式

名称

字符串

权限

StorageAccess 的映射

访问范围名称

字符串

访问范围

SimpleAccessScopeRules

GooglerpcStatus

字段名称 必填 可为空 类型 描述 格式

代码

整数

int32

消息

字符串

详情

ProtobufAny 的列表

ProtobufAny

Any 包含任意序列化的协议缓冲区消息以及描述序列化消息类型的 URL。

Protobuf 库提供支持,以实用函数或 Any 类型的额外生成方法的形式打包/解包 Any 值。

示例 1:在 C++ 中打包和解包消息。

Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
  ...
}

示例 2:在 Java 中打包和解包消息。

Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
  foo = any.unpack(Foo.class);
}
// or ...
if (any.isSameTypeAs(Foo.getDefaultInstance())) {
  foo = any.unpack(Foo.getDefaultInstance());
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
  any.Unpack(foo)
  ...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
  ...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
  ...
}

Protobuf 库提供的打包方法默认使用“type.googleapis.com/full.type.name”作为类型 URL,解包方法只使用类型 URL 中最后一个“/”后的全限定类型名称,例如“foo.bar.com/x/y.z”将产生类型名称“y.z”。

JSON 表示

Any 值的 JSON 表示使用反序列化的嵌入式消息的常规表示,并添加一个包含类型 URL 的附加字段@type。示例

package google.profile;
message Person {
  string first_name = 1;
  string last_name = 2;
}
{
  "@type": "type.googleapis.com/google.profile.Person",
  "firstName": <string>,
  "lastName": <string>
}

如果嵌入式消息类型是众所周知的并且具有自定义 JSON 表示,则该表示将被嵌入,并添加一个字段value,该字段除了@type字段外还包含自定义 JSON。示例(对于消息 [google.protobuf.Duration][])

{
  "@type": "type.googleapis.com/google.protobuf.Duration",
  "value": "1.212s"
}
字段名称 必填 可为空 类型 描述 格式

@type

字符串

唯一标识序列化协议缓冲区消息类型的 URL/资源名称。此字符串必须包含至少一个“/”字符。URL 路径的最后一部分必须表示类型的全限定名称(如path/google.protobuf.Duration)。名称应采用规范形式(例如,不允许使用前导“.”)。在实践中,团队通常会预编译他们期望在 Any 上下文中使用的所有类型到二进制文件中。但是,对于使用方案httphttps或无方案的 URL,可以选择设置一个类型服务器,该服务器将类型 URL 映射到消息定义,如下所示:* 如果未提供方案,则假定为https。* 对 URL 的 HTTP GET 必须产生二进制格式的[google.protobuf.Type][]值,或产生错误。* 应用程序可以根据 URL 缓存查找结果,或将其预编译到二进制文件中以避免任何查找。因此,需要在类型更改时保留二进制兼容性。(使用版本化的类型名称来管理重大更改。)注意:此功能目前在官方 protobuf 版本中不可用,并且不适用于以 type.googleapis.com 开头的类型 URL。截至 2023 年 5 月,没有广泛使用的类型服务器实现,也没有计划实现一个。可以使用具有特定于实现的语义的httphttps(或空方案)以外的方案。

SimpleAccessScopeRules

任何重复字段的每个元素都是一条单独的规则。规则由逻辑 OR 连接:如果存在允许资源x的规则,则x位于访问范围内。

字段名称 必填 可为空 类型 描述 格式

包含的集群

string 列表

包含的命名空间

SimpleAccessScopeRulesNamespace 的列表

集群标签选择器

StorageSetBasedLabelSelector 的列表

命名空间标签选择器

StorageSetBasedLabelSelector 的列表

SimpleAccessScopeRulesNamespace

字段名称 必填 可为空 类型 描述 格式

集群名称

字符串

必须设置这两个字段。

命名空间名称

字符串

StorageAccess

枚举值

无访问权限

读访问权限

读写访问权限

StorageSetBasedLabelSelector

SetBasedLabelSelector 仅允许基于集合的标签要求。

下一个可用标签:3

字段名称 必填 可为空 类型 描述 格式

要求

StorageSetBasedLabelSelectorRequirement 的列表

StorageSetBasedLabelSelectorOperator

枚举值

未知

不在

存在

不存在

StorageSetBasedLabelSelectorRequirement

Next available tag: 4
字段名称 必填 可为空 类型 描述 格式

字符串

操作

StorageSetBasedLabelSelectorOperator

UNKNOWN、IN、NOT_IN、EXISTS、NOT_EXISTS、

string 列表

StreamResultOfV1AuthorizationTraceResponse

Stream result of v1AuthorizationTraceResponse
字段名称 必填 可为空 类型 描述 格式

结果

V1AuthorizationTraceResponse

错误

GooglerpcStatus

TraceBuiltInAuthorizer

字段名称 必填 可为空 类型 描述 格式

集群总数

整数

int32

命名空间总数

整数

int32

被拒绝的授权决策

integer 的映射

int32

允许的授权决策

integer 的映射

int32

有效的访问范围

string 的映射

V1AuthorizationTraceResponse

字段名称 必填 可为空 类型 描述 格式

到达时间

日期

日期时间

处理时间

日期

日期时间

请求

V1AuthorizationTraceResponseRequest

响应

V1AuthorizationTraceResponseResponse

用户

V1AuthorizationTraceResponseUser

跟踪

AuthorizationTraceResponseTrace

V1AuthorizationTraceResponseRequest

字段名称 必填 可为空 类型 描述 格式

端点

字符串

方法

字符串

V1AuthorizationTraceResponseResponse

字段名称 必填 可为空 类型 描述 格式

状态

AuthorizationTraceResponseResponseStatus

UNKNOWN_STATUS、SUCCESS、FAILURE、

错误

字符串

V1AuthorizationTraceResponseUser

字段名称 必填 可为空 类型 描述 格式

用户名

字符串

显示名称

字符串

汇总权限

StorageAccess 的映射

角色

AuthorizationTraceResponseUserRole 的列表