UOS支持在服务器端对上传的数据进行加密编码。上传数据时,UOS对收到的用户数据进行加密,然后再将得到的加密数据持久化保存下来;下载数据时,UOS自动对保存的加密数据进行解密并把原始数据返回给用户,并在返回的HTTP请求Header中,声明该数据进行了服务器端加密。
您可以通过以下代码设置Bucket默认SSEC加密方式,设置成功之后,所有上传至该Bucket但未设置加密方式的Object都会使用Bucket默认加密方式进行加密:
package sample
import ( "fmt" "github.com/journeymidnight/Yig-S3-SDK-Go/s3lib" ) func PutObjectEncryptSample() { DeleteTestBucketAndObject() defer DeleteTestBucketAndObject() sc := s3lib.NewS3(endpoint, accessKey, secretKey) // Create a bucket err := sc.MakeBucket(bucketName) if err != nil { HandleError(err) } // 1. Put Encrypt Object With SSEC err = sc.PutEncryptObjectWithSSEC(bucketName, objectKey, "NewBucketAndObjectSample") if err != nil { HandleError(err) } result, err := sc.GetEncryptObjectWithSSEC(bucketName, objectKey) if err != nil { HandleError(err) } fmt.Println("Get Encrypt Object With SSEC: ", result) fmt.Printf("PutObjectEncryptSample Run Success !\n\n") } |