基本数据库服务的策略详细信息

本文提供了有关编写 Oracle Cloud Infrastructure Identity and Access Management (IAM) 策略以控制对 Oracle Base Database Service 资源的访问的详细信息。

提示:有关示例策略,请参阅让数据库管理员管理 Oracle Cloud 数据库系统。

资源类型

聚合资源类型涵盖直接跟随的各个资源类型的列表。例如,编写一个策略以允许组访问 database-family 等效于为组编写单独的策略,以授予对 db-systems、db-nodes、db-homes、databases、database-software-image 和 db-backups 资源类型的访问权限。有关更多信息,请参见 How Policies Work 中的 Resource-Types 。

聚合资源类型

单个资源类型

支持的变量

仅支持常规变量。有关更多信息,请参见 Policy Reference 中的 General Variables for All Requests 。

有关动词和资源类型组合的详细信息

下表显示了每个动词所涵盖的权限和 API 操作。从 inspect > read > use > manage 开始,访问级别是累积的。表单元格中的加号 (+) 表示与正上方的单元格相比的增量访问,而“无额外”表示没有增量访问。

例如,与 inspect 动词相比,db-systems 资源类型的 read 和 use 动词不包含额外的权限或 API 操作。但是,manage 动词增加了两个权限,并部分涵盖了另外两个 API 操作。

db 系统

动词 权限 完全覆盖的 API 部分涵盖的 API
检验 数据库系统检查 ListDbSystems
GetDbSystem
ListDbSystemPatches
ListDbSystemPatchHistoryEntries
GetDbSystemPatch
GetDbSystemPatchHistoryEntry
无
读取 无额外费用 无额外费用 无
使用 数据库系统更新 无额外费用 ChangeDbSystemCompartment(也需要 use db-homes、use databases 和 inspect db-backups)
管理 使用 +
DB_SYSTEM_CREATE
DB_SYSTEM_DELETE
UpdateDBSystem LaunchDBSystem、TerminateDbSystem(两者也需要 manage db-homes、manage databases、use vnics 和 use subnets)

db 节点

动词 权限 完全覆盖的 API 部分涵盖的 API
检验 数据库节点检查
数据库节点查询
GetDbNode 无
读取 无额外费用 无额外费用 无
使用 无额外费用 无额外费用 无
管理 使用 +
DB_NODE_POWER_ACTIONS
DbNodeAction 无

db-homes

动词 权限 完全覆盖的 API 部分涵盖的 API
检验 DB_HOME 检查 ListDBHome
GetDBHome
ListDbHomePatches
ListDbHomePatchHistoryEntries
GetDbHomePatch
GetDbHomePatchHistoryEntry
无
读取 无额外费用 无额外费用 无
使用 数据库主页更新 UpdateDBHome ChangeDbSystemCompartment(也需要 use db-systems、use databases 和 inspect db-backups)
管理 使用 +
数据库 _ 主页 _ 创建
数据库 _ 主页 _ 删除
无额外费用 LaunchDBSystem, TerminateDbSystem (both also need manage db-systems, manage databases, use vnics, and use subnets).
If automatic backups are enabled on the default database, also needs manage db-backups.
CreateDbHome, (also needs use db-systems and manage databases).
If creating the Database Home by restoring from a backup, also needs read db-backups.
DeleteDbHome, (also needs use db-systems and manage databases).
If automatic backups are enabled on the default database, also needs manage db-backups.
If the performFinalBackup option is selected, also needs manage db-backups and read databases.

数据库

动词 权限 完全覆盖的 API 部分涵盖的 API
检验 数据库检查 ListDatabases
GetDatabase
ListDataGuardAssociations
GetDataGuardAssociation
无
读取 无额外
DATABASE_CONTENT_READ
无额外费用 无
使用 读取 +
DATABASE_CONTENT_WRITE
数据库更新
UpdateDatabase
SwitchoverDataGuardAssociation
FailoverDataGuardAssociation
ReinstateDataGuardAssociation
RotateVaultKey
MigrateVaultKey
CreateDataGuardAssociation
ChangeDbSystemCompartment(也需要 use db-systems、use db-homes 和 inspect db-backups)
管理 使用 +
DATABASE_CREATE
DATABASE_DELETE
无额外费用 LaunchDBSystem、TerminateDbSystem(两者也需要 manage db-systems、manage db-homes、use vnics 和 use subnets)

可插拔数据库

动词 权限 完全覆盖的 API 部分涵盖的 API
检验 PLUGGABLE_DATABASE_INSPECT ListPluggableDatabases
GetPluggableDatabase
无
读取 检查 +
PLUGGABLE_DATABASE_CONTENT_READ
无额外费用 无
使用 读取 +
PLUGGABLE_DATABASE_CONTENT_WRITE
PLUGGABLE_DATABASE_UPDATE
UpdatePluggableDatabases
StartPluggableDatabase
StopPluggableDatabase
无
管理 使用 +
PLUGGABLE_DATABASE_CREATE
PLUGGABLE_DATABASE_DELETE
无额外费用 CreatePluggableDatabase、DeletePluggableDatabase、LocalClonePluggableDatabase、RemoteClonePluggableDatabase(也需要 use databases)

数据库备份

动词 权限 完全覆盖的 API 部分涵盖的 API
检验 DB_BACKUP 检查 GetBackup
ListBackups
ChangeDbSystemCompartment(也需要 use db-systems、use db-homes 和 use databases)
读取 检查 +
DB_BACKUP_CONTENT_READ
无 RestoreDatabase(也需要 use databases)
使用 无额外费用 无额外费用 无
管理 使用 +
DB_BACKUP_CREATE
DB_BACKUP_DELETE
DeleteBackup CreateBackup(也需要 read databases)

有关权限和动词的更多信息,请参见 Advanced Policy Features 。

每个 API 操作所需的权限

下表按逻辑顺序列出了数据库系统和可插入数据库的 API 操作,这些操作按资源类型分组。

数据库 API 操作

API 操作 操作所需的权限
ListDbSystems 数据库系统检查
GetDbSystem 数据库系统检查
LaunchDbSystem DB_SYSTEM_CREATE 和
DB_HOME_CREATE and
DATABASE_CREATE and
VNIC_CREATE and
VNIC_ATTACH and
SUBNET_ATTACH
要为初始数据库启用自动备份,还需要
DB_BACKUP_CREATE 和
DATABASE_CONTENT_READ
UpdateDbSystem DB_SYSTEM_INSPECT 和
DB_SYSTEM_UPDATE
ChangeDbSystemCompartment DB_SYSTEM_UPDATE 和
DB_HOME_UPDATE 以及
DATABASE_UPDATE 和
DB_BACKUP_INSPECT
ListDbSystemPatches 数据库系统检查
ListDbSystemPatchHistoryEntries 数据库系统检查
GetDbSystemPatch 数据库系统检查
GetDbSystemPatchHistoryEntry 数据库系统检查
TerminateDbSystem DB_SYSTEM_DELETE 和
DB_HOME_DELETE and
DATABASE_DELETE and
VNIC_DETACH and
VNIC_DELETE and
SUBNET_DETACH
如果为数据库系统中的任何数据库启用了自动备份,则还需要
DB_BACKUP_DELETE
GetDbNode 数据库节点检查
DbNodeAction 数据库节点权限操作
ListDbHomes DB_HOME 检查
GetDbHome DB_HOME 检查
ListDbHomePatches DB_HOME 检查
ListDbHomePatchHistoryEntries DB_HOME 检查
GetDbHomePatch DB_HOME 检查
GetDbHomePatchHistoryEntry DB_HOME 检查
CreateDbHome DB_SYSTEM_INSPECT 和
DB_SYSTEM_UPDATE 以及
DB_HOME_CREATE 和
DATABASE_CREATE
要为数据库启用自动备份,还需要
DB_BACKUP_CREATE 和
DATABASE_CONTENT_READ
UpdateDbHome 数据库主页更新
DeleteDbHome DB_SYSTEM_UPDATE 和
DB_HOME_DELETE 和
DATABASE_DELETE
如果启用了自动备份,则还需要 DB_BACKUP_DELETE
如果在终止时执行最终备份,则还需要
DB_BACKUP_CREATE 和
DATABASE_CONTENT_READ
ListDatabases 数据库检查
GetDatabase 数据库检查
UpdateDatabase DATABASE_UPDATE
要启用自动备份,还需要
DB_BACKUP_CREATE 和
DATABASE_CONTENT_READ
ListDbSystemShapes (无需任何权限;可供任何人使用)
ListDbVersions (无需任何权限;可供任何人使用)
GetDataGuardAssociation 数据库检查
ListDataGuardAssociations 数据库检查
CreateDataGuardAssociation DB_SYSTEM_UPDATE 和
DB_HOME_CREATE and
DB_HOME_UPDATE and
DATABASE_CREATE and
DATABASE_UPDATE
SwitchoverDataGuardAssociation DATABASE_UPDATE
FailoverDataGuardAssociation DATABASE_UPDATE
ReinstateDataGuardAssociation DATABASE_UPDATE
MigrateVaultKey DATABASE_UPDATE
RotateVaultKey DATABASE_UPDATE
GetBackup DB_BACKUP 检查
ListBackups DB_BACKUP 检查
CreateBackup DB_BACKUP_CREATE 和
DATABASE_CONTENT_READ
DeleteBackup DB_BACKUP_DELETE 和
DB_BACKUP_INSPECT
RestoreDatabase DB_BACKUP_INSPECT 和
DB_BACKUP_CONTENT_READ 和
DATABASE_CONTENT_WRITE

可插入数据库 API 操作

API 操作 操作所需的权限
ListPluggableDatabase PLUGGABLE_DATABASE_INSPECT
GetPluggableDatabase PLUGGABLE_DATABASE_INSPECT
CreatePluggableDatabase DATABASE_INSPECT
DATABASE_UPDATE

PLUGGABLE_DATABASE_CREATE
如果在 CDB 上启用了自动备份并包括此 PDB,则需要其他权限:
PLUGGABLE_DATABASE_CONTENT_READ
UpdatePluggableDatabase PLUGGABLE_DATABASE_INSPECT 和
PLUGGABLE_DATABASE_UPDATE
如果在 CDB 上启用了自动备份并包括此 PDB,则需要其他权限:
PLUGGABLE_DATABASE_CONTENT_READ
StartPluggableDatabase PLUGGABLE_DATABASE_INSPECT 和
PLUGGABLE_DATABASE_UPDATE
StopPluggableDatabase PLUGGABLE_DATABASE_INSPECT 和
PLUGGABLE_DATABASE_UPDATE
DeletePluggableDatabase DATABASE_INSPECT(存在)
DATABASE_UPDATE(存在)
PLUGGABLE_DATABASE_DELETE
LocalClonePluggableDatabase DATABASE_INSPECT
DATABASE_UPDATE

PLUGGABLE_DATABASE_INSPECT
PLUGGABLE_DATABASE_UPDATE
PLUGGABLE_DATABASE_CONTENT_READ
PLUGGABLE_DATABASE_CREATE
PLUGGABLE_DATABASE_CONTENT_WRITE
RemoteClonePluggableDatabase DATABASE_INSPECT
DATABASE_UPDATE

PLUGGABLE_DATABASE_INSPECT
PLUGGABLE_DATABASE_UPDATE
PLUGGABLE_DATABASE_CONTENT_READ
PLUGGABLE_DATABASE_CREATE
PLUGGABLE_DATABASE_CONTENT_WRITE

有关权限和动词的更多信息,请参见 Advanced Policy Features 。