У меня была такая же проблема, когда я пытался заставить Set-S3BucketEncryption изначально работать после чтения документов. Я продолжал получать ошибку
Предоставленный вами XML не был правильно сформирован или не проверен на соответствие
наша опубликованная схема
Я получил его методом проб и ошибок, используя следующий синтаксис (вам нужно определить переменные $ bucketName, $ accountId, $ keyId, $ region)
Set-S3BucketEncryption -BucketName $bucketName -ServerSideEncryptionConfiguration_ServerSideEncryptionRule @{ ServerSideEncryptionByDefault=@{ ServerSideEncryptionAlgorithm="aws:kms"; ServerSideEncryptionKeyManagementServiceKeyId="arn:aws:kms:$region:$accountId:key/$keyId" } } -Region $region
Также убедитесь, что у вас установлена последняя версия инструментов AWS PowerShell. Функция шифрования по умолчанию была добавлена сравнительно недавно.
Надеюсь, это поможет