有人會解釋如何在PowerShell腳本中啓用Amazon S3服務器端加密嗎?我使用下面的示例代碼,但是當我在AWS控制檯或Cloudberry S3 Explorer Pro中檢查加密時,加密類型仍然設置爲「無」。上傳文件後使用AWS/Cloudberry手動執行此操作是不可行的,因爲腳本將部署到200多臺服務器,每臺服務器都有S3中的自己的存儲桶。下面是代碼的腳本片段:如何使用PowerShell指定Amazon S3對象的服務器端加密?
$TestFile="testfile.7z"
$S3ObjectKey = "mytestfile.7z"
#Create Amazon PutObjectRequest.
$AmazonS3 = [Amazon.AWSClientFactory]::CreateAmazonS3Client($S3AccessKeyID,$S3SecretKeyID)
$S3PutRequest = New-Object Amazon.S3.Model.PutObjectRequest
$S3PutRequest.BucketName = $S3BucketName
$S3PutRequest.Key = $S3ObjectKey
$S3PutRequest.FilePath = $TestFile
$S3Response = $AmazonS3.PutObject($S3PutRequest)
我試着將沒有成功(在$ S3Response線之前)以下:
$S3PutRequest.ServerSideEncryption
當上述添加我得到這個消息輸出但文件仍然沒有被標記爲在S3上加密:
MemberType : Method
OverloadDefinitions : {Amazon.S3.Model.PutObjectRequest WithServerSideEncryptionMethod(Amazon.S3.Model.ServerSideEncryptionMethod encryption)}
TypeNameOfValue : System.Management.Automation.PSMethod
Value : Amazon.S3.Model.PutObjectRequest WithServerSideEncryptionMethod(Amazon.S3.Model.ServerSideEncryptionMethod encryption)
Name : WithServerSideEncryptionMethod
IsInstance : True
任何人都可以告訴我我做錯了什麼?提前謝謝了。
謝謝!這工作完美! :) –