Políticas de IAM para una base de datos de IA autónoma

Proporciona información sobre las políticas de IAM necesarias para las operaciones de API en Autonomous AI Database.

Oracle Autonomous AI Database se basa en el servicio IAM (Identity and Access Management) para autenticar y autorizar a los usuarios de la nube a realizar operaciones que utilicen cualquiera de las interfaces de la instancia de Oracle Cloud Infrastructure (consola, API REST, CLI o SDK).

Puede asignar roles a los usuarios en función de las actividades específicas de la base de datos que pueden realizar, como la copia de seguridad y la recuperación, la gestión de claves y las operaciones de ciclo de vida (como parar, iniciar y escalar).

El servicio IAM utiliza grupos, compartimentos y políticas para controlar qué usuarios en la nube pueden acceder a qué recursos.

Detalles de política para base de datos de IA autónoma

En este tema, se tratan los detalles de cómo escribir políticas para controlar el acceso a los recursos de Autonomous AI Database.

Una política define qué tipo de acceso tiene un grupo de usuarios a un recurso específico en un compartimento individual. Para obtener más información, consulte Introducción a las políticas.

Tipos de recursos

Un tipo de recurso agregado cubre la lista de tipos de recursos individuales que le siguen directamente. Por ejemplo, escribir la política para permitir que un grupo tenga acceso a autonomous-database-family equivale a escribir cuatro políticas independientes para el grupo que otorguen acceso a los tipos del recurso autonomous-databases y autonomous-backups. Para obtener más información, consulte Tipos de recursos.

Tipos de recursos para la base de datos de IA autónoma

Tipo de Recurso Agregado:

autonomous-database-family

Tipos de recursos individuales:

autonomous-databases

autonomous-backups

Detalles de las combinaciones de verbo + tipo de recurso

El nivel de acceso es acumulativo a medida que pasa de inspect > read > use > manage. Un signo más (+) en una celda de una tabla indica el acceso incremental con respecto a la celda situada directamente encima, mientras que "sin extra" indica no hay ningún acceso incremental.

Por ejemplo, el verbo read para el tipo de recurso autonomous-databases abarca los mismos permisos y operaciones en API que el verbo inspect, además del permiso AUTONOMOUS_DATABASE_CONTENT_READ El verbo read abarca parcialmente la operación CreateAutonomousDatabaseBackup, que también necesita gestionar permisos para autonomous-backups.

En las siguientes tablas se muestran los permiso y operaciones de API que cubre cada verbo. Para obtener información sobre los permisos, consulte Permisos.

Nota

Nota: La familia de recursos cubierta por autonomous-database-family se puede utilizar para otorgar acceso a la base de datos de los recursos asociados a todos los tipos a carga de trabajo de la base de datos de IA autónoma.

Tipos de recursos de bases de datos autónomas

Verbos Permisos API totalmente cubiertas API parcialmente cubiertas
inspect AUTONOMOUS_DATABASE_INSPECT GetAutonomousDatabase, GetAutonomousDatabaseBackupConfig, GetAutonomousDatabaseCapability, ListAutonomousDatabases, ListAutonomousDatabaseClones, ListAutonomousDatabasePeers, ListAutonomousDatabaseRefreshableClones, ResourcePoolShapes ninguno
leído

INSPECT +

AUTONOMOUS_DATABASE_CONTENT_READ

GenerateAutonomousDatabasePerformanceData, GenerateAutonomousDatabaseWallet, GetAutonomousDatabaseRegionalWallet, GetAutonomousDatabaseWallet, RetrieveDatabasePerformanceBulkData CreateAutonomousDatabaseBackup (también necesita manage autonomous-backups)
usar

READ +

AUTONOMOUS_DATABASE_CONTENT_WRITE

AUTONOMOUS_DATABASE_UPDATE

AutonomousDatabaseManualRefresh, CancelAutonomousDatabaseSession, ChangeDisasterRecoveryConfiguration, ConfigureAutonomousDatabaseVaultKey, DeregisterAutonomousDatabaseDataSafe, DisableAutonomousDatabaseOperationsInsights, DisableDatabaseManagement, EnableAutonomousDatabaseOperationsInsights, EnableDatabaseManagement, FailOverAutonomousDatabase, GetAutonomousDatabaseConsoleToken, RegisterAutonomousDatabaseDataSafe, RestartAutonomousDatabase, RotateAutonomousDatabaseEncryptionKey, ShrinkAutonomousDatabase, StartAutonomousDatabase, StopAutonomousDatabase, SwitchOverAutonomousDatabase, UpdateAutonomousDatabaseRegionalWallet, UpdateAutonomousDatabase

RestoreAutonomousDatabase (también necesita read autonomous-backups)

ChangeAutonomousDatabaseCompartment (también necesita read autonomous-backups)

gestionar

USE +

AUTONOMOUS_DATABASE_CREATE

AUTONOMOUS_DATABASE_DELETE

NETWORK_SECURITY_GROUP_UPDATE_MEMBERS

CreateAutonomousDatabase, DeleteAutonomousDatabase ninguno

copias de seguridad autónomas

Verbos Permisos API totalmente cubiertas API parcialmente cubiertas
inspect AUTONOMOUS_DB_BACKUP_INSPECT ListAutonomousDatabaseBackups, GetAutonomousDatabaseBackup ninguno
gestionar

USE +

AUTONOMOUS_DB_BACKUP_CREATE

AUTONOMOUS_DB_BACKUP_DELETE

DeleteAutonomousDatabaseBackup CreateAutonomousDatabaseBackup (también necesita read autonomous-databases)
leído

INSPECT +

AUTONOMOUS_DB_BACKUP_CONTENT_READ

no extra

RestoreAutonomousDatabase (también necesita use autonomous-databases)

ChangeAutonomousDatabaseCompartment (también necesita use autonomous-databases)

usar

READ +

no extra

no extra ninguno

Variables soportadas

Todas las variables generales de OCI Identity and Access Management están soportadas. Consulte Variables generales para todas las solicitudes para obtener más información.

Además, puede utilizar la variable target.id con el OCID de una base de datos después de la creación de una base de datos y la variable target.workloadType con un valor como se muestra en la siguiente tabla:

Valor de target.workloadType Descripción
OLTP Procesamiento de transacciones en línea, que se utiliza para bases de datos de IA autónomas con carga de trabajo de procesamiento de transacciones.
LH Lakehouse, utilizado para la base de datos de IA autónoma con cargas de trabajo analíticas y de plataforma de datos.
DW Data Warehouse, utilizado para bases de datos de IA autónomas con carga de trabajo de almacén de datos.
AJD Autonomous JSON Database utilizado para bases de datos de IA autónomas con carga de trabajo JSON.
APEX Servicio APEX utilizado para Autonomous AI Database APEX Service.

Política de ejemplo que utiliza la variable target.id:

Allow group ADB-Admins to manage autonomous-databases in tenancy where target.id = 'OCID'

Política de ejemplo con la variable target.workloadType:

Allow group ADB-Admins to manage autonomous-databases in tenancy where target.workloadType = 'AJD'

Puede utilizar la variable request.operation.actiontype que identifica el cambio de configuración o suboperación específico que se solicita en una operación como updateAutonomousDatabase o createAutonomousDatabase. Puede controlar estos tipos de acción en políticas mediante el parámetro request.operation.actiontype. Esto le permite controlar las acciones en detalle y asegurarse de que tiene el acceso necesario para su rol.

Ejemplo de políticas que utilizan la variable request.operation.actiontype:

Cuando una política otorga acceso a un tipo de acción específico mediante request.operation.actiontype, se limita a esa suboperación y no puede realizar otras acciones de actualización a menos que se incluyan explícitamente en la política. Por ejemplo,

allow group MyGroup to manage autonomous-database-family where request.operation.actiontype =
      'adminPassword'

La política anterior otorga al grupo permiso para cambiar la contraseña ADMIN, pero no para modificar otros atributos como la configuración de recursos informáticos, almacenamiento o red.

Del mismo modo, es posible excluir una operación sensible al tiempo que se permiten otras, por ejemplo:

allow group MyGroup to manage autonomous-database-family where request.operation.actiontype
      != 'adminPassword'

En la siguiente tabla se muestra la variable ActionType, cada una de las cuales representa una suboperación específica se puede utilizar con CreateAutonomousDatabase o UpdateAutonomousDatabase:

ActionType Operación
adminPassword Defina la contraseña de administrador o defina secretID para el almacén.
scheduledOperations Defina el programa para las copias de seguridad a largo plazo.
customerContacts Gestione la información de contacto del cliente para avisos operativos, anuncios y mantenimiento no planificado.
dbToolsConfigure Activar o desactivar las herramientas de la base de datos.
licenseModel Actualice las opciones Traiga su propia licencia (BYOL) y el recuento de ECPU para BYOL.
updateElasticPool Actualice las opciones del pool elástico.
upgradeToPaid Permitir una actualización desde el desarrollador o la versión gratuita a la versión de pago.
displayName Actualización del nombre mostrado.
joinElasticPool Unir un pool elástico como miembro.
disasterRecoveryType Actualice a Autonomous Data Guard para la recuperación ante desastre.
manageEncryptionKeys Gestionar claves de cifrado (gestionadas por Oracle o gestionadas por el cliente).
openMode Cambie los modos de operación de la base de datos entre lectura o escritura y solo lectura.
whitelistedIps Modifique las IP permitidas en las listas de control de acceso de la base de datos de IA autónoma para controlar el acceso a la red.
networkConfig Actualice la configuración de red, incluidas las opciones públicas o privadas.
dbName Cambie el nombre de la base de datos.
computeCount Amplíe los límites de recursos informáticos.
autoScalingConfig Active o desactive la escala automática de recursos informáticos.
dataStorageSize Amplíe los límites de almacenamiento.
autoScalingForStorageConfig Active o desactive la opción de escala automática.
dbWorkload Cambie el tipo de carga de trabajo.
scheduleDbVersionUpgrade Defina fechas específicas o los primeros programas disponibles para las actualizaciones de versión planificadas de la base de datos.
vanityUrl Defina la URL personalizada o modifique los detalles de la URL personalizada.
maintenanceScheduleType Cambie el programa de aplicación de parches entre las ventanas de mantenimiento early y regular.

Políticas de IAM necesarias para gestionar una instancia de base de datos de IA autónoma

Operación Políticas de IAM necesarias
Agregar base de datos de peer use autonomous-databases
Agregar atributos de seguridad use autonomous-databases
Cambiar modelo de recurso informático use autonomous-databases
Cambiar modo de base de datos use autonomous-databases
Cambiar red use autonomous-databases
Cambiar tipo de carga de trabajo use autonomous-databases
Clonación de una base de datos de IA autónoma

manage autonomous-databases

Consulte Permisos de IAM y operaciones de API para la base de datos de IA autónoma para obtener permisos de clonación adicionales en la base de datos de IA autónoma.

Creación de una base de datos de IA autónoma

manage autonomous-databases

read autonomous-databases

Editar configuración de Database Tools use autonomous-databases
Editar programa de inicio/parada use autonomous-databases
Activar pool elástico use autonomous-databases
Activar o desactivar la escala automática para una base de datos de IA autónoma use autonomous-databases
Unirse al pool elástico use autonomous-databases
Gestionar contactos de cliente use autonomous-databases
Gestionar clave de cifrado use autonomous-databases
Mover una base de datos de IA autónoma a otro compartimento

use autonomous-databases en el compartimento actual de la base de datos y en el compartimento al que la está moviendo

read autonomous-backups

Cambio de nombre de una base de datos de IA autónoma use autonomous-databases
Reinicio de una base de datos de IA autónoma use autonomous-databases
Restauración de una base de datos de IA autónoma

use autonomous-databases

read autonomous-backups

Escalar el recuento de ECPU o el almacenamiento de una base de datos de IA autónoma use autonomous-databases
Definir contraseña de usuario ADMIN use autonomous-databases
Parar o iniciar una base de datos de IA autónoma use autonomous-databases
Switchover use autonomous-databases
Terminación de una base de datos de IA autónoma manage autonomous-databases
Actualizar recuperación ante desastres use autonomous-databases
Actualizar nombre mostrado use autonomous-databases
Actualización de la licencia y Oracle AI Database Edition use autonomous-databases
Actualizar acceso de red para ACL use autonomous-databases
Actualizar el acceso de red para un punto final privado use autonomous-databases
Visualización de una lista de bases de datos de IA autónomas inspect autonomous-databases
Ver detalles de una base de datos de IA autónoma inspect autonomous-databases

Permisos de IAM y operaciones de API para la base de datos de IA autónoma

En este tema se tratan los permisos de IAM disponibles para las operaciones en Autonomous AI Database.

Estas operaciones se agrupan en permisos para permitir que los roles típicos realicen estas operaciones. Si se necesitan permisos más granulares, estos se pueden combinar con suboperaciones y tipos de acción. UpdateAutonomousDatabase incluye varias operaciones, pero se pueden limitar en función de los tipos de acción descritos en la sección anterior.

A continuación se muestran los permisos de IAM para Autonomous AI Database:

  • AUTONOMOUS_DATABASE_CONTENT_READ

  • AUTONOMOUS_DATABASE_CONTENT_WRITE

  • AUTONOMOUS_DATABASE_CREATE

    Consulte Clonación de permisos para conocer las limitaciones de clonación adicionales.

  • AUTONOMOUS_DATABASE_DELETE

  • AUTONOMOUS_DATABASE_INSPECT

  • AUTONOMOUS_DATABASE_UPDATE

  • AUTONOMOUS_DB_BACKUP_CONTENT_READ

  • AUTONOMOUS_DB_BACKUP_CREATE

  • AUTONOMOUS_DB_BACKUP_INSPECT

  • NETWORK_SECURITY_GROUP_UPDATE_MEMBERS

  • VNIC_ASSOCIATE_NETWORK_SECURITY_GROUP

Política de ejemplo para que un grupo tenga permisos para crear Oracle Autonomous AI Database en un compartimento:

Allow group group-name to manage autonomous-database in compartment id compartment-ocid
    where all{request.permission = 'AUTONOMOUS_DATABASE_UPDATE'}
Operación de API Permisos necesarios para usar la operación
GenerateAutonomousDatabaseWallet
GetAutonomousDatabaseRegionalWallet
GetAutonomousDatabaseWallet
RetrieveDatabasePerformanceBulkData
AUTONOMOUS_DATABASE_CONTENT_READ
CreateAutonomousDatabase AUTONOMOUS_DATABASE_CREATE
DeleteAutonomousDatabase AUTONOMOUS_DATABASE_DELETE
GetAutonomousDatabase
ListAutonomousDatabaseClones
ListAutonomousDatabasePeers
ListAutonomousDatabaseRefreshableClones
ResourcePoolShapes
AUTONOMOUS_DATABASE_INSPECT
AutonomousDatabaseManualRefresh
ConfigureAutonomousDatabaseVaultKey
DeregisterAutonomousDatabaseDataSafe
DisableAutonomousDatabaseOperationsInsights
DisableDatabaseManagement
EnableAutonomousDatabaseOperationsInsights
EnableDatabaseManagement
FailOverAutonomousDatabase
RegisterAutonomousDatabaseDataSafe
RestartAutonomousDatabase
RotateAutonomousDatabaseEncryptionKey
ShrinkAutonomousDatabase
StartAutonomousDatabase
StopAutonomousDatabase
SwitchOverAutonomousDatabase
UpdateAutonomousDatabaseWallet
UpdateAutonomousDatabaseRegionalWallet
AUTONOMOUS_DATABASE_UPDATE
GetAutonomousDatabaseBackup
ListAutonomousDatabaseBackups
AUTONOMOUS_DB_BACKUP_INSPECT
UpdateAutonomousDatabaseBackup AUTONOMOUS_DB_BACKUP_UPDATE
CreateAutonomousDatabaseBackup AUTONOMOUS_DB_BACKUP_CREATE
AUTONOMOUS_DATABASE_CONTENT_READ
DeleteAutonomousDatabaseBackup AUTONOMOUS_DB_BACKUP_INSPECT
AUTONOMOUS_DB_BACKUP_DELETE
RestoreAutonomousDatabase AUTONOMOUS_DB_BACKUP_INSPECT
AUTONOMOUS_DB_BACKUP_CONTENT_READ
AUTONOMOUS_DATABASE_CONTENT_WRITE
ChangeAutonomousDatabaseCompartment

Necesario en el compartimento de origen y de destino:

AUTONOMOUS_DATABASE_UPDATE

AUTONOMOUS_DB_BACKUP_INSPECT

AUTONOMOUS_DB_BACKU_CREATE

AUTONOMOUS_DATABASE_CONTENT_WRITE

Necesario tanto en el compartimento de origen como en el de destino cuando está activado el punto final privado:

WNIC_ASSOCIATE_NETOWRK_SECURITY_GROUP

NETWORK_SECURITY_GROUP_UPDATE_MEMBERS

UpdateAutonomousDatabase: utilice esta API para los cambios o actualizaciones de cualquiera de las siguientes operaciones:

Nota: Para obtener permisos más granulares, utilice estas suboperaciones como actiontype al definir una política para el usuario.

  • definir contraseña de administrador (adminPassword)
  • programa de inicio o detención automáticos (scheduledOperations)
  • gestionar contactos del cliente (customerContacts)
  • Editar Configuración de Herramienta (dbToolsDetails)
  • actualizar las opciones de licencia BYOL (licenseModel y byolComputeCountLimit)
  • actualizar nombre mostrado (displayName)
  • unir un pool elástico
  • actualizar opciones de pool elástico
  • gestionar claves de cifrado
  • actualización a Autonomous Data Guard para la recuperación ante desastres (isLocalDataGuardEnabled y disasterRecoveryType)
  • cambiar los modos de operación de la base de datos entre lectura o escritura y solo lectura (openMode)
  • modificar las IP de la lista blanca en las listas de control de acceso de la base de datos de IA autónoma para controlar el acceso a la red (whitelistedIps)
  • actualizar el acceso de red con el punto final privado (privateEndpointLabel)
  • cambiar el nombre de la base de datos (dbName)
  • escalar límites de recursos informáticos (computeCount)
  • Gestionar la opción de escala automática de recursos informáticos (isAutoScalingEnabled)
  • escalar límites de almacenamiento ( dataStorageSizeInTBs)
  • Gestionar opciones de escala automática de almacenamiento (isAutoScalingForStorageEnabled)
  • cambiar tipo a carga de trabajo (dbWorkload)

Tres casos posibles:

  • Si la Carga de Trabajo es NULL: AUTONOMOUS_DATABASE_UPDATE
  • Si la Carga de Trabajo no es NULL:

    AUTONOMOUS_DATABASE_CREATE

    AUTONOMOUS_DATABASE_UPDATE

  • Si el etiquetado está activado:

    AUTONOMOUS_DATABASE_UPDATE

    AUTONOMOUS_DATABASE_INSPECT

ChangeAutonomousDatabaseSubscription requiere changeAutonomousDatabaseSubscription
SaasAdminUserStatus requiere getSaasAdminUser

ConfigureSaasAdminUser

ListAutonomousDatabaseCharacterSets

ListAutonomousDatabaseMaintenanceWindows

requiere updateSaasAdminUser

Clonación de permisos

Los permisos generales de IAM están soportados para Autonomous AI Database. Además, puede utilizar target.autonomous-database.cloneType con los valores de permiso soportados para controlar el nivel de acceso, como se muestra en la siguiente tabla.

Valor target.autonomous-database.cloneType Descripción
CLONE-FULL Permitir solo clonación completa.
CLONE-METADATA Permitir sólo clonación de metadatos.
CLONE-REFRESHABLE Permitir solo clonación de refrescamiento.
/CLONE*/ Permitir cualquier tipo de clonación.

Políticas de ejemplo con los valores de permiso target.autonomous-database.cloneType soportados:

Allow group group-name to manage autonomous-databases in compartment id compartment-ocid
    where all {request.permission =  'AUTONOMOUS_DATABASE_CREATE', target.autonomous-database.cloneType = 'CLONE-FULL'}
Allow group group-name to manage autonomous-databases in compartment id compartment-ocid
    where all {request.permission =  'AUTONOMOUS_DATABASE_CREATE', target.autonomous-database.cloneType = 'CLONE-METADATA'}
Allow group group-name to manage autonomous-databases in compartment id compartment-ocid
    where all {request.permission =  'AUTONOMOUS_DATABASE_CREATE', target.autonomous-database.cloneType = 'CLONE-REFRESHABLE'}
Allow group group-name to manage autonomous-databases in compartment id compartment-ocid
    where all {request.permission =  'AUTONOMOUS_DATABASE_CREATE', target.autonomous-database.cloneType = /CLONE*/}

Consulte Permisos para obtener más información.

Proporcionar privilegios específicos en las políticas de IAM para gestionar una base de datos de IA autónoma

Muestra las políticas de IAM que puede utilizar con un verbo de autorización y una condición para otorgar operaciones más granulares a un grupo.

Por ejemplo, para permitir que el grupo MyGroup inicie bases de datos de IA autónomas mediante la API StartAutonomousDatabase:

Allow MyGroup to manage autonomous-databases where request.operation = 'StartAutonomousDatabase'

Consulte Verbos y Condiciones para obtener más información.

  • autonomousDatabaseManualRefresh
  • changeAutonomousDatabaseCompartment
  • changeAutonomousDatabaseSubscription
  • changeDisasterRecoveryConfiguration
  • configureAutonomousDatabaseVaultKey
  • configureSaasAdminUser
  • createAutonomousDatabase
  • createAutonomousDatabaseBackup
  • deleteAutonomousDatabase
  • deleteAutonomousDatabaseBackup
  • deregisterAutonomousDatabaseDataSafe
  • disableAutonomousDatabaseManagement
  • disableAutonomousDatabaseOperationsInsights
  • enableAutonomousDatabaseManagement
  • enableAutonomousDatabaseOperationsInsights
  • failOverAutonomousDatabase
  • generateAutonomousDatabaseWallet
  • getAutonomousDatabase
  • getAutonomousDatabaseBackup
  • getAutonomousDatabaseRegionalWallet
  • getAutonomousDatabaseWallet
  • listAutonomousDatabaseBackups
  • listAutonomousDatabaseCharacterSets
  • listAutonomousDatabaseClones
  • listAutonomousDatabaseMaintenanceWindows
  • listAutonomousDatabasePeers
  • listAutonomousDatabaseRefreshableClones
  • listAutonomousDatabases
  • registerAutonomousDatabaseDataSafe
  • resourcePoolShapes
  • restartAutonomousDatabase
  • restoreAutonomousDatabase
  • rotateAutonomousDatabaseEncryptionKey
  • SaasAdminUserStatus
  • shrinkAutonomousDatabase
  • startAutonomousDatabase
  • stopAutonomousDatabase
  • switchoverAutonomousDatabase
  • updateAutonomousDatabase
  • updateAutonomousDatabaseBackup
  • updateAutonomousDatabaseRegionalWallet
  • updateAutonomousDatabaseWallet

El verbo de autorización updateAutonomousDatabase agrupa privilegios para utilizar varias operaciones de API.

  • DeregisterAutonomousDatabaseDataSafe
  • DisableAutonomousDatabaseOperationsInsights
  • DisableDatabaseManagement
  • EnableAutonomousDatabaseOperationsInsights
  • RegisterAutonomousDatabaseDataSafe

Por ejemplo:

Allow MyGroup to manage autonomous-databases where request.operation =  'updateAutonomousDatabase'