更新时间:2025-12-18 GMT+08:00
分享

策略授权参考

本章节介绍OBS策略授权场景下支持的策略授权项。

支持的授权项

策略包含系统策略和自定义策略,如果系统策略不满足授权要求,管理员可以创建自定义策略,并通过给用户组授予自定义策略来进行精细的访问控制。策略支持的操作与API相对应,授权项列表说明如下:

  • 权限:允许或拒绝对指定资源在特定条件下进行某项操作。
  • 对应API接口:自定义策略实际调用的API接口。
  • 授权项:自定义策略中支持的Action,在自定义策略中的Action中写入授权项,可以实现授权项对应的权限功能。
  • 依赖的授权项:部分Action存在对其他Action的依赖,需要将依赖的Action同时写入授权项,才能实现对应的权限功能。
  • IAM项目(Project)/企业项目(Enterprise Project):自定义策略的授权范围,包括IAM项目与企业项目。授权范围如果同时支持IAM项目和企业项目,表示此授权项对应的自定义策略,可以在IAM和企业管理两个服务中给用户组授权并生效。如果仅支持IAM项目,不支持企业项目,表示仅能在IAM中给用户组授权并生效,如果在企业管理中授权,则该自定义策略不生效。管理员可以在授权项列表中查看授权项是否支持IAM项目或企业项目,“√”表示支持,“×”表示暂不支持。关于IAM项目与企业项目的区别,详情请参见:IAM与企业管理的区别

OBS的支持自定义策略授权项如下所示:

  • 桶相关授权项,包含OBS所有桶操作接口对应的授权项,如创建桶、列举桶、列举对象、删除桶、设置桶的访问权限、设置桶生命周期等接口。
  • 对象相关授权项,包括OBS所有对象操作接口对应的授权项,如上传对象、下载对象、删除对象、设置对象权限等接口。

桶相关授权项

表1 桶相关授权项列表

权限

对应API接口

授权项(Action)

IAM项目(Project)

企业项目(Enterprise Project)

列举全部桶

获取桶列表-ListBuckets

obs:bucket:ListAllMyBuckets

创建桶

创建桶-CreateBucket

obs:bucket:CreateBucket

列举桶内对象

列举桶内对象-ListObjects

obs:bucket:ListBucket

列举桶内多版本对象

列举桶内对象-ListObjects

obs:bucket:ListBucketVersions

判断桶是否存在并获取桶的元数据

获取桶元数据-GetBucketMetadata

obs:bucket:HeadBucket

获取桶位置

获取桶区域位置-GetBucketLocation

obs:bucket:GetBucketLocation

删除桶

删除桶-DeleteBucket

obs:bucket:DeleteBucket

设置桶策略

设置桶策略-SetBucketPolicy

obs:bucket:PutBucketPolicy

获取桶策略配置的相关信息

获取桶策略-GetBucketPolicy

obs:bucket:GetBucketPolicy

删除桶策略

删除桶策略-DeleteBucketPolicy

obs:bucket:DeleteBucketPolicy

设置桶ACL

设置桶ACL-SetBucketAcl

obs:bucket:PutBucketAcl

获取桶ACL的相关信息

获取桶ACL-GetBucketAcl

obs:bucket:GetBucketAcl

设置桶日志记录

设置桶日志管理配置-SetBucketLogging

obs:bucket:PutBucketLogging

获取桶日志记录的相关信息

获取桶日志管理配置-GetBucketLogging

obs:bucket:GetBucketLogging

设置和删除桶生命周期规则

设置桶的生命周期配置-SetBucketLifecycle

删除桶的生命周期配置-DeleteBucketLifecycle

obs:bucket:PutLifecycleConfiguration

获取桶生命周期规则

获取桶的生命周期配置-GetBucketLifecycle

obs:bucket:GetLifecycleConfiguration

设置多版本

设置桶的多版本状态-SetBucketVersioning

obs:bucket:PutBucketVersioning

获取桶多版本的相关信息

获取桶的多版本状态-GetBucketVersioning

obs:bucket:GetBucketVersioning

设置桶默认存储类型

设置桶默认存储类型-PutBucketStoragePolicy

obs:bucket:PutBucketStoragePolicy

获取桶默认存储类型

获取桶默认存储类型-GetBucketStoragePolicy

obs:bucket:GetBucketStoragePolicy

设置桶的跨区域复制配置

设置桶的跨区域复制配置-SetBucketReplication

obs:bucket:PutReplicationConfiguration

获取桶的跨区域复制配置

获取桶的跨区域复制配置-GetBucketReplication

obs:bucket:GetReplicationConfiguration

删除桶的跨区域复制配置

删除桶的跨区域复制配置-DeleteBucketReplication

obs:bucket:DeleteReplicationConfiguration

设置桶标签

设置桶标签-SetBucketTagging

obs:bucket:PutBucketTagging

获取桶标签

获取桶标签-GetBucketTagging

obs:bucket:GetBucketTagging

删除桶标签

删除桶标签-DeleteBucketTagging

obs:bucket:DeleteBucketTagging

设置桶配额

设置桶配额-SetBucketQuota

obs:bucket:PutBucketQuota

获取桶配额

获取桶配额-GetBucketQuota

obs:bucket:GetBucketQuota

获取桶存量信息

获取桶存量信息-GetBucketStorageInfo

obs:bucket:GetBucketStorage

设置桶清单

设置桶清单-SetBucketInventory

obs:bucket:PutBucketInventoryConfiguration

获取和列举桶清单

获取桶清单-GetBucketInventory

列举桶清单-ListBucketInventory

obs:bucket:GetBucketInventoryConfiguration

删除桶清单

删除桶清单-DeleteBucketInventory

obs:bucket:DeleteBucketInventoryConfiguration

设置桶的自定义域名

设置桶的自定义域名-SetBucketCustomdomain

obs:bucket:PutBucketCustomDomainConfiguration

获取桶的自定义域名

获取桶的自定义域名-GetBucketCustomdomain

obs:bucket:GetBucketCustomDomainConfiguration

删除桶的自定义域名

删除桶的自定义域名-DeleteBucketCustomdomain

obs:bucket:DeleteBucketCustomDomainConfiguration

设置和删除桶的加密配置

设置桶的加密配置-SetBucketEncryption

删除桶的加密配置-DeleteBucketEncryption

obs:bucket:PutEncryptionConfiguration

获取桶的加密配置

获取桶的加密配置-GetBucketEncryption

obs:bucket:GetEncryptionConfiguration

设置桶归档存储对象直读策略

设置桶归档存储对象直读策略-SetDirectcoldaccess

obs:bucket:PutDirectColdAccessConfiguration

获取桶归档存储对象直读策略

获取桶归档存储对象直读策略-GetDirectcoldaccess

obs:bucket:GetDirectColdAccessConfiguration

删除桶归档存储对象直读策略

删除桶归档存储对象直读策略-DeleteDirectcoldaccess

obs:bucket:DeleteDirectColdAccessConfiguration

设置桶的静态网站托管

设置桶的网站配置-SetBucketWebsite

obs:bucket:PutBucketWebsite

获取桶的静态网站配置的相关信息

获取桶的网站配置-GetBucketWebsite

obs:bucket:GetBucketWebsite

删除桶的静态网站托管配置

删除桶的网站配置-DeleteBucketWebsite

obs:bucket:DeleteBucketWebsite

设置和删除桶CORS

设置桶的CORS配置-SetBucketCors

删除桶的CORS配置-DeleteBucketCors

obs:bucket:PutBucketCORS

获取桶CORS配置的相关信息

获取桶的CORS配置-GetBucketCors

obs:bucket:GetBucketCORS

删除解压策略

删除在线解压策略

obs:notificationPolicy:DeleteDecompressRules

配置桶级默认WORM策略

配置桶级默认WORM策略-SetBucketObjectLock

obs:bucket:PutBucketObjectLockConfiguration

获取桶级默认WORM策略

获取桶级默认WORM策略-GetBucketObjectLock

obs:bucket:GetBucketObjectLockConfiguration

设置桶级阻止公开访问配置

设置桶级阻止公共访问配置-SetBucketPublicAccessBlock

obs:bucket:PutBucketPublicAccessBlock

获取桶级阻止公开访问配置

获取桶级阻止公共访问配置-GetBucketPublicAccessBlock

obs:bucket:GetBucketPublicAccessBlock

删除桶级阻止公开访问配置

删除桶级阻止公共访问配置-DeleteBucketPublicAccessBlock

obs:bucket:DeleteBucketPublicAccessBlock

获取桶公开状态

获取桶公共状态-GetBucketPublicStatus

obs:bucket:GetBucketPublicStatus

获取桶策略公开状态

获取桶策略公共状态-GetBucketPolicyPublicStatus

obs:bucket:GetBucketPolicyPublicStatus

列举桶中已初始化多段任务

列举桶中已初始化多段任务-ListMultipartUploads

obs:bucket:ListBucketMultipartUploads

对象相关授权项

表2 对象相关授权项列表

权限

对应API接口

授权项(Action)

IAM项目(Project)

企业项目(Enterprise Project)

可用作于PUT上传对象,POST上传对象,复制对象,追加写对象,初始化上传段任务,上传段,拷贝段,合并段,修改写对象,截断对象,重命名对象

PUT上传-PutObject

POST上传-PostObject

复制对象-CopyObject

追加写对象-AppendObject

初始化上传段任务-InitiateMultipartUpload

上传段-UploadPart

合并段-CompleteMultipartUpload

修改写对象-UploadModifyObject

截断对象-TruncateObject

重命名对象-RenameObject

obs:object:PutObject

获取对象内容和对象元数据

下载对象-GetObject

获取对象元数据-HeadObject

obs:object:GetObject

获取指定版本对象内容和对象元数据

下载对象-GetObject

获取对象元数据-HeadObject

obs:object:GetObjectVersion

单个删除和批量删除对象

删除对象-DeleteObject

批量删除对象-DeleteObjects

obs:object:DeleteObject

单个删除和批量删除指定版本对象

删除对象-DeleteObject

批量删除对象-DeleteObjects

obs:object:DeleteObjectVersion

恢复归档存储对象

恢复归档存储或深度归档存储对象-RestoreObject

obs:object:RestoreObject

设置对象ACL

设置对象ACL-SetObjectAcl

obs:object:PutObjectAcl

设置指定版本对象ACL

设置对象ACL-SetObjectAcl

obs:object:PutObjectVersionAcl

获取对象ACL的相关信息

获取对象ACL-GetObjectAcl

obs:object:GetObjectAcl

获取指定版本对象ACL的相关信息

获取对象ACL-GetObjectAcl

obs:object:GetObjectVersionAcl

修改对象元数据

修改对象元数据-SetObjectMetadata

obs:object:ModifyObjectMetaData

列举已上传段

列举已上传未合并的段-ListParts

obs:object:ListMultipartUploadParts

取消多段上传任务

取消多段上传任务-AbortMultipartUpload

obs:object:AbortMultipartUpload

设置对象标签

设置对象标签-PutObjectTagging

obs:object:PutObjectTagging

获取对象标签

获取对象标签-GetObjectTagging

obs:object:GetObjectTagging

删除对象标签

删除对象标签-DeleteObjectTagging

obs:object:DeleteObjectTagging

配置对象级WORM保护策略

配置对象级WORM保护策略-SetObjectLock

obs:object:PutObjectRetention

获取对象级WORM保护策略

获取对象元数据-HeadObject

obs:object:GetObjectRetention

相关文档