Storage di file con criteri Lustre
Utilizza il servizio Oracle Cloud Infrastructure Identity and Access Management (IAM) per creare criteri per lo storage di file con le risorse Lustre.
In questo argomento vengono descritti i dettagli per la scrittura di criteri per controllare l'accesso allo storage di file con il servizio Lustre. Per ulteriori informazioni, vedere Panoramica dei criteri IAM.
Panoramica della sintassi dei criteri
La sintassi generale di un'istruzione criterio è la seguente:
allow <subject> to <verb>
<resource-type> in <location> where <condition>
Ad esempio, è possibile specificare quanto riportato di seguito.
Gruppo o gruppo dinamico per nome o OCID come
<subject>. In alternativa, è possibile utilizzareany-userper coprire tutti gli utenti nella tenancy.inspect,read,useemanagecome<verb>per concedere a<subject>l'accesso a una o più autorizzazioni.Come si passa da
inspect>read>use>manage, il livello di accesso in genere aumenta e le autorizzazioni concesse sono cumulative. Ad esempio,useincludereadpiù la possibilità di eseguire l'aggiornamento.Una famiglia di risorse come
virtual-network-familyperresource-type. In alternativa, è possibile specificare una singola risorsa in una famiglia comevcnsesubnets.Compartimento in base al nome o all'OCID come
<location>. In alternativa, è possibile utilizzaretenancyper coprire l'intera tenancy.
Per ulteriori informazioni sulla creazione dei criteri, vedere Guida introduttiva ai criteri e Informazioni di riferimento sui criteri.
Tipi di risorsa
Per fornire agli utenti l'accesso allo storage di file con le risorse Lustre, creare criteri IAM con lo storage di file con i tipi di risorse Lustre.
Tipo di risorsa aggregato
-
lustre-file-family
Un criterio che utilizza <verb> lustre-file-family equivale a scriverne uno con un'istruzione <verb> <individual resource-type> separata per ciascuno dei singoli tipi di risorsa.
Per i dettagli delle operazioni API coperte da ciascun verbo, vedere le tabelle in Dettagli per verbi + combinazioni di tipi di risorsa per ogni singolo tipo di risorsa incluso in lustre-file-family.
Risorse singole - Tipi
Per accedere allo storage di file con risorse Lustre, utilizzare ciascuno dei seguenti tipi di risorse:
-
lustre-file-system -
lfs-work-request
Per ulteriori informazioni, vedere Esempi di criteri.
Variabili supportate
Il servizio Storage di file con Lustre supporta tutte le variabili generali, oltre a quelle elencate qui.
Per ulteriori informazioni sulle variabili generali supportate dai servizi OCI, vedere Variabili generali per tutte le richieste.
| Variabile | Tipo di variabile | Origine |
|---|---|---|
target.lustre-file-system.id | Entità (OCID) | Richiedi |
Dettagli per combinazioni di verbi + tipo di risorsa
Per creare un criterio è possibile utilizzare vari verbi e tipi di risorse di Oracle Cloud Infrastructure.
Le tabelle seguenti mostrano le operazioni autorizzazioni e API coperte da ciascun verbo per lo storage di file con Lustre. Il livello di accesso è cumulativo quando si passa da inspect a read a use a manage. Un segno più (+) in una cella di tabella indica l'accesso incrementale rispetto alla cella che la precede direttamente, mentre "no extra" indica l'assenza di accesso incrementale.
| Verbs | Autorizzazioni | API completamente coperte | API parzialmente coperte |
|---|---|---|---|
| ispezionare | LUSTRE_FILE_SYSTEM_INSPECT | | nessuno |
| leggi | ISPEZIONA + LUSTRE_FILE_SYSTEM_READ | ISPEZIONA + | nessuno |
| usa | LEGGI + LUSTRE_FILE_SYSTEM_UPDATE | LEGGI + | nessuno |
| gestisci | USE + LUSTRE_FILE_SYSTEM_CREATE LUSTRE_FILE_SYSTEM_DELETE LUSTRE_FILE_SYSTEM_MOVE | USE + | nessuno |
| Verbs | Autorizzazioni | API completamente coperte | API parzialmente coperte |
|---|---|---|---|
| ispezionare | LFS_WORK_REQUEST_INSPECT | ListWorkRequestLogs | nessuno |
| leggi | ISPEZIONA + LFS_WORK_REQUEST_READ | ISPEZIONA + | nessuno |
| usa | LEGGI + nessuno | LEGGI + nessuno | nessuno |
| gestisci | USE + LFS_WORK_REQUEST_DELETE | USE + | nessuno |
Autorizzazioni necessarie per ogni operazione API
Nella tabella seguente sono elencate le operazioni API per il database OCI con PostgreSQL in un ordine logico, raggruppate per tipo di risorsa.
I tipi di risorsa sono lustre-file-system e lfs-work-request.
Per informazioni sulle autorizzazioni, vedere Autorizzazioni.
| Operazione API | Autorizzazioni necessarie per utilizzare l'operazione |
|---|---|
ListLustreFileSystems | LUSTRE_FILE_SYSTEM_INSPECT |
GetLustreFileSystem | LUSTRE_FILE_SYSTEM_READ |
CreateLustreFileSystem | LUSTRE_FILE_SYSTEM_CREATE |
UpdateLustreFileSystem | LUSTRE_FILE_SYSTEM_UPDATE |
DeleteLustreFileSystem | LUSTRE_FILE_SYSTEM_DELETE |
ChangeLustreFileSystemCompartment | LUSTRE_FILE_SYSTEM_MOVE |
ListObjectStorageLinks | LFS_OBJECT_STORAGE_LINK_INSPECT |
GetObjectStorageLink | LFS_OBJECT_STORAGE_LINK_READ |
CreateObjectStorageLink | LFS_OBJECT_STORAGE_LINK_CREATE |
DeleteObjectStorageLink | LFS_OBJECT_STORAGE_LINK_DELETE |
ChangeObjectStorageLinkCompartment | LFS_OBJECT_STORAGE_LINK_MOVE |
ListSyncJobs | LFS_OBJECT_STORAGE_LINK_INSPECT |
GetSyncJob | LFS_OBJECT_STORAGE_LINK_READ |
StartExportToObject | LFS_EXPORT_TO_OBJECT |
StartImportFromObject | LFS_IMPORT_FROM_OBJECT |
StopExportToObject | LFS_EXPORT_TO_OBJECT |
StopImportFromObject | LFS_IMPORT_FROM_OBJECT |
ListWorkRequests | LFS_WORK_REQUEST_INSPECT |
GetWorkRequest | LFS_WORK_REQUEST_READ |
CancelWorkRequest | LFS_WORK_REQUEST_DELETE |
ListWorkRequestErrors | LFS_WORK_REQUEST_INSPECT |
ListWorkRequestLogs | LFS_WORK_REQUEST_INSPECT |
Criteri per la sincronizzazione bidirezionale tra lo storage degli oggetti e Lustre
Prima che un file system Lustre possa sincronizzare i dati con lo storage degli oggetti, è necessario concedere autorizzazioni specifiche. A tale scopo, creare criteri IAM (Identity and Access Management) che consentano al file system Lustre di leggere e gestire gli oggetti all'interno dei bucket di storage degli oggetti.
Dopo aver creato o aggiornato i criteri IAM, attendere 10 minuti prima di avviare un job di sincronizzazione per assicurarsi che le modifiche dei criteri siano state propagate completamente in Oracle Cloud Infrastructure.
- Visualizzare i bucket di storage degli oggetti (per la selezione).
- Crea, aggiorna e gestisce i collegamenti allo storage degli oggetti.
- Possibilità di avviare e arrestare i processi nel file system Lustre.
- Leggere e gestire gli oggetti nel bucket di storage degli oggetti specificato (per la sincronizzazione dei dati).
Il bucket di storage degli oggetti non richiede autorizzazioni esplicite. Invece, puoi controllare l'accesso al bucket concedendo alla risorsa Lustre l'autorizzazione a leggere e gestire gli oggetti.
- Opzione 1: assegnare le autorizzazioni utilizzando un gruppo dinamico: creare gruppi dinamici per raggruppare le risorse, ad esempio i file system Lustre, e assegnare loro collettivamente criteri. Abbiamo fornito alcuni esempi.
- Opzione 2: Controllare l'accesso ai file system Lustre (nessun gruppo dinamico): se non si desidera impostare un gruppo dinamico, è comunque possibile controllare l'accesso ai file system Lustre utilizzando le condizioni del tipo di risorsa, con o senza tag. Abbiamo fornito alcuni esempi.
Se il bucket di storage degli oggetti si trova in un compartimento nidificato, nel criterio specificare il percorso completo del compartimento (ad esempio,
my-tenancy.subcompartmentA.subcompartmentB) o utilizzare l'OCID del compartimento.Esempi di criteri
Utilizzare gli esempi seguenti per creare criteri comuni in aggiunta a quelli obbligatori per i file system e quelli obbligatori se si utilizza la chiave per la cifratura dei file system.
Consenti a un gruppo di utilizzare ma non eliminare i file system
allow group lfsadminusers to use lustre-file-family in compartment <file_system_compartment>
Criteri di sincronizzazione bidirezionale dello storage degli oggetti mediante gruppi dinamici
resource.type='lustrefilesystem'Per estendere la definizione del gruppo dinamico a solo un compartimento Lustre specifico, utilizzare:
All {resource.type = 'lustrefilesystem', resource.compartment.id = '<comp_ocid>'}Per concedere al gruppo dinamico l'accesso a qualsiasi bucket di storage degli oggetti in una tenancy, utilizzare:
allow dynamic-group lustre-fs-group to read buckets in tenancy
allow dynamic-group lustre-fs-group to manage objects in tenancy
Per concedere al gruppo dinamico l'accesso a un singolo compartimento Lustre in una tenancy, utilizzare quanto riportato di seguito.
allow dynamic-group lustre-fs-group to read buckets in compartment <comp id or name e.g. cell:compute-data>
allow dynamic-group lustre-fs-group to manage objects in compartment <comp id or name e.g. cell:compute-data>
Criteri di sincronizzazione bidirezionale dello storage degli oggetti senza utilizzare i gruppi dinamici
allow any-user to read buckets in compartment <comp id or name e.g. cell:compute-data> where ALL { request.principal.type = 'lustrefilesystem'}
allow any-user to manage objects in compartment <comp id or name e.g. cell:compute-data> where ALL { request.principal.type = 'lustrefilesystem'}Non rimuovere la condizione
request.principal.type = 'lustrefilesystem'. Limita l'accesso solo alle risorse del file system Lustre, non agli utenti o ad altri servizi.allow any-user to read buckets in compartment <comp id or name e.g. cell:compute-data> where ALL { request.principal.type = 'lustrefilesystem' , target.bucket.tag.<tag-namespace>.<tag-key> = <"tag-value">}
allow any-user to manage objects in compartment <comp id or name e.g. cell:compute-data> where ALL { request.principal.type = 'lustrefilesystem' , target.bucket.tag.<tag-namespace>.<tag-key> = <"tag-value">}