设置对象加密

最近更新时间: 2026-03-13 09:03:00

简介

您可以通过对象存储控制台,对存放在存储桶中的对象设置加密,以防止信息被泄露。

注意:

  • 访问加密对象与访问未加密的对象在体验上并无差别,但前提是您已拥有该对象的访问权限。
  • 服务端加密仅加密对象数据而不加密对象元数据,而且使用服务端加密的对象必须使用有效签名访问,不可被匿名用户访问。
  • 在列出存储桶中对象时,列表会返回所有对象的列表,无论对象是否加密。

操作步骤

  1. 登录对象存储控制台。
  2. 在左侧导航栏中,单击存储桶列表,进入存储桶列表页面。
  3. 找到对象所在的存储桶,单击其存储桶名称,进入存储桶管理页面。
  4. 在左侧导航栏中,选择文件列表,进入文件列表页面。
  5. 找到您要设置加密的对象,在其右侧操作栏中,单击详情
  6. 服务端加密区域中,单击编辑
  7. 选择对应的加密方式,单击保存
    目前支持以下两种加密方式:
    • SSE-COS:由 COS 托管密钥的服务端加密方式,更多关于 SSE-COS 的信息,请参见 服务端加密概述:SSE-COS
    • SSE-KMS:由密钥管理系统 KMS 托管密钥的服务端加密方式,可选择使用默认密钥或自建密钥。

      说明:

      SSE-C加密即用户自定义密钥的服务端加密。加密密钥由用户自己提供,用户在上传对象时,COS 将使用用户提供的加密密钥对用户的数据进行 AES-256 加密。(SSE-C 仅能通过 API 进行使用,不支持控制台操作)

案例:使用服务端加密 SSE-C

请求

PUT /exampleobject HTTP/1.1
Host: <bucketname-appid>.<Endpoint> 
Date: Fri, 10 Apr 2020 09:36:12 GMT
Content-Type: image/jpeg
x-cos-server-side-encryption-customer-algorithm: AES256
x-cos-server-side-encryption-customer-key: MDEyMzQ1Njc4OUFCQ0RFRjAxMjM0NTY3ODlBQkNERUY=
x-cos-server-side-encryption-customer-key-MD5: U5L61r7jcwdNvT7frmUG8g==
Content-Length: 16
Content-MD5: 7o3pGNBWQBRbGPcPTDqmAg==
Authorization: q-sign-algorithm=sha1&q-ak=AKID8A0fBVtYFrNm02oY1g1JQQF0c3JO****&q-sign-time=1586511372;1586518572&q-key-time=1586511372;1586518572&q-header-list=content-length;content-md5;content-type;date;host;x-cos-server-side-encryption-customer-algorithm;x-cos-server-side-encryption-customer-key;x-cos-server-side-encryption-customer-key-md5&q-url-param-list=&q-signature=4f6f9f0a6700930f70bff31e3a2b2e622711****
Connection: close

响应

HTTP/1.1 200 OK
Content-Length: 0
Connection: close
Date: Fri, 10 Apr 2020 09:36:13 GMT
ETag: "582d9105f71525f3c161984bc005efb5"
x-cos-hash-crc64ecma: 16749565679157681890
x-cos-request-id: NWU5MDNlMGNfZTFjODJhMDlfMzVlMDFfZTk1****
x-cos-server-side-encryption-customer-algorithm: AES256
x-cos-server-side-encryption-customer-key-MD5: U5L61r7jcwdNvT7frmUG8g==