REST Resource: customers.v2.Schemas

Recurso: Schema

De la sección 7 del RFC 7643. Especifica los metadatos sobre un esquema.

Representación JSON
{
  "attributes": [
    {
      object (Attribute)
    }
  ],
  "id": string,
  "name": string,
  "description": string
}
Campos
attributes[]

object (Attribute)

Obligatorio. Es la lista de atributos del esquema.

id

string

Obligatorio. Es el URI único del esquema. Cuando corresponda, los proveedores de servicios deben especificar el URI, por ejemplo, urn:ietf:params:scim:schemas:core:2.0:User. A diferencia de la mayoría de los otros esquemas, que usan algún tipo de identificador único global (GUID) para id, el esquema id es un URI para que se pueda registrar y sea portátil entre diferentes proveedores de servicios y clientes.

name

string

Es opcional. Es el nombre del esquema legible por humanos. Cuando corresponda, los proveedores de servicios deben especificar el nombre, por ejemplo, User o Group.

description

string

Es opcional. Es la descripción del esquema legible por humanos. Cuando corresponda, los proveedores de servicios deben especificar la descripción.

Atributo

De la sección 7 del RFC 7643. Define las características de un atributo.

Representación JSON
{
  "subAttributes": [
    {
      object (Attribute)
    }
  ],
  "canonicalValues": [
    string
  ],
  "referenceTypes": [
    string
  ],
  "name": string,
  "type": string,
  "multiValued": boolean,
  "description": string,
  "required": boolean,
  "caseExact": boolean,
  "mutability": string,
  "returned": string,
  "uniqueness": string
}
Campos
subAttributes[]

object (Attribute)

Cuando un atributo es de tipo complex, subAttributes define un conjunto de atributos secundarios. subAttributes tiene los mismos atributos secundarios de esquema que attributes.

canonicalValues[]

string

Es opcional. Es una colección de valores canónicos sugeridos que se pueden usar (por ejemplo, work y home). En algunos casos, los proveedores de servicios pueden optar por ignorar los valores no admitidos.

referenceTypes[]

string

Es un array de varios valores de cadenas JSON que indican los tipos de recursos de SCIM a los que se puede hacer referencia. Los valores válidos son los siguientes:

  • Un tipo de recurso de SCIM (por ejemplo, User o Group)
  • external, que indica que el recurso es externo (por ejemplo, una foto)
  • uri: Indica que la referencia es a un extremo de servicio o a un identificador (por ejemplo, un URN de esquema).

Este atributo solo se aplica a los atributos de tipo reference (sección 2.3.7).

name

string

Es el nombre del atributo.

type

string

Es el tipo de datos del atributo. Los valores válidos son string, boolean, decimal, integer, dateTime, reference y complex. Cuando un atributo es de tipo complex, debe haber un atributo de esquema subAttributes correspondiente definido, que enumere los atributos secundarios del atributo.

multiValued

boolean

Indica la pluralidad del atributo.

description

string

Es la descripción legible del atributo. Cuando corresponda, los proveedores de servicios deben especificar la descripción.

required

boolean

Especifica si el atributo es obligatorio o no.

caseExact

boolean

Especifica si un atributo de cadena distingue mayúsculas de minúsculas. El servidor distingue entre mayúsculas y minúsculas cuando evalúa los filtros. En el caso de los atributos que distinguen mayúsculas de minúsculas, el servidor conserva las mayúsculas y minúsculas de cualquier valor enviado. Si el atributo no distingue mayúsculas de minúsculas, es posible que el servidor modifique el uso de mayúsculas y minúsculas para un valor enviado. La distinción entre mayúsculas y minúsculas también afecta la forma en que los valores de los atributos se pueden comparar con los valores de los filtros (consulta la sección 3.4.2.2 del RFC 7644).

Según la sección 2.3.6 de la RFC 7643 y la sección 2.3.7 de la RFC 7643, los tipos binary y reference son caseExact.

mutability

string

Es una sola palabra clave que indica las circunstancias en las que se puede (re)definir el valor del atributo:

  • readOnly: El atributo no se puede modificar.
  • readWrite: Predeterminado. El atributo se puede actualizar y leer en cualquier momento.
  • immutable: El atributo se puede definir en la creación del recurso (por ejemplo, POST) o en el reemplazo del registro a través de una solicitud (por ejemplo, PUT). El atributo no se puede modificar después de la definición inicial.
  • writeOnly: El atributo se puede actualizar en cualquier momento. No se devuelven los valores de los atributos (por ejemplo, porque el valor es un hash almacenado). Nota: Por lo general, un atributo con una mutabilidad de writeOnly también tiene un parámetro de configuración devuelto de never.
returned

string

Es una sola palabra clave que indica cuándo se devuelven un atributo y los valores asociados en respuesta a una solicitud GET o en respuesta a una solicitud PUT, POST o PATCH. Las palabras clave válidas son las siguientes:

  • always: El atributo siempre se devuelve, independientemente del contenido del parámetro attributes. Por ejemplo, id siempre se devuelve para identificar un recurso de SCIM.
  • never: El atributo nunca se devuelve. Esto puede ocurrir porque el proveedor de servicios no conserva el valor original del atributo (por ejemplo, un valor hash). Un proveedor de servicios puede permitir que se usen atributos en un filtro de búsqueda.
  • default: Predeterminado. El atributo se muestra de forma predeterminada en todas las respuestas de operaciones de SCIM en las que se muestran valores de atributos. Si se especifica el parámetro attributes de la solicitud GET, los valores de los atributos solo se devuelven si el atributo se denomina en el parámetro attributes.
  • request: El atributo se devuelve en respuesta a cualquier operación PUT, POST o PATCH si el cliente especificó el atributo (por ejemplo, si se modificó el atributo). El atributo se devuelve en una operación de consulta de SCIM solo si se especifica en el parámetro attributes.
uniqueness

string

Es un solo valor de palabra clave que especifica cómo el proveedor de servicios aplica la unicidad de los valores de los atributos. Un servidor puede rechazar un valor no válido según la unicidad devolviendo el código de respuesta HTTP 400 Bad Request. Un cliente puede aplicar la unicidad en el cliente en mayor medida que el proveedor de servicios. Por ejemplo, un cliente podría hacer que un valor sea único, mientras que el servidor tiene una unicidad de none. Las palabras clave válidas son las siguientes:

  • none: Predeterminado. Los valores no deben ser únicos de ninguna manera.
  • server: El valor debe ser único en el contexto del extremo de SCIM actual (o la tenencia) y podría ser único a nivel global (por ejemplo, un nombre de usuario, una dirección de correo electrónico o cualquier otra clave o contador generado por el servidor). No debe haber dos recursos en el mismo servidor que posean el mismo valor.
  • global: El valor debe ser único a nivel global (por ejemplo, una dirección de correo electrónico, un GUID o algún otro valor). Ningún recurso de ningún servidor debe tener el mismo valor.

Como se especifica en la sección 2.3 del RFC 7643, los tipos de datos Boolean, DateTime, Binary y Complex no tienen unicidad.

Métodos

get

Recupera un esquema.

list

Recupera todos los esquemas.