Almacenamiento de archivos con políticas Lustre
Utilice el servicio Oracle Cloud Infrastructure Identity and Access Management (IAM) para crear políticas para el almacenamiento de archivos con recursos Lustre.
En este tema, se tratan los detalles de las políticas para controlar el acceso a File Storage con el servicio Lustre. Para obtener más información, consulte Visión general de políticas de IAM.
Visión general de la sintaxis de las políticas
La sintaxis general de una sentencia de política es:
allow <subject> to <verb>
<resource-type> in <location> where <condition>
Por ejemplo, puede especificar:
Un grupo o grupo dinámico por nombre u OCID como
<subject>. O bien, puede utilizarany-userpara abarcar a todos los usuarios del arrendamiento.inspect,read,useymanagecomo<verb>para otorgar a<subject>acceso a uno o más permisos.A medida que vaya de
inspect>read>use>manage, el nivel de acceso aumenta y los permisos otorgados se van acumulando. Por ejemplo,useincluyereadmás la capacidad de actualizar.Una familia de recursos como
virtual-network-familypararesource-type. O bien, puede especificar un recurso individual en una familia comovcnsysubnets.Compartimento por nombre u OCID como
<location>. O bien, puede utilizartenancypara que se abarque todo el arrendamiento.
Para obtener más información sobre la creación de políticas, consulte Introducción a las políticas y Referencia de políticas.
Tipos de recursos
Para proporcionar a los usuarios acceso a File Storage con recursos de Lustre, cree políticas de IAM con File Storage con tipos de recursos de Lustre.
Tipo de recurso de agregado
-
lustre-file-family
Una política que utiliza <verb> lustre-file-family equivale a escribir una directiva con una sentencia <verb> <individual resource-type> independiente para cada uno de los tipos de recursos individuales.
Consulte en las tablas Detalles del verbo + tipo de recurso los detalles de las operaciones del API que cubre cada verbo para cada tipo de recurso individual incluido en lustre-file-family.
Tipos de recursos individuales
Para acceder a File Storage con recursos de Lustre, utilice cada uno de los siguientes tipos de recursos:
-
lustre-file-system -
lfs-work-request
Consulte Ejemplos de políticas para obtener más información.
Variables soportadas
El servicio File Storage with Lustre soporta todas las variables generales, además de las que se muestran aquí.
Para obtener más información sobre la variables generales soportadas por servicios de OCI, consulte Variables Generales para Todas las Solicitudes.
| Variable | Tipo de variable | Origen |
|---|---|---|
target.lustre-file-system.id | Entidad (OCID) | Solicitud |
Detalles de las combinaciones de verbo + tipo de recurso
Para crear una política se pueden utilizar varios verbos y tipos de recursos de Oracle Cloud Infrastructure.
En las siguientes tablas se muestran los permisos y la operaciones de API que abarca cada verbo para File Storage with Lustre. El nivel de acceso es acumulativo a medida que pasa de inspect a read a use a manage. Un signo más (+) en una celda de tabla indica el acceso incremental comparado con la celda que le precede directamente, mientras que "sin extra" indica no hay acceso incremental.
| Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
|---|---|---|---|
| inspect | LUSTRE_FILE_SYSTEM_INSPECT | | ninguno |
| leído | INSPECT + LUSTRE_FILE_SYSTEM_READ | INSPECT + | ninguno |
| usar | READ + LUSTRE_FILE_SYSTEM_UPDATE | READ + | ninguno |
| gestionar | USE + LUSTRE_FILE_SYSTEM_CREATE LUSTRE_FILE_SYSTEM_DELETE LUSTRE_FILE_SYSTEM_MOVE | USE + | ninguno |
| Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
|---|---|---|---|
| inspect | LFS_WORK_REQUEST_INSPECT | ListWorkRequestLogs | ninguno |
| leído | INSPECT + LFS_WORK_REQUEST_READ | INSPECT + | ninguno |
| usar | READ + ninguno | READ + ninguno | ninguno |
| gestionar | USE + LFS_WORK_REQUEST_DELETE | USE + | ninguno |
Permisos necesarios para cada operación de API
en la siguiente tabla se muestran las operaciones de API para OCI Database with PostgreSQL en un orden lógico, agrupadas por tipo de recurso.
Los tipos de recursos son lustre-file-system y lfs-work-request.
Para obtener información sobre los permisos, consulte Permisos.
| Operación de API | Permisos necesarios para utilizar la operación |
|---|---|
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 |
Políticas para la sincronización bidireccional entre Object Storage y Lustre
Para que un sistema de archivos Lustre pueda sincronizar datos con Object Storage, debe otorgarle permisos específicos. Para ello, cree políticas de Identity and Access Management (IAM) que permitan que el sistema de archivos Lustre lea y gestione objetos en los cubos de Object Storage.
- Ver cubos de Object Storage (para selección)
- Crear, actualizar y gestionar enlaces de Object Storage
- Capacidad para iniciar y parar trabajos en el sistema de archivos Lustre.
- Leer y gestionar objetos en el cubo de Object Storage especificado (para la sincronización de datos).
El cubo de almacenamiento de objetos no necesita permisos explícitos. En su lugar, puede controlar el acceso al cubo otorgando permiso al recurso Lustre para leer y gestionar objetos.
- Opción 1: asignar permisos mediante un grupo dinámico: cree grupos dinámicos para agrupar recursos, como sistemas de archivos Lustre, y asígneles políticas de forma colectiva. Hemos dado algunos ejemplos.
- Opción 2: Controlar el acceso a los sistemas de archivos Lustre (sin grupo dinámico): si no desea configurar un grupo dinámico, puede controlar el acceso a los sistemas de archivos Lustre mediante condiciones de tipo de recurso, con o sin etiquetas. Hemos dado algunos ejemplos.
Ejemplos de políticas
Utilice los siguientes ejemplos para crear políticas comunes además de las necesarias para sistemas de archivos y las necesarias si está cifrando sistemas de archivos con su propia clave.
Permitir que un grupo utilice pero no suprima sistemas de archivos
allow group lfsadminusers to use lustre-file-family in compartment <file_system_compartment>
Políticas de sincronización bidireccional de Object Storage mediante grupos dinámicos
resource.type='lustrefilesystem'Para ampliar la definición del grupo dinámico a solo un compartimento de Lustre específico, utilice:
All {resource.type = 'lustrefilesystem', resource.compartment.id = '<comp_ocid>'}Para otorgar al grupo dinámico acceso a cualquier cubo de Object Storage de un arrendamiento, utilice:
allow dynamic-group lustre-fs-group to read buckets in tenancy
allow dynamic-group lustre-fs-group to manage objects in tenancy
Para otorgar acceso de grupo dinámico a un único compartimento de Lustre en un arrendamiento, utilice:
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>
Políticas de sincronización bidireccional de Object Storage sin utilizar grupos dinámicos
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'}No elimine la condición
request.principal.type = 'lustrefilesystem'. Restringe el acceso solo a los recursos del sistema de archivos Lustre, no a los usuarios ni a otros servicios.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">}