REST Resource: customers.v2.Schemas

Risorsa: Schema

Dalla sezione 7 della RFC 7643. Specifica i metadati relativi a uno schema.

Rappresentazione JSON
{
  "attributes": [
    {
      object (Attribute)
    }
  ],
  "id": string,
  "name": string,
  "description": string
}
Campi
attributes[]

object (Attribute)

Obbligatorio. L'elenco degli attributi dello schema.

id

string

Obbligatorio. L'URI univoco dello schema. Se applicabile, i fornitori di servizi devono specificare l'URI, ad esempio urn:ietf:params:scim:schemas:core:2.0:User. A differenza della maggior parte degli altri schemi, che utilizzano una sorta di identificatore univoco globale (GUID) per id, lo schema id è un URI, quindi può essere registrato ed è portabile tra diversi fornitori di servizi e client.

name

string

Facoltativo. Il nome leggibile dello schema. Se applicabile, i fornitori di servizi devono specificare il nome, ad esempio User o Group.

description

string

Facoltativo. La descrizione dello schema leggibile. Se applicabile, i fornitori di servizi devono specificare la descrizione.

Attributo

Dalla sezione 7 della RFC 7643. Definisce le caratteristiche di un attributo.

Rappresentazione 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
}
Campi
subAttributes[]

object (Attribute)

Quando un attributo è di tipo complex, subAttributes definisce un insieme di attributi secondari. subAttributes ha gli stessi attributi secondari dello schema di attributes.

canonicalValues[]

string

Facoltativo. Una raccolta di valori canonici suggeriti che possono essere utilizzati (ad esempio, work e home). In alcuni casi, i fornitori di servizi potrebbero scegliere di ignorare i valori non supportati.

referenceTypes[]

string

Un array multivalore di stringhe JSON che indicano i tipi di risorse SCIM a cui è possibile fare riferimento. I valori validi sono:

  • Un tipo di risorsa SCIM (ad esempio User o Group),
  • external, che indica che la risorsa è una risorsa esterna (ad esempio una foto) oppure
  • uri: indica che il riferimento è a un endpoint di servizio o a un identificatore (ad esempio un URN dello schema).

Questo attributo è applicabile solo agli attributi di tipo reference (sezione 2.3.7).

name

string

Il nome dell'attributo.

type

string

Il tipo di dati dell'attributo. I valori validi sono string, boolean, decimal, integer, dateTime, reference e complex. Quando un attributo è di tipo complex, deve essere definito un attributo dello schema subAttributes corrispondente, che elenca i sottoattributi dell'attributo.

multiValued

boolean

Indica la pluralità dell'attributo.

description

string

La descrizione dell'attributo leggibile. Se applicabile, i fornitori di servizi devono specificare la descrizione.

required

boolean

Specifica se l'attributo è obbligatorio o meno.

caseExact

boolean

Specifica se un attributo stringa è sensibile alle maiuscole. Il server utilizza la distinzione tra maiuscole e minuscole durante la valutazione dei filtri. Per gli attributi che fanno distinzione tra maiuscole e minuscole, il server conserva la distinzione tra maiuscole e minuscole per qualsiasi valore inviato. Se l'attributo non fa distinzione tra maiuscole e minuscole, il server potrebbe modificare le maiuscole e minuscole per un valore inviato. La distinzione tra maiuscole e minuscole influisce anche sul modo in cui i valori degli attributi possono essere confrontati con i valori dei filtri (vedi RFC 7644, sezione 3.4.2.2).

In base alla sezione 2.3.6 di RFC 7643 e alla sezione 2.3.7 di RFC 7643, i tipi binary e reference sono caseExact.

mutability

string

Una singola parola chiave che indica le circostanze in cui il valore dell'attributo può essere (ri)definito:

  • readOnly: l'attributo non è modificabile.
  • readWrite: predefinito. L'attributo può essere aggiornato e letto in qualsiasi momento.
  • immutable: l'attributo può essere definito al momento della creazione della risorsa (ad esempio POST) o della sostituzione del record tramite una richiesta (ad esempio PUT). L'attributo non è modificabile dopo la definizione iniziale.
  • writeOnly: l'attributo può essere aggiornato in qualsiasi momento. I valori degli attributi non vengono restituiti (ad esempio perché il valore è un hash archiviato). Nota: un attributo con una mutabilità di writeOnly di solito ha anche un'impostazione restituita di never.
returned

string

Una singola parola chiave che indica quando un attributo e i valori associati vengono restituiti in risposta a una richiesta GET o a una richiesta PUT, POST o PATCH. Le parole chiave valide sono le seguenti:

  • always: l'attributo viene sempre restituito, indipendentemente dai contenuti del parametro attributes. Ad esempio, id viene sempre restituito per identificare una risorsa SCIM.
  • never: l'attributo non viene mai restituito. Ciò potrebbe verificarsi perché il valore dell'attributo originale (ad esempio, un valore sottoposto ad hashing) non viene conservato dal fornitore di servizi. Un fornitore di servizi può consentire l'utilizzo degli attributi in un filtro di ricerca.
  • default: predefinito. L'attributo viene restituito per impostazione predefinita in tutte le risposte alle operazioni SCIM in cui vengono restituiti i valori degli attributi. Se viene specificato il parametro attributes della richiesta GET, i valori degli attributi vengono restituiti solo se l'attributo è denominato nel parametro attributes.
  • request: L'attributo viene restituito in risposta a qualsiasi operazione PUT, POST o PATCH se è stato specificato dal client (ad esempio, l'attributo è stato modificato). L'attributo viene restituito in un'operazione di query SCIM solo se specificato nel parametro attributes.
uniqueness

string

Un singolo valore della parola chiave che specifica in che modo il fornitore di servizi applica l'unicità dei valori degli attributi. Un server potrebbe rifiutare un valore non valido in base all'unicità restituendo il codice di risposta HTTP 400 Bad Request. Un client può applicare l'unicità lato client in misura maggiore rispetto al service provider. Ad esempio, un client potrebbe rendere univoco un valore mentre il server ha un'univocità di none. Le parole chiave valide sono le seguenti:

  • none: predefinito. I valori non devono essere univoci in alcun modo.
  • server: il valore deve essere univoco nel contesto dell'endpoint SCIM corrente (o tenancy) e potrebbe essere univoco a livello globale (ad esempio, un nome utente, un indirizzo email o un'altra chiave o contatore generato dal server). Due risorse sullo stesso server non devono avere lo stesso valore.
  • global: il valore deve essere univoco a livello globale (ad esempio un indirizzo email, un GUID o un altro valore). Due risorse su qualsiasi server non devono avere lo stesso valore.

Come specificato nella sezione 2.3 dell'RFC 7643, i tipi di dati Boolean, DateTime, Binary e Complex non hanno unicità.

Metodi

get

Recupera uno schema.

list

Recupera tutti gli schemi.