×

GET /v1/simpleaccessscopes/{id}

描述 (Description)

参数 (Parameters)

路径参数 (Path Parameters)

名称 (Name) 描述 (Description) 必填 (Required) 默认值 (Default) 模式 (Pattern)

id

是 (X)

空 (null)

返回类型 (Return Type)

内容类型 (Content Type)

  • application/json

响应 (Responses)

表1. HTTP响应码 (Table 1. HTTP Response Codes)
代码 (Code) 消息 (Message) 数据类型 (Datatype)

200

成功的响应。(A successful response.)

StorageSimpleAccessScope

0

意外的错误响应。(An unexpected error response.)

GooglerpcStatus

示例 (Samples)

常用对象引用 (Common object reference)

GooglerpcStatus

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

code

整数 (Integer)

int32

message

字符串 (String)

details

ProtobufAny 列表 (List of)

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表示 (JSON representation)

Any值的JSON表示使用反序列化的嵌入式消息的常规表示,以及包含类型URL的附加字段@type。示例 (Example)

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][])(Example (for message [google.protobuf.Duration][]))

{
  "@type": "type.googleapis.com/google.protobuf.Duration",
  "value": "1.212s"
}
字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

@type

字符串 (String)

一个 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在访问范围内。

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

includedClusters

string 列表

includedNamespaces

SimpleAccessScopeRulesNamespace 列表

clusterLabelSelectors

StorageSetBasedLabelSelector 列表

namespaceLabelSelectors

StorageSetBasedLabelSelector 列表

SimpleAccessScopeRulesNamespace

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

clusterName

字符串 (String)

必须设置这两个字段。

namespaceName

字符串 (String)

StorageSetBasedLabelSelector

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

下一个可用标签:3

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

requirements

StorageSetBasedLabelSelectorRequirement 列表

StorageSetBasedLabelSelectorOperator

枚举值

UNKNOWN

IN

NOT_IN

EXISTS

NOT_EXISTS

StorageSetBasedLabelSelectorRequirement

Next available tag: 4
字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

key

字符串 (String)

op

StorageSetBasedLabelSelectorOperator

UNKNOWN、IN、NOT_IN、EXISTS、NOT_EXISTS、

values

string 列表

StorageSimpleAccessScope

简单的访问范围是作用域资源的(简单)选择条件。它**不允许**多组件 AND 规则,也不允许对名称进行集合运算。

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

id

字符串 (String)

id 是生成的,不能更改。

name

字符串 (String)

namedescription 由用户提供,可以更改。

description

字符串 (String)

rules

SimpleAccessScopeRules

traits

StorageTraits

StorageTraits

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

mutabilityMode

TraitsMutabilityMode

ALLOW_MUTATE、ALLOW_MUTATE_FORCED、

visibility

TraitsVisibility

VISIBLE、HIDDEN、

origin

TraitsOrigin

IMPERATIVE、DEFAULT、DECLARATIVE、DECLARATIVE_ORPHANED、

TraitsMutabilityMode

实验性。注意:请暂时避免使用 MutabilityMode。它将在未来被替换(ROX-14276)。MutabilityMode 指定对象是否以及如何修改。默认为 ALLOW_MUTATE,表示没有修改限制;这等效于没有 MutabilityMode 指定。ALLOW_MUTATE_FORCED 禁止所有修改操作,除非强制位打开的对象删除。

更改此字段的状态时要小心。例如,将对象从 ALLOW_MUTATE 修改为 ALLOW_MUTATE_FORCED 是允许的,但这将禁止对其进行任何进一步的更改,包括将其修改回 ALLOW_MUTATE。

枚举值

ALLOW_MUTATE

ALLOW_MUTATE_FORCED

TraitsOrigin

Origin 指定对象的来源。对象可以有四种不同的来源:- IMPERATIVE:对象是通过 API 创建的。这是默认假设。- DEFAULT:对象是默认对象,例如默认角色、访问范围等。- DECLARATIVE:对象是通过声明性配置创建的。- DECLARATIVE_ORPHANED:对象是通过声明性配置创建的,然后未成功删除(例如,因为它被另一个对象引用)。根据来源,不同的规则适用于对象。不允许通过 API 修改具有 DECLARATIVE 来源的对象,只能通过声明性配置修改。此外,它们可能不会引用具有 IMPERATIVE 来源的对象。不允许通过 API 或声明性配置修改具有 DEFAULT 来源的对象。它们可以被所有其他对象引用。允许通过 API 修改具有 IMPERATIVE 来源的对象,不能通过声明性配置修改。它们可以引用所有其他对象。不允许通过 API 或声明性配置修改具有 DECLARATIVE_ORPHANED 来源的对象。如果在声明性配置中重新定义,DECLARATIVE_ORPHANED 资源可以再次成为 DECLARATIVE。不再被其他资源引用后,系统将立即清理具有此来源的对象。它们可以被所有其他对象引用。

枚举值

IMPERATIVE

DEFAULT

DECLARATIVE

DECLARATIVE_ORPHANED

TraitsVisibility

实验性。visibility 允许指定对象是否应对某些 API 可见。

枚举值

VISIBLE

HIDDEN