REST Resource: customers.policySchemas

资源:PolicySchema

表示政策架构的资源。

JSON 表示法
{
  "name": string,
  "policyDescription": string,
  "additionalTargetKeyNames": [
    {
      object (AdditionalTargetKeyName)
    }
  ],
  "definition": {
    object (FileDescriptorProto)
  },
  "fieldDescriptions": [
    {
      object (PolicySchemaFieldDescription)
    }
  ],
  "accessRestrictions": [
    string
  ],
  "notices": [
    {
      object (PolicySchemaNoticeDescription)
    }
  ],
  "supportUri": string,
  "schemaName": string,
  "validTargetResources": [
    enum (TargetResource)
  ],
  "policyApiLifecycle": {
    object (PolicyApiLifecycle)
  },
  "categoryTitle": string,
  "supportedPlatforms": [
    enum (Platform)
  ]
}
字段
name

string

格式:name=customers/{customer}/policySchemas/{schema_namespace}

policyDescription

string

仅限输出。关于用户消费的政策架构的说明。

additionalTargetKeyNames[]

object (AdditionalTargetKeyName)

仅限输出。将用于标识政策值目标的其他键名。指定 policyTargetKey 时,此处指定的每个额外键都必须包含在 additionalTargetKeys 映射中。

definition

object (FileDescriptorProto)

使用 proto 描述符进行架构定义。

fieldDescriptions[]

object (PolicySchemaFieldDescription)

仅限输出。架构中每个字段的详细说明。建议按照此列表中的顺序(而不是字段编号)来显示字段。

accessRestrictions[]

string

仅限输出。与此政策相关的特定访问权限限制。

notices[]

object (PolicySchemaNoticeDescription)

仅限输出。与在架构的特定字段中设置特定值相关的特殊消息。

supportUri

string

仅限输出。指向此架构的相关支持文章的 URI。

schemaName

string

仅限输出。政策架构的完全限定名称。在调用 BatchInheritOrgUnitPolicies BatchModifyOrgUnitPolicies BatchModifyGroupPoliciesBatchDeleteGroupPolicies 时,此值用于填充 PolicyValue 中的 policySchema 字段。

validTargetResources[]

enum (TargetResource)

仅限输出。政策的适用目标资源的相关信息。

policyApiLifecycle

object (PolicyApiLifecycle)

仅限输出。当前生命周期信息。

categoryTitle

string

设置所属类别的标题。

supportedPlatforms[]

enum (Platform)

仅限输出。列表指出该政策将仅适用于这些平台上的设备/用户。

AdditionalTargetKeyName

将用于标识政策值目标的其他键名。

JSON 表示法
{
  "key": string,
  "keyDescription": string
}
字段
key

string

键名称。

keyDescription

string

键说明。

FileDescriptorProto

描述完整的 .proto 文件。

JSON 表示法
{
  "name": string,
  "package": string,
  "messageType": [
    {
      object (DescriptorProto)
    }
  ],
  "enumType": [
    {
      object (EnumDescriptorProto)
    }
  ],
  "syntax": string,
}
字段
name

string

文件名(相对于源代码树的根目录)

package

string

例如“foo”、“foo.bar”等

messageType[]

object (DescriptorProto)

此文件中的所有顶级定义。

enumType[]

object (EnumDescriptorProto)

syntax

string

proto 文件的语法。支持的值为“proto2”“proto3”和“editions”。

如果存在 edition,则此值必须为“版本”。

DescriptorProto

描述消息类型。

JSON 表示法
{
  "name": string,
  "field": [
    {
      object (FieldDescriptorProto)
    }
  ],
  "nestedType": [
    {
      object (DescriptorProto)
    }
  ],
  "enumType": [
    {
      object (EnumDescriptorProto)
    }
  ],
  "oneofDecl": [
    {
      object (OneofDescriptorProto)
    }
  ]
}
字段
name

string

field[]

object (FieldDescriptorProto)

nestedType[]

object (DescriptorProto)

enumType[]

object (EnumDescriptorProto)

oneofDecl[]

object (OneofDescriptorProto)

FieldDescriptorProto

描述消息中的字段。

JSON 表示法
{
  "name": string,
  "number": integer,
  "label": enum (Label),
  "type": enum (Type),
  "typeName": string,
  "defaultValue": string,
  "oneofIndex": integer,
  "jsonName": string,
  "proto3Optional": boolean
}
字段
name

string

number

integer

label

enum (Label)

type

enum (Type)

如果设置了 typeName,则无需设置。如果同时设置了此字段和 typeName,此字段必须为 TYPE_ENUM、TYPE_MESSAGE 或 TYPE_GROUP 中的一个。

typeName

string

对于消息和枚举类型,这是类型的名称。如果名称以“.”开头,则是完全限定的。否则,系统将使用类似 C++ 的范围限定规则来查找类型(即首先搜索此消息中的嵌套类型,然后在父级中搜索,直到根命名空间)。

defaultValue

string

对于数字类型,包含值的原始文本表示形式。如果是布尔值,则为“true”或“false”。对于字符串,它包含默认文本内容(不以任何方式转义)。对于字节,包含 C 转义值。所有不小于 128 的字节都会转义。

oneofIndex

integer

如果设置,则提供所含类型的 oneofDecl 列表中 a 的索引。此字段是其中之一。

jsonName

string

此字段的 JSON 名称。该值由协议编译器设置。如果用户设置了“jsonName”,选项,系统会使用该选项的值。否则,系统会通过将字段名称转换为驼峰命名法,从字段名称中推断出该名称。

proto3Optional

boolean

如果为 true,则这是一个“可选”的 proto3。如果 proto3 字段是可选的,它会跟踪在线状态,而不考虑字段类型。

当 proto3Optional 为 true 时,此字段必须属于 之一,以向旧的 proto3 客户端表明已针对此字段跟踪在线状态。这种宏称为“合成”oneof,并且此字段必须是其唯一成员(每个 proto3 可选字段都有自己的合成之一)。合成类仅存在于描述符中,不会生成任何 API。合成的 1 必须在所有“真实”之后排序其中之一。

对于消息字段,proto3Optional 不会创建任何语义更改,因为非重复消息字段始终跟踪其存在。不过,它仍然指明了有关用户写入“可选”的语义详细信息。这对于往返 .proto 文件很有用。为保持一致性,我们也为消息字段提供合成的其中一个字段(即使不需要跟踪在线状态)。这一点尤其重要,因为解析器无法分辨字段是消息还是枚举,因此必须始终创建一个合成字段。

Proto2 可选字段不会设置此标志,因为它们已通过 LABEL_OPTIONAL 指示可选。

标签

枚举
LABEL_OPTIONAL 0 保留用于错误
LABEL_REPEATED
LABEL_REQUIRED 所需标签只能在 proto2 中使用。在 proto3 和版本中,明确禁止这样做。在各版本中,可以使用 fieldPresence 功能实现此行为。

类型

枚举
TYPE_DOUBLE 0 保留用于错误。由于历史原因,顺序很奇怪。
TYPE_FLOAT
TYPE_INT64 未采用 ZigZag 编码。负数需要 10 个字节。如果可能存在负值,请使用 TYPE_SINT64。
TYPE_UINT64
TYPE_INT32 未采用 ZigZag 编码。负数需要 10 个字节。如果有可能为负值,请使用 TYPE_SINT32。
TYPE_FIXED64
TYPE_FIXED32
TYPE_BOOL
TYPE_STRING
TYPE_GROUP 以代码分隔的汇总报告。组类型已弃用,在 proto2 之后不受支持。不过,Proto3 实现应该仍然能够解析组线路格式并将组字段视为未知字段。在版本中,可通过 messageEncoding 功能启用群组电线格式。
TYPE_MESSAGE 以长度分隔的汇总。
TYPE_BYTES 版本 2 中的新功能。
TYPE_UINT32
TYPE_ENUM
TYPE_SFIXED32
TYPE_SFIXED64
TYPE_SINT32 使用 ZigZag 编码。
TYPE_SINT64 使用 ZigZag 编码。

EnumDescriptorProto

描述枚举类型。

JSON 表示法
{
  "name": string,
  "value": [
    {
      object (EnumValueDescriptorProto)
    }
  ]
}
字段
name

string

value[]

object (EnumValueDescriptorProto)

EnumValueDescriptorProto

描述枚举中的值。

JSON 表示法
{
  "name": string,
  "number": integer
}
字段
name

string

number

integer

OneofDescriptorProto

描述 之一。

JSON 表示法
{
  "name": string
}
字段
name

string

PolicySchemaFieldDescription

提供 PolicySchema 中包含的特定字段的详细信息。

JSON 表示法
{
  "field": string,
  "description": string,
  "inputConstraint": string,
  "knownValueDescriptions": [
    {
      object (PolicySchemaFieldKnownValueDescription)
    }
  ],
  "nestedFieldDescriptions": [
    {
      object (PolicySchemaFieldDescription)
    }
  ],
  "fieldDependencies": [
    {
      object (PolicySchemaFieldDependencies)
    }
  ],
  "requiredItems": [
    {
      object (PolicySchemaRequiredItems)
    }
  ],
  "defaultValue": value,
  "name": string,
  "fieldDescription": string,
  "fieldConstraints": {
    object (FieldConstraints)
  }
}
字段
field

string

仅限输出。与此说明相关联的字段的名称。

description
(deprecated)

string

已弃用。请改用 name 和 fieldDescription。字段的说明。

inputConstraint

string

仅限输出。与字段的值相关的任何输入限制条件。

knownValueDescriptions[]

object (PolicySchemaFieldKnownValueDescription)

仅限输出。如果该字段具有一组已知值,则此字段将提供对这些值的说明。

nestedFieldDescriptions[]

object (PolicySchemaFieldDescription)

仅限输出。如果此字段是定义了多个字段的消息类型,则提供此字段中嵌套字段的说明。建议按照此列表中的顺序(而非字段编号)来显示字段。

fieldDependencies[]

object (PolicySchemaFieldDependencies)

仅限输出。提供字段和值的列表。必须至少有一个字段具有相应的值,系统才能设置此字段。

requiredItems[]

object (PolicySchemaRequiredItems)

仅限输出。提供此字段具有特定值时需要设置的字段列表。

defaultValue

value (Value format)

仅限输出。如果此政策未设置,则为客户端默认设置。

name

string

仅限输出。字段的名称。

fieldDescription

string

仅限输出。字段的说明。

fieldConstraints

object (FieldConstraints)

仅限输出。与字段的值相关的任何输入约束的信息。

PolicySchemaFieldKnownValueDescription

提供关于 PolicySchema 中特定字段允许的已知值的详细信息。

JSON 表示法
{
  "value": string,
  "description": string,
  "fieldDependencies": [
    {
      object (PolicySchemaFieldDependencies)
    }
  ]
}
字段
value

string

仅限输出。可以为字段设置的值的字符串表示。

description

string

仅限输出。此值的其他说明。

fieldDependencies[]

object (PolicySchemaFieldDependencies)

仅限输出。此值需要满足的字段条件才有效。

PolicySchemaFieldDependencies

允许设置其他字段的字段及其必须具备的值。

JSON 表示法
{
  "sourceField": string,
  "sourceFieldValue": string
}
字段
sourceField

string

此字段所依赖的来源字段。

sourceFieldValue

string

要允许设置此字段,来源字段必须具有的值。

PolicySchemaRequiredItems

根据此字段的值将变为必填字段。

JSON 表示法
{
  "fieldConditions": [
    string
  ],
  "requiredFields": [
    string
  ]
}
字段
fieldConditions[]

string

引发必填字段强制执行的字段的值。空的 fieldConditions 意味着分配给此字段的任何值都会触发必填字段实施。

requiredFields[]

string

因字段条件而需要的字段。

FieldConstraints

有关任何范围限制的信息。

JSON 表示法
{
  "numericRangeConstraint": {
    object (NumericRangeConstraint)
  },
  "uploadedFileConstraints": {
    object (UploadedFileConstraints)
  }
}
字段
numericRangeConstraint

object (NumericRangeConstraint)

数字字段允许的范围。

uploadedFileConstraints

object (UploadedFileConstraints)

针对已上传文件政策的限制。如果此政策存在,需要提供一个网址,该网址可通过上传具有此 proto 中指定的约束条件的文件来获取。

NumericRangeConstraint

限制上限和/或下限,至少设置一个限制条件。

JSON 表示法
{
  "minimum": string,
  "maximum": string
}
字段
minimum

string (int64 format)

最小值。

maximum

string (int64 format)

最大值。

UploadedFileConstraints

针对已上传文件政策的限制。

JSON 表示法
{
  "supportedContentTypes": [
    enum (ContentType)
  ],
  "sizeLimitBytes": string
}
字段
supportedContentTypes[]

enum (ContentType)

可针对某项设置上传的文件类型。

sizeLimitBytes

string (int64 format)

针对某项设置上传的文件的大小上限(以字节为单位)。

ContentType

可针对某项设置上传的文件类型。

枚举
CONTENT_TYPE_UNSPECIFIED 未指定的内容类型。
CONTENT_TYPE_PLAIN_TEXT 纯文本。
CONTENT_TYPE_HTML HTML。
CONTENT_TYPE_IMAGE_JPEG JPEG。
CONTENT_TYPE_IMAGE_GIF GIF。
CONTENT_TYPE_IMAGE_PNG .PNG。
CONTENT_TYPE_JSON JSON。
CONTENT_TYPE_ZIP ZIP。
CONTENT_TYPE_GZIP GZIP。
CONTENT_TYPE_CSV CSV 文件。
CONTENT_TYPE_YAML YAML。
CONTENT_TYPE_IMAGE_WEBP WEBP。

PolicySchemaNoticeDescription

提供与作为 PolicySchema 一部分的字段中特定值相关的特殊通知消息。

JSON 表示法
{
  "field": string,
  "noticeValue": string,
  "noticeMessage": string,
  "acknowledgementRequired": boolean
}
字段
field

string

仅限输出。与通知关联的字段名称。

noticeValue

string

仅限输出。包含通知的字段的值。将此字段设为此值时,系统可能会要求用户确认通知消息,然后才能设置此值。

noticeMessage

string

仅限输出。通知消息与字段的值相关联。

acknowledgementRequired

boolean

仅限输出。用户是否需要先确认通知消息,然后才能设置该值。

TargetResource

目标资源类型

枚举
TARGET_RESOURCE_UNSPECIFIED 未指定的目标资源。
ORG_UNIT 组织部门目标资源。
GROUP 群组目标资源。

PolicyApiLifecycle

生命周期信息。

JSON 表示法
{
  "deprecatedInFavorOf": [
    string
  ],
  "scheduledToDeprecatePolicies": [
    string
  ],
  "policyApiLifecycleStage": enum (PolicyApiLifecycleEnum),
  "description": string,
  "endSupport": {
    object (Date)
  }
}
字段
deprecatedInFavorOf[]

string

如果此政策已被弃用,取而代之的是新政策在 PolicyAPI 中显示的完全限定命名空间。仅当 policyApiLifecycleStage 为 API_DEPRECATED 时才能设置。

scheduledToDeprecatePolicies[]

string

因推出此政策而将被弃用的旧政策的完全限定命名空间,对应于 excludedInFavorOf。

policyApiLifecycleStage

enum (PolicyApiLifecycleEnum)

指示 Policy API 的当前生命周期阶段。

description

string

有关当前生命周期的说明。

endSupport

object (Date)

当前政策的支持日期。如果在政策支持终止日期之后尝试修改政策,将会导致请求错误(400 错误)。仅当 policyApiLifecycleStage 为 API_DEPRECATED 时才能设置。

PolicyApiLifecycleEnum

Policy API 的生命周期阶段。

枚举
API_UNSPECIFIED 未指定 Policy API 生命周期。
API_PREVIEW 政策尚未生效,但开发者提前了解格式。此阶段可以转移到 API_DEVELOPEMNT 或 API_CURRENT。
API_DEVELOPMENT 政策可能会以不向后兼容的方式更改格式(重大更改)。此阶段可以转移到 API_CURRENT 或 API_DEPRECATED。这可用于仅针对 TT 发布的政策或面向选定客户发布的政策,用于紧急用途。
API_CURRENT 官方格式的政策。政策能够以向后兼容的方式更改格式(非重大更改)。示例:如果正确使用字段掩码,此政策可能会引入一个新字段,这会被视为非破坏性更改。此阶段可以转移到 API_DEPRECATED。
API_DEPRECATED 请停止使用此政策。此政策已被弃用,日后可能会被移除。很可能是因为我们推出了一项新政策来取代该政策。

日期

表示整个或部分日历日期(例如生日)。一天中的时间和时区要么在别处指定,要么不重要。日期相对于公历。可以表示以下任一情况:

  • 包含非零年份、月份和天值的完整日期。
  • 月份和天,年份值为零(例如周年纪念日)。
  • 单独的年份,月份和天值为零。
  • 年份和月份,天值为零(例如,信用卡到期日期)。

相关类型:

JSON 表示法
{
  "year": integer,
  "month": integer,
  "day": integer
}
字段
year

integer

日期中的年份。必须介于 1 到 9999 之间,或为 0(即指定不含年份的日期)。

month

integer

一年中的第几个月。必须介于 1 到 12 之间,或为 0(即只指定年份,不指定月份和天值)。

day

integer

一个月中的第几天。必须介于 1 到 31 之间并且对年份和月份有效,或为 0(即天不重要,指定单独的年份或者年份和月份)。

平台

这是支持 Chrome 的不同平台组的枚举。

枚举
PLATFORM_UNSPECIFIED 未指定的平台。
CHROME_OS ChromeOS。
CHROME_BROWSER OSX/Windows/Linux 版 Chrome 浏览器。
CHROME_BROWSER_FOR_ANDROID Android 版 Chrome 浏览器。
CHROME_BROWSER_FOR_IOS iOS 版 Chrome 浏览器。

方法

get

按资源名称获取客户的特定政策架构。

list

获取与指定客户的指定过滤条件值匹配的政策架构列表。