REST Resource: customers.policySchemas

Recurso: PolicySchema

Recurso que representa um esquema de política.

Representação 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
}
Campos
name

string

Formato: name=customers/{customer}/policySchemas/{schema_namespace}

policyDescription

string

Apenas saída. Descrição sobre o esquema da política para consumo do usuário.

additionalTargetKeyNames[]

object (AdditionalTargetKeyName)

Apenas saída. Nomes de chave adicionais que serão usados para identificar o destino do valor da política. Ao especificar um policyTargetKey, cada uma das chaves adicionais especificadas aqui precisam ser incluídas no mapa additionalTargetKeys.

definition

object (FileDescriptorProto)

Definição do esquema usando o descritor proto.

fieldDescriptions[]

object (PolicySchemaFieldDescription)

Apenas saída. Descrição detalhada de cada campo que faz parte do esquema.

accessRestrictions[]

string

Apenas saída. Restrições de acesso específicas relacionadas a esta política.

notices[]

object (PolicySchemaNoticeDescription)

Apenas saída. Mensagens de aviso especiais relacionadas à definição de certos valores em determinados campos no esquema.

supportUri

string

Apenas saída. URI para o artigo de suporte relacionado a este esquema.

schemaName

string

Apenas saída. O nome totalmente qualificado do esquema da política. Esse valor é usado para preencher o campo policySchema em PolicyValue ao chamar orgunits.batchInherit, orgunits.batchModify, groups.batchModify ou groups.batchDelete.

validTargetResources[]

enum (TargetResource)

Apenas saída. Informações sobre os recursos de destino aplicáveis à política.

policyApiLifecycle

object (PolicyApiLifecycle)

Apenas saída. Informações atuais do ciclo de vida.

categoryTitle

string

Título da categoria a que uma configuração pertence.

AdditionalTargetKeyName

Nomes de chave adicionais que serão usados para identificar o destino do valor da política.

Representação JSON
{
  "key": string,
  "keyDescription": string
}
Campos
key

string

Nome da chave.

keyDescription

string

Descrição da chave.

FileDescriptorProto

Descreve um arquivo .proto completo.

Representação JSON
{
  "name": string,
  "package": string,
  "messageType": [
    {
      object (DescriptorProto)
    }
  ],
  "enumType": [
    {
      object (EnumDescriptorProto)
    }
  ],
  "syntax": string
}
Campos
name

string

nome do arquivo, relativo à raiz da árvore de origem

package

string

Por exemplo, "foo", "foo.bar" etc.

messageType[]

object (DescriptorProto)

Todas as definições de nível superior neste arquivo.

enumType[]

object (EnumDescriptorProto)

syntax

string

A sintaxe do arquivo proto. Os valores aceitos são "proto2", "proto3" e "editions".

Se edition estiver presente, esse valor precisará ser "editions".

DescriptorProto

Descreve um tipo de mensagem.

Representação JSON
{
  "name": string,
  "field": [
    {
      object (FieldDescriptorProto)
    }
  ],
  "nestedType": [
    {
      object (DescriptorProto)
    }
  ],
  "enumType": [
    {
      object (EnumDescriptorProto)
    }
  ],
  "oneofDecl": [
    {
      object (OneofDescriptorProto)
    }
  ]
}
Campos
name

string

field[]

object (FieldDescriptorProto)

nestedType[]

object (DescriptorProto)

enumType[]

object (EnumDescriptorProto)

oneofDecl[]

object (OneofDescriptorProto)

FieldDescriptorProto

Descreve um campo em uma mensagem.

Representação JSON
{
  "name": string,
  "number": integer,
  "label": enum (Label),
  "type": enum (Type),
  "typeName": string,
  "defaultValue": string,
  "oneofIndex": integer,
  "jsonName": string,
  "proto3Optional": boolean
}
Campos
name

string

number

integer

label

enum (Label)

type

enum (Type)

Se typeName for definido, isso não precisará ser definido. Se isso e typeName estiverem definidos, deve ser TYPE_ENUM, TYPE_MESSAGE ou TYPE_GROUP.

typeName

string

Para tipos de mensagem e enumeração, esse é o nome do tipo. Se o nome começar com ".", ele é totalmente qualificado. Caso contrário, as regras de escopo semelhantes a C++ são usadas para encontrar o tipo (ou seja, primeiro os tipos aninhados nessa mensagem são pesquisados, depois dentro do pai, até o namespace raiz).

defaultValue

string

Para tipos numéricos, contém a representação de texto original do valor. Para booleanos, "true" ou "false". Para strings, contém o conteúdo de texto padrão (sem nenhum escape). Para bytes, contém o valor de escape C. Todos os bytes >= 128 têm escape.

oneofIndex

integer

Se definido, fornece o índice de um oneof na lista oneofDecl do tipo que contém. Esse campo é membro do oneof.

jsonName

string

Nome JSON deste campo. O valor é definido pelo compilador do protocolo. Se o usuário tiver definido uma opção "jsonName" neste campo, o valor dessa opção será usado. Caso contrário, ele será deduzido do nome do campo, convertendo-o para camelCase.

proto3Optional

boolean

Se verdadeiro, é um proto3 "opcional". Quando um campo proto3 é opcional, ele rastreia a presença, independentemente do tipo de campo.

Quando proto3optional for verdadeiro, esse campo precisará pertencer a um oneof para sinalizar aos clientes proto3 antigos que a presença desse campo é rastreada. Esse oneof é conhecido como oneof "sintético", e o campo precisa ser seu único membro (cada campo opcional do proto3 tem seu próprio oneof sintético). Os oneofs sintéticos existem apenas no descritor e não geram nenhuma API. oneofs sintéticos precisam ser ordenados depois de oneofs "reais".

Para campos de mensagem, proto3Optional não cria nenhuma mudança semântica, já que os campos de mensagem não repetidos sempre rastreiam a presença. No entanto, ele ainda indica o detalhe semântico que indica se o usuário escreveu "opcional" ou não. Isso pode ser útil para realizar o processo de ida e volta do arquivo .proto. Para fins de consistência, também fornecemos aos campos de mensagem um oneof sintético, embora não seja necessário acompanhar a presença. Isso é especialmente importante porque o analisador não consegue determinar se um campo é uma mensagem ou um tipo enumerado, por isso precisa sempre criar um oneof sintético.

Os campos opcionais do Proto2 não definem essa flag, porque já indicam essa opção com LABEL_OPTIONAL.

Rótulo

Enums
LABEL_OPTIONAL O valor 0 é reservado para erros
LABEL_REQUIRED
LABEL_REPEATED

Tipo

Enums
TYPE_DOUBLE O valor 0 é reservado para erros. A ordem é estranha por motivos históricos.
TYPE_FLOAT
TYPE_INT64 Sem codificação ZigZag. Números negativos levam 10 bytes. Use TYPE_SINT64 se os valores negativos forem prováveis.
TYPE_UINT64
TYPE_INT32 Sem codificação ZigZag. Números negativos levam 10 bytes. Use TYPE_SINT32 se os valores negativos forem prováveis.
TYPE_FIXED64
TYPE_FIXED32
TYPE_BOOL
TYPE_STRING
TYPE_GROUP Agregado delimitado por tag. O tipo de grupo foi descontinuado e não tem suporte no proto3. No entanto, as implementações de Proto3 ainda precisam ser capazes de analisar o formato do fio de grupo e tratar os campos de grupo como campos desconhecidos.
TYPE_MESSAGE Agregado delimitado por tamanho.
TYPE_BYTES Novidades na versão 2.
TYPE_UINT32
TYPE_ENUM
TYPE_SFIXED32
TYPE_SFIXED64
TYPE_SINT32 Usa a codificação ZigZag.
TYPE_SINT64 Usa a codificação ZigZag.

EnumDescriptorProto

Descreve um tipo de enumeração.

Representação JSON
{
  "name": string,
  "value": [
    {
      object (EnumValueDescriptorProto)
    }
  ]
}
Campos
name

string

value[]

object (EnumValueDescriptorProto)

EnumValueDescriptorProto

Descreve um valor dentro de uma enumeração.

Representação JSON
{
  "name": string,
  "number": integer
}
Campos
name

string

number

integer

OneofDescriptorProto

Descreve um oneof.

Representação JSON
{
  "name": string
}
Campos
name

string

PolicySchemaFieldDescription

Fornece informações detalhadas de um campo específico que faz parte de um PolicySchema.

Representação 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)
  }
}
Campos
field

string

Apenas saída. O nome do campo associado a esta descrição.

description
(deprecated)

string

Obsoleto. Use name e fieldDescription. Descrição do campo.

inputConstraint

string

Apenas saída. Todas as restrições de entrada associadas aos valores do campo.

knownValueDescriptions[]

object (PolicySchemaFieldKnownValueDescription)

Apenas saída. Se o campo tiver um conjunto de valores conhecidos, ele fornecerá uma descrição para esses valores.

nestedFieldDescriptions[]

object (PolicySchemaFieldDescription)

Apenas saída. Fornece a descrição dos campos aninhados nesse campo, caso o campo seja um tipo de mensagem que defina vários campos.

fieldDependencies[]

object (PolicySchemaFieldDependencies)

Apenas saída. Fornece uma lista de campos e valores. Pelo menos um deles precisa ter um valor correspondente para que a definição seja permitida.

requiredItems[]

object (PolicySchemaRequiredItems)

Apenas saída. Fornece uma lista de campos que precisam ser definidos se tiver um determinado valor.

defaultValue

value (Value format)

Apenas saída. Padrão do cliente se a política não for definida.

name

string

Apenas saída. Nome do campo.

fieldDescription

string

Apenas saída. A descrição do campo.

fieldConstraints

object (FieldConstraints)

Apenas saída. Informações sobre as restrições de entrada associadas aos valores do campo.

PolicySchemaFieldKnownValueDescription

Fornece informações detalhadas sobre um valor conhecido permitido para um determinado campo em um PolicySchema.

Representação JSON
{
  "value": string,
  "description": string
}
Campos
value

string

Apenas saída. A representação da string do valor que pode ser definido para o campo.

description

string

Apenas saída. Descrição adicional para esse valor.

PolicySchemaFieldDependencies

O campo e o valor que ele precisa ter para que outro campo possa ser definido.

Representação JSON
{
  "sourceField": string,
  "sourceFieldValue": string
}
Campos
sourceField

string

O campo de origem do qual esse campo depende.

sourceFieldValue

string

O valor que o campo de origem precisa ter para que este campo possa ser definido.

PolicySchemaRequiredItems

Os campos que se tornarão obrigatórios com base no valor desse campo.

Representação JSON
{
  "fieldConditions": [
    string
  ],
  "requiredFields": [
    string
  ]
}
Campos
fieldConditions[]

string

Os valores do campo que provocam a aplicação obrigatória. Um fieldConditions vazio implica que qualquer valor atribuído a este campo provocará a aplicação obrigatória de campo.

requiredFields[]

string

Os campos que são obrigatórios como consequência das condições de campo.

FieldConstraints

Informações sobre quaisquer restrições de intervalo.

Representação JSON
{
  "numericRangeConstraint": {
    object (NumericRangeConstraint)
  },
  "uploadedFileConstraints": {
    object (UploadedFileConstraints)
  }
}
Campos
numericRangeConstraint

object (NumericRangeConstraint)

O intervalo permitido para campos numéricos.

uploadedFileConstraints

object (UploadedFileConstraints)

Restrições no arquivo enviado por upload de uma política de arquivos. Se estiver presente, esta política exigirá um URL que pode ser buscado ao fazer upload de um arquivo com as restrições especificadas neste proto.

NumericRangeConstraint

Uma restrição em limites superiores e/ou inferiores, com pelo menos uma sendo definida.

Representação JSON
{
  "minimum": string,
  "maximum": string
}
Campos
minimum

string (int64 format)

Valor mínimo.

maximum

string (int64 format)

Valor máximo.

UploadedFileConstraints

Restrições no arquivo enviado por upload de uma política de arquivos.

Representação JSON
{
  "supportedContentTypes": [
    enum (ContentType)
  ],
  "sizeLimitBytes": string
}
Campos
supportedContentTypes[]

enum (ContentType)

Tipos de arquivo que podem ser enviados para uma configuração.

sizeLimitBytes

string (int64 format)

O limite de tamanho dos arquivos enviados por upload para uma configuração (em bytes).

ContentType

Tipos de arquivo que podem ser enviados para uma configuração.

Enums
CONTENT_TYPE_UNSPECIFIED Tipo de conteúdo não especificado.
CONTENT_TYPE_PLAIN_TEXT Texto simples.
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

Mostra mensagens de aviso especiais relacionadas a um valor específico em um campo que faz parte de um PolicySchema.

Representação JSON
{
  "field": string,
  "noticeValue": string,
  "noticeMessage": string,
  "acknowledgementRequired": boolean
}
Campos
field

string

Apenas saída. Nome do campo associado ao aviso.

noticeValue

string

Apenas saída. O valor do campo que tem um aviso. Ao definir o campo com esse valor, talvez o usuário precise confirmar a mensagem do aviso para que o valor seja definido.

noticeMessage

string

Apenas saída. A mensagem de aviso associada ao valor do campo.

acknowledgementRequired

boolean

Apenas saída. Indica se o usuário precisa confirmar a mensagem de aviso antes que o valor possa ser definido.

TargetResource

Tipos de recursos de destino

Enums
TARGET_RESOURCE_UNSPECIFIED Recurso de destino não especificado.
ORG_UNIT Recurso de destino da unidade organizacional.
GROUP Recurso de destino do grupo.

PolicyApiLifecycle

Representação JSON
{
  "policyApiLifecycleStage": enum (PolicyApiLifecycleEnum),
  "description": string,
  "endSupport": {
    object (Date)
  },
  "deprecatedInFavorOf": [
    string
  ]
}
Campos
policyApiLifecycleStage

enum (PolicyApiLifecycleEnum)

Indique o estágio atual do ciclo de vida da API Policy.

description

string

Descrição sobre o ciclo de vida atual.

endSupport

object (Date)

Data de término da compatibilidade com a política atual.

deprecatedInFavorOf[]

string

Caso esta política tenha sido descontinuada e substituída por outra, os namespaces totalmente qualificados das novas políticas, como serão mostrados em PolicyAPI.

PolicyApiLifecycleEnum

Enums
API_UNSPECIFIED não especificado.
API_PREVIEW A política ainda não está funcionando, mas avisando os desenvolvedores sobre o formato. Este estágio pode ser transferido para API_DEPACKAGEMNT ou API_CURRENT.
API_DEVELOPMENT A política pode alterar o formato de modo incompatível com versões anteriores (alteração interruptiva). Este estágio pode ser transferido para API_CURRENT ou API_DEPRECATED. Essa opção pode ser usada em políticas lançadas apenas para TTs ou para clientes selecionados para uso emergencial.
API_CURRENT Política no formato oficial. A política pode mudar o formato de maneira compatível com versões anteriores (alteração não interruptiva). Exemplo: esta política pode introduzir um novo campo, que é considerado uma alteração não interruptiva, quando as máscaras de campo são utilizadas corretamente. Este estágio pode ser transferido para API_DEPRECATED.
API_DEPRECATED Pare de usar esta política. Esta política foi descontinuada e poderá/será removida. É provável que uma nova política tenha sido introduzida no lugar desta.

Data

Representa uma data inteira ou parcial do calendário, como um aniversário. A hora do dia e o fuso horário são especificados em outro lugar ou são insignificantes. A data é referente ao calendário gregoriano. Isso pode representar uma das seguintes opções:

  • uma data completa, com valores de ano, mês e dia diferentes de zero.
  • um mês e um dia, com ano zero (por exemplo, uma data comemorativa).
  • Um ano sozinho, com mês zero e dia zero.
  • Um ano e um mês, com um dia zero (por exemplo, uma data de validade do cartão de crédito).

Tipos relacionados:

Representação JSON
{
  "year": integer,
  "month": integer,
  "day": integer
}
Campos
year

integer

Ano da data. Precisa ser de 1 a 9999 ou 0 para especificar uma data sem ano.

month

integer

Mês do ano. Precisa ser de 1 a 12, ou 0 para especificar um ano sem um mês e dia.

day

integer

Dia do mês. Precisa ser de 1 a 31 e válido para o ano e o mês, ou 0 para especificar um ano sozinho ou um ano e mês em que o dia não é significativo.

Métodos

get

Consiga um esquema de política específico para um cliente pelo nome do recurso.

list

Recebe uma lista de esquemas de políticas que correspondem a um valor de filtro especificado para um determinado cliente.