Skip to main content
Astra Automation
È disponibile una versione più recente di questo prodotto.
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Crea un nuovo vincolo di ruolo per un gruppo

POST /accounts/{account_id}/core/v1/groups/{group_id}/roleBindings

Indica i valori desiderati per la risorsa API Role Binding da creare.

Parametri

Nome Tipo In Obbligatorio Descrizione

ID account

stringa

percorso

Vero

ID della risorsa account contenitore

  • esempio: {{.Account}}

ID gruppo

stringa

percorso

Vero

ID della risorsa del gruppo contenitore

Corpo della richiesta

Indica i valori desiderati per la risorsa API Role Binding da creare.

Nome Tipo Obbligatorio Descrizione

tipo

stringa

Vero

Tipo di media della risorsa. I valori definiti sono:

  • "application/astra-roleBinding"

versione

stringa

Vero

Versione della risorsa. I valori definiti sono:

  • "1,0"

  • "1,1"

ID utente

stringa

Falso

Stringa JSON contenente un ID risorsa utente. I valori definiti sono:

  • Conforme allo schema di identificazione Astra. Se non specificato in fase di creazione, verrà utilizzato un UUID nullo. In fase di creazione è possibile specificare solo userID o groupID.

ID gruppo

stringa

Falso

Stringa JSON contenente un ID risorsa di gruppo. I valori definiti sono:

  • Conforme allo schema di identificazione Astra. Se non specificato in fase di creazione, verrà utilizzato un UUID nullo. In fase di creazione è possibile specificare solo userID o groupID.

ID account

stringa

Vero

Stringa JSON contenente l'ID di una risorsa account. Per la creazione, questo deve corrispondere all'ID dell'account nell'URI della richiesta. I valori definiti sono:

  • Conforme allo schema identificativo Astra

ruolo

stringa

Vero

Stringa JSON contenente uno dei quattro ruoli definiti. I valori definiti sono:

  • "spettatore"

  • "membro"

  • "admin"

  • "proprietario"

roleConstraints

array[string]

Falso

Array JSON di stringhe JSON che specificano l'ambito dell'assegnazione del ruolo. I valori definiti sono:

  • Conforme allo schema dei vincoli di ruolo di Astra. Se non specificato in fase di creazione, il valore verrà impostato su un array di dimensione 1 contenente la stringa "*" che rappresenta "ambito completo". Se non specificato in fase di aggiornamento, il valore verrà mantenuto senza modifiche. Un array vuoto rappresenta "nessun ambito". Esempi: *

    = Consenti l'accesso a qualsiasi risorsa: "roleConstraints": ["*"]

*

+ = nega l'accesso a tutte le risorse: "roleConstraints": []

*

+ = Consenti l'accesso solo a una risorsa namespace specifica: "roleConstraints": [ "namespaces:id='6fa2f917-f730-41b8-9c15-17f531843b31'" ]

*

+ = Consenti l'accesso a uno specifico namespace e a tutto ciò che contiene: "roleConstraints": [ "namespaces:id='6fa2f917-f730-41b8-9c15-17f531843b31'.*" ]

*

+ = Consenti l'accesso a tutti i namespace etichettati "dev" in qualsiasi cluster in qualsiasi cloud e a tutto ciò che si trova al loro interno: "roleConstraints": [ "namespaces:kubernetesLabels='dev.example.com/appname=dev'.*" ]

*

+ = Consenti l'accesso solo a tutte le risorse dello spazio dei nomi: "roleConstraints": [ "namespaces:*" ]

*

+ = Consenti l'accesso a tutte le risorse dello spazio dei nomi e a tutto ciò che si trova al loro interno: ""roleConstraints": [ "namespaces:." ]

metadati

"aggiornamento dei metadati di tipo Astra"

Falso

Metadati specificati dal client e dal servizio associati alla risorsa. I valori definiti sono:

  • Conforme allo schema dei metadati di Astra. Se non specificato in fase di creazione, verrà creato un oggetto metadati senza etichette. Se non specificato in fase di aggiornamento, le etichette dell'oggetto metadati, creationTimestamp e createdBy, verranno conservate senza modifiche.

Esempio di richiesta
{
  "type": "application/astra-roleBinding",
  "version": "1.1",
  "userID": "00000000-0000-0000-0000-000000000000",
  "groupID": "6f7f5bb3-1320-4861-bd8a-d3a4106d36b1",
  "accountID": "9fd87309-067f-48c9-a331-527796c14cf3",
  "role": "viewer",
  "roleConstraints": [
    "*"
  ]
}

Risposta

Status: 201, Returns the newly created roleBinding resource in the JSON response body.
Nome Tipo Obbligatorio Descrizione

tipo

stringa

Vero

Tipo di media della risorsa. I valori definiti sono:

  • "application/astra-roleBinding"

versione

stringa

Vero

Versione della risorsa. I valori definiti sono:

  • "1,0"

  • "1,1"

id

stringa

Vero

Identificatore univoco globale della risorsa. I valori definiti sono:

  • Conforme allo schema UUIDv4

principalType

stringa

Vero

Stringa JSON che rappresenta il tipo di entità principale a cui è associato questo binding. I valori definiti sono:

  • "utente"

  • "group" Per principalType "user", è richiesto un ID utente non nullo. Per principalType "group", è richiesto un ID gruppo non nullo.

ID utente

stringa

Vero

Stringa JSON contenente un ID risorsa utente. I valori definiti sono:

  • Conforme allo schema di identificazione Astra. Se non specificato in fase di creazione, verrà utilizzato un UUID nullo. In fase di creazione è possibile specificare solo userID o groupID.

ID gruppo

stringa

Vero

Stringa JSON contenente un ID risorsa di gruppo. I valori definiti sono:

  • Conforme allo schema di identificazione Astra. Se non specificato in fase di creazione, verrà utilizzato un UUID nullo. In fase di creazione è possibile specificare solo userID o groupID.

ID account

stringa

Vero

Stringa JSON contenente l'ID di una risorsa account. Per la creazione, questo deve corrispondere all'ID dell'account nell'URI della richiesta. I valori definiti sono:

  • Conforme allo schema identificativo Astra

ruolo

stringa

Vero

Stringa JSON contenente uno dei quattro ruoli definiti. I valori definiti sono:

  • "spettatore"

  • "membro"

  • "admin"

  • "proprietario"

roleConstraints

array[string]

Falso

Array JSON di stringhe JSON che specificano l'ambito dell'assegnazione del ruolo. I valori definiti sono:

  • Conforme allo schema dei vincoli di ruolo di Astra. Se non specificato in fase di creazione, il valore verrà impostato su un array di dimensione 1 contenente la stringa "*" che rappresenta "ambito completo". Se non specificato in fase di aggiornamento, il valore verrà mantenuto senza modifiche. Un array vuoto rappresenta "nessun ambito". Esempi: *

    = Consenti l'accesso a qualsiasi risorsa: "roleConstraints": ["*"]

*

+ = nega l'accesso a tutte le risorse: "roleConstraints": []

*

+ = Consenti l'accesso solo a una risorsa namespace specifica: "roleConstraints": [ "namespaces:id='6fa2f917-f730-41b8-9c15-17f531843b31'" ]

*

+ = Consenti l'accesso a uno specifico namespace e a tutto ciò che contiene: "roleConstraints": [ "namespaces:id='6fa2f917-f730-41b8-9c15-17f531843b31'.*" ]

*

+ = Consenti l'accesso a tutti i namespace etichettati "dev" in qualsiasi cluster in qualsiasi cloud e a tutto ciò che si trova al loro interno: "roleConstraints": [ "namespaces:kubernetesLabels='dev.example.com/appname=dev'.*" ]

*

+ = Consenti l'accesso solo a tutte le risorse dello spazio dei nomi: "roleConstraints": [ "namespaces:*" ]

*

+ = Consenti l'accesso a tutte le risorse dello spazio dei nomi e a tutto ciò che si trova al loro interno: ""roleConstraints": [ "namespaces:." ]

metadati

"aggiornamento dei metadati di tipo Astra"

Vero

Metadati specificati dal client e dal servizio associati alla risorsa. I valori definiti sono:

  • Conforme allo schema dei metadati di Astra. Se non specificato in fase di creazione, verrà creato un oggetto metadati senza etichette. Se non specificato in fase di aggiornamento, le etichette dell'oggetto metadati, creationTimestamp e createdBy, verranno conservate senza modifiche.

Risposta tipo
{
  "type": "application/astra-roleBinding",
  "version": "1.1",
  "id": "a198f052-5cd7-59d3-9f27-9ea32a21fbca",
  "principalType": "group",
  "userID": "00000000-0000-0000-0000-000000000000",
  "groupID": "6f7f5bb3-1320-4861-bd8a-d3a4106d36b1",
  "accountID": "9fd87309-067f-48c9-a331-527796c14cf3",
  "role": "viewer",
  "roleConstraints": [
    "*"
  ],
  "metadata": {
    "labels": [],
    "creationTimestamp": "2022-10-06T20:58:16.305662Z",
    "modificationTimestamp": "2022-10-06T20:58:16.305662Z",
    "createdBy": "8f84cf09-8036-51e4-b579-bd30cb07b269"
  }
}

Risposta

Status: 401, Unauthorized
Nome Tipo Obbligatorio Descrizione

tipo

stringa

Vero

titolo

stringa

Vero

dettaglio

stringa

Vero

stato

stringa

Vero

ID correlazione

stringa

Falso

Risposta tipo
{
  "type": "https://astra.netapp.io/problems/3",
  "title": "Missing bearer token",
  "detail": "The request is missing the required bearer token.",
  "status": "401"
}

Risposta

Status: 400, Bad request
Nome Tipo Obbligatorio Descrizione

tipo

stringa

Vero

titolo

stringa

Vero

dettaglio

stringa

Vero

stato

stringa

Vero

ID correlazione

stringa

Falso

invalidFields

vettore["invalidFields"]

Falso

Elenco dei campi non validi del corpo della richiesta

Risposta tipo
{
  "type": "https://astra.netapp.io/problems/5",
  "title": "Invalid query parameters",
  "detail": "The supplied query parameters are invalid.",
  "status": "400"
}

Risposta

Status: 409, Conflict
Nome Tipo Obbligatorio Descrizione

tipo

stringa

Vero

titolo

stringa

Vero

dettaglio

stringa

Vero

stato

stringa

Vero

ID correlazione

stringa

Falso

invalidFields

vettore["invalidFields"]

Falso

Elenco dei campi non validi del corpo della richiesta

Risposta tipo
{
  "type": "https://astra.netapp.io/problems/10",
  "title": "JSON resource conflict",
  "detail": "The request body JSON contains a field that conflicts with an idempotent value.",
  "status": "409"
}

Risposta

Status: 403, Forbidden
Nome Tipo Obbligatorio Descrizione

tipo

stringa

Vero

titolo

stringa

Vero

dettaglio

stringa

Vero

stato

stringa

Vero

ID correlazione

stringa

Falso

Risposta tipo
{
  "type": "https://astra.netapp.io/problems/11",
  "title": "Operation not permitted",
  "detail": "The requested operation isn't permitted.",
  "status": "403"
}

Errore

Status: 404, Not found
Nome Tipo Obbligatorio Descrizione

tipo

stringa

Vero

titolo

stringa

Vero

dettaglio

stringa

Vero

stato

stringa

Vero

ID correlazione

stringa

Falso

Esempio di risposta di errore
{
  "type": "https://astra.netapp.io/problems/2",
  "title": "Collection not found",
  "detail": "The collection specified in the request URI wasn't found.",
  "status": "404"
}

Definizioni

Vedi definizioni

etichetta tipo_astra

Nome Tipo Obbligatorio Descrizione

nome

stringa

Vero

valore

stringa

Vero

aggiornamento dei metadati di tipo Astra

Metadati specificati dal client e dal servizio associati alla risorsa. I valori definiti sono:

  • Conforme allo schema dei metadati di Astra. Se non specificato in fase di creazione, verrà creato un oggetto metadati senza etichette. Se non specificato in fase di aggiornamento, le etichette dell'oggetto metadati, creationTimestamp e createdBy, verranno conservate senza modifiche.

Nome Tipo Obbligatorio Descrizione

etichette

vettore["etichetta tipo_astra"]

Falso

CreationTimestamp

stringa

Falso

ModificationTimestamp

stringa

Falso

CreatedBy

stringa

Falso

modifiedBy

stringa

Falso

invalidParams

Nome Tipo Obbligatorio Descrizione

nome

stringa

Vero

Nome del parametro di query non valido

motivo

stringa

Vero

Motivo per cui il parametro di query non è valido

invalidFields

Nome Tipo Obbligatorio Descrizione

nome

stringa

Vero

Nome del campo del corpo della richiesta non valido

motivo

stringa

Vero

Motivo per cui il campo del corpo della richiesta non è valido