I provider di servizi possono utilizzare l'API di VMware Cloud Director per creare estensioni che forniscano funzionalità aggiuntive di VMware Cloud Director ai tenant. Se sono state ricevute le autorizzazioni di accesso da un provider di servizi, è possibile gestire le entità definite e condividerle con gli altri tenant.

I provider di servizi possono creare i tipi di entità definite in fase di runtime consentendo alle estensioni di archiviare e manipolare le informazioni specifiche dell'estensione in VMware Cloud Director. Ad esempio, un'estensione Kubernetes può archiviare informazioni sui cluster Kubernetes che gestisce nelle entità definite in fase di runtime. L'estensione può quindi fornire API di estensione per la gestione di tali cluster utilizzando le informazioni delle entità definite in fase di runtime. Se il provider di servizi condivide con l'utente il bundle dei diritti per il tipo di entità definite in fase di runtime, è possibile creare istanze di questo tipo.

Quando si crea un'entità definita in un'organizzazione tenant, non è possibile condividere l'entità definita con i tenant di un'altra organizzazione. Non è possibile sostituire il proprietario di un'entità definita con un utente di un'altra organizzazione.

Accesso alle entità definite

Due meccanismi complementari controllano l'accesso alle entità definite in fase di runtime.

  • Diritti: quando un provider di servizi crea un tipo di entità definita in fase di runtime, crea un bundle dei diritti per tale tipo. Un provider di servizi deve assegnare uno o più dei cinque diritti specifici dei tipi: Visualizza: TYPE, Modifica: TYPE, Controllo completo: TYPE, Vista amministratore: TYPE e Controllo completo amministratore: TYPE.

    I diritti Visualizza: TYPE, Modifica: TYPE e Controllo completo: TYPE sono validi solo in combinazione con una voce ACL.

  • Elenco di controllo di accesso (ACL): la tabella ACL contiene voci che definiscono l'accesso degli utenti a entità specifiche nel sistema. Fornisce un livello di controllo aggiuntivo sulle entità. Ad esempio, mentre un diritto Modifica: TYPE specifica che un utente può modificare le entità a cui può accedere, la tabella ACL definisce le entità a cui l'utente può accedere.
Tabella 1. Diritti e voci ACL per le operazioni RDE
Operazione entità Opzione Descrizione
Lettura Diritto Vista amministratore: TYPE Gli utenti con questo diritto possono visualizzare tutte le entità definite in fase di runtime di questo tipo all'interno di un'organizzazione.
Diritto Visualizza: TYPE e voce ACL >= Visualizza Gli utenti con questo diritto e un ACL di livello lettura possono visualizzare le entità definite in fase di runtime di questo tipo.
Modifica Diritto Controllo completo amministratore: TYPE Gli utenti con questo diritto possono creare, visualizzare, modificare ed eliminare le entità definite in fase di runtime di questo tipo in tutte le organizzazioni.
Diritto Modifica: TYPE e voce ACL >= Modifica Gli utenti con questo diritto e un ACL di livello modifica possono creare, visualizzare e modificare le entità definite in fase di runtime di questo tipo.
Elimina Diritto Controllo completo amministratore: TYPE Gli utenti con questo diritto possono creare, visualizzare, modificare ed eliminare le entità definite in fase di runtime di questo tipo in tutte le organizzazioni.
Diritto Controllo completo: TYPE e voce ACL = Controllo completo Gli utenti con questo diritto e un ACL di livello controllo completo possono creare, visualizzare, modificare ed eliminare le entità definite in fase di runtime di questo tipo.

Condivisione delle entità definite con un altro utente

Se un amministratore di sistema pubblica il bundle dei diritti per un tipo di entità definito e concede all'utente l'accesso ReadWrite o FullControl oppure l'utente è proprietario dell'entità definita, l'utente può condividere l'accesso a tali entità con altri utenti.

  1. Assegnare il diritto Visualizza: TYPE, Modifica: TYPE o Controllo completo: TYPE dal bundle ai ruoli utente che si desidera dispongano del livello di accesso specifico all'entità definita.

    Nota: È necessario aver effettuato l'accesso come amministratore di sistema o amministratore dell'organizzazione per assegnare diritti.

    Ad esempio, se si desidera che gli utenti con il ruolo tkg_viewer possano visualizzare i cluster Tanzu Kubernetes all'interno dell'organizzazione, è necessario aggiungere il diritto Visualizza: Cluster guest Tanzu Kubernetes al ruolo. Se si desidera che gli utenti con il ruolo tkg_author possano creare, visualizzare e modificare i cluster Tanzu Kubernetes all'interno di questa organizzazione, aggiungere il diritto Modifica: Cluster guest Tanzu Kubernetes a tale ruolo. Se si desidera che gli utenti con il ruolo tkg_admin possano creare, visualizzare, modificare ed eliminare i cluster Tanzu Kubernetes all'interno di questa organizzazione, aggiungere il diritto Controllo completo: Cluster guest Tanzu Kubernetes al ruolo.

  2. Concedere all'utente specifico un elenco di controllo di accesso (ACL) effettuando la seguente chiamata REST API.

    POST https://[address]/cloudapi/1.0.0/entities/urn:vcloud:entity:[vendor]:[type name]:[version]:[UUID]/accessControls
     {
       "grantType" : "MembershipAccessControlGrant",
       "accessLevelId" : "urn:vcloud:accessLevel:[Access_level]",
       "memberId" : "urn:vcloud:user:[User_ID]"
     }

    Access_level deve essere ReadOnly, ReadWrite o FullControl. User_ID deve essere l'ID dell'utente a cui si desidera concedere l'accesso all'entità definita.

    È necessario disporre di accesso ReadWrite o FullControl a un'entità per concedere l'accesso ACL a tale entità.

    Gli utenti con il ruolo tkg_viewer, descritto nell'esempio, non possono concedere l'accesso ACL. Gli utenti con il ruolo tkg_author o tkg_admin possono condividere l'accesso a un'entità VMWARE:TKGCLUSTER con gli utenti che dispongono del ruolo tkg_viewer, tkg_author o tkg_admin concedendo loro l'accesso ACL mediante la richiesta API.

    Gli utenti con il diritto Controllo completo amministratore: Cluster guest Tanzu Kubernetes possono concedere l'accesso ACL a qualsiasi entità VMWARE:TKGCLUSTER.

    È inoltre possibile utilizzare le chiamate REST API per revocare l'accesso o per visualizzare chi ha accesso all'entità. Consultare la documentazione della REST API di VMware Cloud Director.

Modifica del proprietario di un'entità definita

Il proprietario di un'entità definita o un utente con il diritto Controllo completo amministratore: TYPE può trasferire la proprietà a un altro utente aggiornando il modello dell'entità definita e modificando il campo del proprietario con l'ID del nuovo proprietario.

Utilizzo delle definizioni entità personalizzata

Le definizioni delle entità personalizzate in VMware Cloud Director sono tipi di oggetto associati ai tipi di oggetto VMware Aria Automation Orchestrator. Gli utenti all'interno di un'organizzazione VMware Cloud Director possono possedere, gestire e modificare questi tipi in base alle proprie esigenze. Mediante l'esecuzione di servizi, gli utenti delle organizzazioni possono creare istanze di entità personalizzate e applicare azioni sulle istanze degli oggetti.