日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

Python服務器端加密

OSS支持在服務器端對上傳的數據進行加密編碼(Server-Side Encryption)。上傳數據時,OSS對收到的用戶數據進行加密,然后再將得到的加密數據持久化保存下來。下載數據時,OSS自動對保存的加密數據進行解密并把原始數據返回給用戶,并在返回的HTTP請求Header中,聲明該數據進行了服務器端加密。

注意事項

  • 在配置服務器端加密之前,請確保您已了解該功能。詳情請參見服務器端加密

  • 本文以華東1(杭州)外網Endpoint為例。如果您希望通過與OSS同地域的其他阿里云產品訪問OSS,請使用內網Endpoint。關于OSS支持的RegionEndpoint的對應關系,請參見OSS地域和訪問域名

  • 本文以從環境變量讀取訪問憑證為例。如何配置訪問憑證,請參見配置訪問憑證

  • 本文以OSS域名新建OSSClient為例。如果您希望通過自定義域名、STS等方式新建OSSClient,請參見初始化

  • 要配置Bucket加密,您必須具有oss:PutBucketEncryption權限;要獲取Bucket加密配置,您必須具有oss:GetBucketEncryption權限;要刪除Bucket加密配置,您必須具有oss:DeleteBucketEncryption權限。具體操作,請參見RAM用戶授權自定義的權限策略

配置Bucket加密

您可以通過以下代碼設置Bucket默認加密方式,設置成功之后,所有上傳至該Bucket但未設置加密方式的Object都會使用Bucket默認加密方式進行加密:

# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider
from oss2.models import ServerSideEncryptionRule
# 從環境變量中獲取訪問憑證。運行本代碼示例之前,請確保已設置環境變量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())

# 填寫Bucket所在地域對應的Endpoint。以華東1(杭州)為例,Endpoint填寫為https://oss-cn-hangzhou.aliyuncs.com。
endpoint = "https://oss-cn-hangzhou.aliyuncs.com"
# 填寫Endpoint對應的Region信息,例如cn-hangzhou。注意,v4簽名下,必須填寫該參數
region = "cn-hangzhou"

# examplebucket填寫存儲空間名稱。
bucket = oss2.Bucket(auth, endpoint, "examplebucket", region=region)

# 創建Bucket加密配置,以AES256加密為例。
rule = ServerSideEncryptionRule()
rule.sse_algorithm = oss2.SERVER_SIDE_ENCRYPTION_AES256
# 設置KMS密鑰ID,加密方式為KMS可設置此項。如需使用指定的密鑰加密,需輸入指定的CMK ID;若使用OSS托管的CMK進行加密,此項為空。使用AES256進行加密時,此項必須為空。
rule.kms_master_keyid = ""

# 設置Bucket加密。
result = bucket.put_bucket_encryption(rule)

# 查看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.ProviderAuthV4(EnvironmentVariableCredentialsProvider())

# 填寫Bucket所在地域對應的Endpoint。以華東1(杭州)為例,Endpoint填寫為https://oss-cn-hangzhou.aliyuncs.com。
endpoint = "https://oss-cn-hangzhou.aliyuncs.com"
# 填寫Endpoint對應的Region信息,例如cn-hangzhou。注意,v4簽名下,必須填寫該參數
region = "cn-hangzhou"

# examplebucket填寫存儲空間名稱。
bucket = oss2.Bucket(auth, endpoint, "examplebucket", region=region)

# 獲取Bucket加密配置。
result = bucket.get_bucket_encryption()
# 打印獲取到的加密配置。
print('sse_algorithm:', result.sse_algorithm)
print('kms_master_keyid:', result.kms_master_keyid) #如果Bucket加密方式為AES256,那么kms_master_keyid為None。

刪除Bucket加密配置

以下代碼用于刪除Bucket加密配置:

# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider
# 從環境變量中獲取訪問憑證。運行本代碼示例之前,請確保已設置環境變量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())

# 填寫Bucket所在地域對應的Endpoint。以華東1(杭州)為例,Endpoint填寫為https://oss-cn-hangzhou.aliyuncs.com。
endpoint = "https://oss-cn-hangzhou.aliyuncs.com"
# 填寫Endpoint對應的Region信息,例如cn-hangzhou。注意,v4簽名下,必須填寫該參數
region = "cn-hangzhou"

# examplebucket填寫存儲空間名稱。
bucket = oss2.Bucket(auth, endpoint, "examplebucket", region=region)

# 刪除Bucket加密配置。
result = bucket.delete_bucket_encryption()
# 查看HTTP返回碼。
print('http status:', result.status)

相關文檔