简介
本文档提供关于如何使用在上传对象时开启服务端加密。服务端加密的密钥分为三种:COS 托管加密密钥KMS 托管加密密钥客户提供的加密密钥
SDK API 参考
SDK 所有接口的具体参数与方法说明,请参考 SDK API。
使用 COS 托管加密密钥的服务端加密(SSE-COS)保护数据
功能说明
由腾讯云 COS 托管主密钥和管理数据。COS 会帮助您在数据写入数据中心时自动加密,并在您取用该数据时自动解密。目前支持使用 COS 主密钥对数据进行 AES-256 加密。
示例代码
PutObjectRequest request = new PutObjectRequest(bucket, key, srcPath);request.SetCosServerSideEncryption();
说明更多完整示例,请前往 GitHub 查看。
使用 KMS 托管加密密钥的服务端加密(SSE-KMS)保护数据
功能说明
SSE-KMS 加密即使用 KMS 托管密钥的服务端加密。KMS 是腾讯云推出的一款安全管理类服务,使用经过第三方认证的硬件安全模块 HSM(Hardware Security Module)来生成和保护密钥。它能够帮助用户轻松创建和管理密钥,满足用户多应用多业务的密钥管理需求以及满足监管和合规要求。关于如何开通 KMS 服务请参考:服务端加密概述。
示例代码
// 存储桶名称,此处填入格式必须为 bucketname-APPID, 其中 APPID 获取参考 https://console.cloud.tencent.com/developerstring bucket = "examplebucket-1250000000";string key = "exampleobject"; //对象键string srcPath = @"temp-source-file";//本地文件绝对路径//.cssg-snippet-body-start:[put-object-sse-c] PutObjectRequest request = new PutObjectRequest(bucket, key, srcPath);request.SetCosServerSideEncryptionWithKMS("KMS Custem Key ID", "Context Json");
说明更多完整示例,请前往 GitHub 查看。
使用客户提供的加密密钥的服务端加密 (SSE-C)保护数据
功能说明
加密密钥由用户自己提供,用户在上传对象时,COS 将使用用户提供的加密密钥对用户的数据进行 AES-256 加密。注意该加密所运行的服务需要使用 HTTPS 请求。用户需要提供一个32字节的字符串作为密钥,支持数字、字母、字符的组合,不支持中文。如果上传文件时设置了密钥加密,那么在使用 GET(下载)、HEAD(查询)源对象时也需要在请求中带上相同的密钥,才能正常响应。
示例代码
PutObjectRequest request = new PutObjectRequest(bucket, key, srcPath);request.SetCosServerSideEncryptionWithCustomerKey("Your Secret Key");
说明更多完整示例,请前往 GitHub 查看。
对象存储官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠
转转请注明出处:https://www.yunxiaoer.com/145526.html