详情页标题前

阿里云对象存储OSSPython管理版本控制-云淘科技

详情页1

版本控制应用于存储空间(Bucket)内的所有文件(Object)。通过Object的版本管理,在错误覆盖或者删除Object后,您能够将Bucket中存储的Object恢复至任意时刻的历史版本。

Bucket的版本状态包括非版本化(默认)、开启版本控制及暂停版本控制三种。关于版本控制状态的更多信息,请参见版本控制概述。

注意事项

  • 本文以华东1(杭州)外网Endpoint为例。如果您希望通过与OSS同地域的其他阿里云产品访问OSS,请使用内网Endpoint。关于OSS支持的Region与Endpoint的对应关系,请参见访问域名和数据中心。
  • 本文以从环境变量读取访问凭证为例。如何配置访问凭证,请参见Python配置访问凭证。

  • 本文以OSS域名新建OSSClient为例。如果您希望通过自定义域名、STS等方式新建OSSClient,请参见Python初始化。
  • 要设置Bucket版本控制状态,您必须具有oss:PutBucketVersioning权限;要获取Bucket版本控制状态信息,您必须具有oss:GetBucketVersioning权限。具体操作,请参见为RAM用户授权自定义的权限策略。

设置Bucket版本控制状态

以下代码用于设置Bucket为开启版本控制(Enabled)或暂停版本控制(Suspended)状态。

# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider
from oss2.models import BucketVersioningConfig
# 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# 填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
# yourBucketName填写存储空间名称。
bucket = oss2.Bucket(auth, 'https://oss-cn-hangzhou.aliyuncs.com', 'yourBucketName')

# 创建bucket版本控制配置。
config = BucketVersioningConfig()
# 状态配置为Enabled或Suspended。
config.status = oss2.BUCKET_VERSIONING_ENABLE

# 设置bucket版本控制状态。
result = bucket.put_bucket_versioning(config)
# 查看http返回码。
print('http response code:', result.status)

获取Bucket版本控制状态信息

以下代码用于获取Bucket的版本控制状态信息。

# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider
# 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# 填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
# yourBucketName填写存储空间名称。
bucket = oss2.Bucket(auth, 'https://oss-cn-hangzhou.aliyuncs.com', 'yourBucketName')

# 获取bucket版本控制状态信息。
versioning_info = bucket.get_bucket_versioning()
# 查看bucket版本控制状态, 如果曾开启过版本控制则返回Enabled或Suspended, 如果从未开启过版本控制则返回None。
print('bucket versioning status:', versioning_info.status)

相关文档

  • 关于管理版本控制的完整示例代码,请参见GitHub示例。

  • 关于设置Bucket版本控制状态的API接口说明,请参见PutBucketVersioning。

  • 关于获取Bucket版本控制状态的API接口说明,请参见GetBucketVersioning。

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/158168.html

(0)
上一篇 2023年12月10日
下一篇 2023年12月10日
详情页2

相关推荐

  • 阿里云对象存储OSSC++创建存储空间-云淘科技

    存储空间(Bucket)是存储对象(Object)的容器。对象都隶属于存储空间。本文介绍如何创建存储空间。 注意事项 本文以华东1(杭州)外网Endpoint为例。如果您希望通过与OSS同地域的其他阿里云产品访问OSS,请使用内网Endpoint。关于OSS支持的Region与Endpoint的对应关系,请参见访问域名和数据中心。 本文以OSS域名新建OSS…

    阿里云对象存储 2023年12月10日
  • 阿里云RDS数据库功能特性-云淘科技

    由于实例的版本、系列、存储类型不同,支持的功能也不同,您可以通过本文查看各引擎的功能支持情况。 MySQL功能概览 PostgreSQL功能概览 SQL Server功能概览 MariaDB功能概览 内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家阿里云企业补贴进行中: 马上申请腾讯云限时活动1折起,即将结束: 马上收藏同尘科技为腾讯云授权服务中…

    阿里云数据库 2023年12月9日
  • 阿里云日志服务SLSOSS投递新旧版本对比-云淘科技

    本文介绍OSS投递新旧版本的区别以及如何将旧版本升级到新版本。 新旧版对比 对比项 OSS投递(旧版) OSS投递(新版) 投递数据时间范围 支持从创建OSS投递任务时开始投递数据。 支持从创建OSS投递任务时开始投递数据。 支持投递历史数据。 任务数 在一个Logstore中,只可创建一个OSS投递任务。 在一个Logstore中,可创建多个OSS投递任务…

    阿里云日志服务SLS 2023年12月10日
  • 阿里云对象存储OSS基于OSS构建HLS流-云淘科技

    OSS支持以RTMP协议推流音视频至存储空间(Bucket),并转储为HLS协议格式,同时提供了丰富的鉴权、授权机制实现更细颗粒度的音视频数据访问控制。 前提条件 已创建了存储空间。具体操作,请参见控制台创建存储空间。 基础操作 OSS支持使用RTMP推流协议上传H264格式的视频数据和AAC格式的音频数据,并通过访问PlayURL地址的方式获取音视频数据。…

    阿里云对象存储 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云对象存储OSS列举存储空间-云淘科技

    存储空间(Bucket)按字母序排列。您可以结合实际场景列举当前账号下的所有存储空间、指定前缀的存储空间、指定个数的存储空间等。 列举条件 您可以通过设置prefix、marker或者max-keys参数列举满足指定条件的存储空间。 参数名称 描述 prefix 限制返回的存储空间名称必须以prefix作为前缀。如果不指定该参数,则返回所有存储空间。 mar…

    阿里云对象存储 2023年12月10日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。