Aws cli 如何使用aws encryption cli进行解密?

Aws cli 如何使用aws encryption cli进行解密?,aws-cli,aws-kms,Aws Cli,Aws Kms,我使用aws encryption cli对zip文件(实际上是数据库备份)进行加密,如下所示: aws-encryption-cli -vv --encrypt \ --input "backup.zip" \ --wrapping-keys key=caf...854 region=us-east-1 \ --encryption-context purpose=dbbackup \ --metadata-output backup.metadata \

我使用aws encryption cli对zip文件(实际上是数据库备份)进行加密,如下所示:

aws-encryption-cli -vv --encrypt \
  --input "backup.zip" \
  --wrapping-keys key=caf...854 region=us-east-1 \
  --encryption-context purpose=dbbackup \
  --metadata-output backup.metadata \
  --output backup.zip.enc
这非常有效,并生成加密的备份文件。然而,我似乎无法使用相同的基本模式进行解密

aws-encryption-cli \
  -vv \
  --decrypt \
  --input backup.zip.enc \
  --wrapping-keys key=caf...854 region=us-east-1 \
  --output backup.zip \
  --metadata-output backup.zip.metadatadec
产生一个错误:

2020-11-13 15:04:04,580 - MainThread - aws_encryption_sdk.key_providers.base - DEBUG - IncorrectMasterKeyError("Provided data key provider MasterKeyInfo(provider_id='aws-kms', key_info=b'arn:aws:kms:us-east-1:...:key/caf...854') does not match Master Key provider MasterKeyInfo(provider_id='aws-kms', key_info=b'caf...854')",) raised when attempting to decrypt data key with master key MasterKeyInfo(provider_id='aws-kms', key_info=b'caf...854')

在我看来,它似乎在抱怨KMS密钥ID不匹配,因为在解密时它使用完整的ARN(ARN:aws:KMS:us-east-1…),而在加密时它只使用ID(caf…854)。我不确定如何更改行为以在这两种情况下使用相同的东西,或者是否存在其他问题?

FWIW,如果我在加密和解密时为包装密钥指定完整ARN,这似乎是可行的。我不确定当我只使用ID时,为什么它会在加密上成功,但在解密上失败——这感觉像是一个bug(要么两者都失败,要么两者都有效)