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
}
Поля
name

string

Формат: name=customers/{customer}/policySchemas/{schema_namespace}

policyDescription

string

Только вывод. Описание схемы политики для потребления пользователями.

additionalTargetKeyNames[]

object ( AdditionalTargetKeyName )

Только вывод. Дополнительные имена ключей, которые будут использоваться для определения цели значения политики. При указании policyTargetKey каждый из указанных здесь дополнительных ключей должен быть включен в карту additionalTargetKeys .

definition

object ( FileDescriptorProto )

Определение схемы с использованием протодескриптора.

fieldDescriptions[]

object ( PolicySchemaFieldDescription )

Только вывод. Подробное описание каждого поля, входящего в схему.

accessRestrictions[]

string

Только вывод. Особые ограничения доступа, связанные с этой политикой.

notices[]

object ( PolicySchemaNoticeDescription )

Только вывод. Специальные уведомления, связанные с установкой определенных значений в определенных полях схемы.

supportUri

string

Только вывод. URI соответствующей статьи поддержки для этой схемы.

schemaName

string

Только вывод. Полное имя схемы политики. Это значение используется для заполнения поля policySchema в PolicyValue при вызове orgunits.batchInherit orgunits.batchModify groups.batchModify или groups.batchDelete .

validTargetResources[]

enum ( TargetResource )

Только вывод. Информация о применимых целевых ресурсах для политики.

policyApiLifecycle

object ( PolicyApiLifecycle )

Только вывод. Текущая информация о жизненном цикле.

categoryTitle

string

Название категории, к которой относится настройка.

ДополнительноеTargetKeyName

Дополнительные имена ключей, которые будут использоваться для определения цели значения политики.

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

Синтаксис прото-файла. Поддерживаемые значения: «proto2», «proto3» и «editions».

Если присутствует edition , это значение должно быть «выпуски».

ДескрипторПрото

Описывает тип сообщения.

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 )

ПолеДескрипторПрото

Описывает поле в сообщении.

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, его не нужно устанавливать. Если установлены и this, и typeName, это должно быть одно из TYPE_ENUM, TYPE_MESSAGE или TYPE_GROUP.

typeName

string

Для типов сообщений и перечислений это имя типа. Если имя начинается с «.», оно является полным. В противном случае для поиска типа используются правила области видимости, подобные C++ (т. е. сначала просматриваются вложенные типы внутри этого сообщения, затем внутри родительского типа вплоть до корневого пространства имен).

defaultValue

string

Для числовых типов содержит исходное текстовое представление значения. Для логических значений «истина» или «ложь». Для строк содержит текстовое содержимое по умолчанию (никаким образом не экранированное). Для байтов содержит экранированное значение C. Все байты >= 128 экранируются.

oneofIndex

integer

Если установлено, выдает индекс oneof в списке oneofDecl содержащего типа. Это поле является членом этого поля.

jsonName

string

JSON-имя этого поля. Значение устанавливается компилятором протокола. Если пользователь установил в этом поле параметр «jsonName», будет использоваться значение этого параметра. В противном случае оно выводится из имени поля путем преобразования его в CamelCase.

proto3Optional

boolean

Если это правда, это proto3 «необязательно». Если поле proto3 является необязательным, оно отслеживает присутствие независимо от типа поля.

Если proto3Optional имеет значение true, это поле должно принадлежать одному из, чтобы сигнализировать старым клиентам proto3 о том, что присутствие отслеживается для этого поля. Это поле известно как «синтетическое» и это поле должно быть его единственным членом (каждое дополнительное поле proto3 получает свой собственный синтетический). Синтетические экземпляры существуют только в дескрипторе и не генерируют никакого API. Синтетические экземпляры необходимо заказывать после всех «настоящих» экземпляров.

Для полей сообщений proto3Optional не создает никаких семантических изменений, поскольку неповторяющиеся поля сообщений всегда отслеживают присутствие. Однако он по-прежнему указывает на семантические детали того, написал ли пользователь «необязательно» или нет. Это может быть полезно для обработки файла .proto. Для единообразия мы также придаем полям сообщений синтетические значения, хотя отслеживать их присутствие не требуется. Это особенно важно, поскольку анализатор не может определить, является ли поле сообщением или перечислением, поэтому он всегда должен создавать синтетическое поле.

Необязательные поля Proto2 не устанавливают этот флаг, поскольку они уже указывают необязательность с помощью LABEL_OPTIONAL .

Этикетка

Перечисления
LABEL_OPTIONAL 0 зарезервирован для ошибок
LABEL_REQUIRED
LABEL_REPEATED

Тип

Перечисления
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 Совокупность, разделенная тегами. Тип группы устарел и не поддерживается в proto3. Однако реализации Proto3 по-прежнему должны иметь возможность анализировать формат групповой связи и обрабатывать групповые поля как неизвестные.
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

ПолитикаСхемаПолеОписание

Предоставляет подробную информацию для определенного поля, которое является частью 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
}
Поля
value

string

Только вывод. Строковое представление значения, которое можно задать для поля.

description

string

Только вывод. Дополнительное описание для этого значения.

ПолитикаСхемаПолеЗависимости

Поле и значение, которое оно должно иметь, чтобы можно было установить другое поле.

JSON-представление
{
  "sourceField": string,
  "sourceFieldValue": string
}
Поля
sourceField

string

Исходное поле, от которого зависит это поле.

sourceFieldValue

string

Значение, которое должно иметь исходное поле, чтобы это поле можно было установить.

ПолитикаСхемаRequiredItems

Поля, которые станут обязательными в зависимости от значения этого поля.

JSON-представление
{
  "fieldConditions": [
    string
  ],
  "requiredFields": [
    string
  ]
}
Поля
fieldConditions[]

string

Значения поля, которые вызывают обязательное принудительное применение поля. Пустое полеConditions означает, что любое значение, присвоенное этому полю, приведет к обязательному принудительному применению поля.

requiredFields[]

string

Поля, которые необходимы в силу полевых условий.

Ограничения поля

Информация о любых ограничениях диапазона.

JSON-представление
{
  "numericRangeConstraint": {
    object (NumericRangeConstraint)
  },
  "uploadedFileConstraints": {
    object (UploadedFileConstraints)
  }
}
Поля
numericRangeConstraint

object ( NumericRangeConstraint )

Разрешенный диапазон для числовых полей.

uploadedFileConstraints

object ( UploadedFileConstraints )

Ограничения на загруженный файл файловой политики. Если эта политика присутствует, требуется URL-адрес, который можно получить, загрузив файл с ограничениями, указанными в этом прототипе.

Числовое ограничение диапазона

Ограничение на верхнюю и/или нижнюю границы, по крайней мере одна из которых установлена.

JSON-представление
{
  "minimum": string,
  "maximum": string
}
Поля
minimum

string ( int64 format)

Минимальное значение.

maximum

string ( int64 format)

Максимальное значение.

Ограничения загруженного файла

Ограничения на загруженный файл файловой политики.

JSON-представление
{
  "supportedContentTypes": [
    enum (ContentType)
  ],
  "sizeLimitBytes": string
}
Поля
supportedContentTypes[]

enum ( ContentType )

Типы файлов, которые можно загрузить для настройки.

sizeLimitBytes

string ( int64 format)

Ограничение размера загружаемых файлов для настройки в байтах.

Тип содержимого

Типы файлов, которые можно загрузить для настройки.

Перечисления
CONTENT_TYPE_UNSPECIFIED Неопределенный тип контента.
CONTENT_TYPE_PLAIN_TEXT Простой текст.
CONTENT_TYPE_HTML HTML.
CONTENT_TYPE_IMAGE_JPEG JPEG.
CONTENT_TYPE_IMAGE_GIF Гиф.
CONTENT_TYPE_IMAGE_PNG PNG.
CONTENT_TYPE_JSON JSON.
CONTENT_TYPE_ZIP Почтовый индекс.
CONTENT_TYPE_GZIP ГЗИП.
CONTENT_TYPE_CSV CSV.
CONTENT_TYPE_YAML ЯМЛ.
CONTENT_TYPE_IMAGE_WEBP ВЕБП.

ПолитикаСхемаУведомлениеОписание

Предоставляет специальные уведомления, относящиеся к определенному значению в поле, которое является частью PolicySchema.

JSON-представление
{
  "field": string,
  "noticeValue": string,
  "noticeMessage": string,
  "acknowledgementRequired": boolean
}
Поля
field

string

Только вывод. Имя поля, связанное с уведомлением.

noticeValue

string

Только вывод. Значение поля, в котором есть уведомление. При установке этого значения в поле пользователю может потребоваться подтвердить сообщение с уведомлением, чтобы значение было установлено.

noticeMessage

string

Только вывод. Сообщение уведомления связано со значением поля.

acknowledgementRequired

boolean

Только вывод. Необходимо ли пользователю подтвердить сообщение с уведомлением, прежде чем можно будет установить значение.

ТаргетРесурс

Типы целевых ресурсов

Перечисления
TARGET_RESOURCE_UNSPECIFIED Неуказанный целевой ресурс.
ORG_UNIT Целевой ресурс организационного подразделения.
GROUP Групповой целевой ресурс.

ПолитикаApiЖизненный цикл

JSON-представление
{
  "policyApiLifecycleStage": enum (PolicyApiLifecycleEnum),
  "description": string,
  "endSupport": {
    object (Date)
  },
  "deprecatedInFavorOf": [
    string
  ]
}
Поля
policyApiLifecycleStage

enum ( PolicyApiLifecycleEnum )

Укажите текущую стадию жизненного цикла API политики.

description

string

Описание текущего жизненного цикла.

endSupport

object ( Date )

Дата окончания поддержки текущей политики.

deprecatedInFavorOf[]

string

В случае, если эта политика будет признана устаревшей в пользу другой политики, полностью определенное пространство имен новых политик, как они будут показаны в PolicyAPI.

ПолитикаApiLifecycleEnum

Перечисления
API_UNSPECIFIED неопределенные.
API_PREVIEW Политика еще не работает, но дает разработчикам информацию о формате. Этот этап может перейти в API_DEVELOEMNT или 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, чтобы указать год отдельно или год и месяц, если день не имеет значения.

Методы

get

Получите конкретную схему политики для клиента по имени его ресурса.

list

Получает список схем политик, соответствующих указанному значению фильтра для данного клиента.