问题标签 [amazon-kms]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
359 浏览

python - 使用 boto3 下载具有服务器端加密 SSE AES256 的文件

我可以列出源存储桶中的文件,但是当我尝试下载它们时,我收到“客户端错误 403”,源团队启用了服务器端加密 AES256。所以当我尝试:

client.download_fileobj(bucket, file, f, ExtraArgs={"ServerSideEncryption": "AES256"})

我收到 ValueError: Invalid extra_args key 'ServerSideEncryption', must be one: VersionId, SSECustomerAlgorithm, SSECustomerKey, SSECustomerKeyMD5, RequestPayer 我该如何解决这个问题?

0 投票
0 回答
118 浏览

amazon-s3 - 跨帐户 Codepipeline 使用 S3 作为帐户 - A 中的源和 cloudformation 部署在帐户 -B 中(这是基于推送的管道)

账户 A 有 codepipeline 和 KMS 加密的 S3 存储桶。我正在尝试在部署阶段使用 cloudformation 将 ACCOUNT-A S3 存储桶中的 yaml 文件部署到 ACCOUNT-B。我按照剧本

我收到一个错误:

拒绝访问(服务:Amazon S3;状态代码:403;错误代码:AccessDenied;请求 ID:VP2243QS7BBDWMTT;S3 扩展请求 ID:ZgeqAaVYZTlC4Fp3huIA6B+NN9jDI+fsEJrNsOThyIQSgoT2copx0/u/VRWEfrgJRXVMcqhw/0s=;代理:null)

如何解决这个问题?

0 投票
1 回答
124 浏览

python - AWS KMS CMK 使用对称和非对称加密和解密

我有用于加密字符串的对称 KMS 密钥:

我有这个加密的字符串挂在 github 上。但是,我注意到从技术上讲,任何人都可以获取加密字符串并对其进行解密,因为元数据位于该字符串中。我知道这一点,因为我可以进行 aws 配置并指向一个完全不同的 aws 帐户,并且可以很好地运行解密。如果发生这种情况,为什么还要使用非对称。它仅适用于保留在 aws 帐户中的加密字符串吗?在我的场景中,使用不对称会更好吗?

0 投票
1 回答
295 浏览

encryption - 如何加密/解密来自 KMS 策略的 sqs 消息

消息应加密给未经授权的用户,并在 sqs 中为授权用户/队列自动解密。

0 投票
0 回答
62 浏览

kotlin - 带有 SSE 存储桶的 S3 PutObject 使用 aws/s3 KMS 密钥 ID 而不是与存储桶关联的 CMK

我正在尝试在启用 SSE 的情况下从 Android 设备上传到 S3 存储桶。

我尝试了以下方法:

该对象确实已上传到指定位置,并且具有正确的 CMK,但putObject调用抛出“无法验证数据上传的完整性。客户端计算的内容哈希与 Amazon S3 计算的哈希不匹配

为了避免这个错误,我可以运行:

这会引发相同的错误,因为skipMd5CheckPerRequest需要初始化 PutRequest 元数据。
所以我尝试了:

现在对象已成功上传,没有任何错误。但是,它使用默认的 S3 KMS keyId 进行加密,aws/s3而不是KMSMasterKeyID按照 CF 中的存储桶定义中的指定(如下)。

CloudFormation 中的存储桶定义:

0 投票
0 回答
1231 浏览

amazon-web-services - Lambda 访问 KMS 所需的权限

我正在使用 AWS CDK。

我创建了客户管理的 CMK KMS 密钥以在 dynamoDB 表上启用服务器端加密。

KMS 密钥策略:

一些 Lambda 使用这些 dynamo db 表来获取数据。所以,我的问题是:

我们是否需要再次显式授予每个 lambda 访问 KMS 密钥的权限?

0 投票
3 回答
1699 浏览

amazon-web-services - 加密密钥轮换究竟是如何工作的?

加密密钥轮换究竟是如何工作的?我知道出于安全目的不断轮换加密密钥是一种非常好的做法,但轮换密钥需要太多工作。

案子:

假设我有一个存储 30GB 数据的数据库,我们使用内部密钥加密静态数据,我计划每个月轮换我的密钥。

问题:

  1. 这是否意味着我所有的数据都将被旧密钥解密并每个月由新密钥重新加密?
  2. 整个加密-解密将花费大量时间和计算资源。
  3. 如果我的数据库(或任何加密数据集)明天扩展,这是否意味着当我的密钥轮换时相同的过程会重复?这看起来不像是一个可扩展的解决方案。

其他详情:

  1. 如果我们选择了轮换选项,我还看到 AWS KMS 会轮换它的密钥。AWS 如何设法轮换所有底层服务的密钥和所有加密数据?
0 投票
0 回答
53 浏览

amazon-web-services - aws s3 存储桶 AES 加密(非 kms)访问被拒绝

我使用 AES 加密或 AWS 管理的密钥在我的存储桶上启用了默认加密。我在将文件上传到它时遇到问题。它让我访问被拒绝。

我不确定要更新哪个策略才能访问加密。

我是否将它放在存储桶的策略或存储桶授予访问权限的角色上?

我有这些对象:bucket_a role_for_bucket_a policy_for_role_of_bucket_a

这是附加到角色 (role_for_bucket_a) 的策略 (policy_for_role_of_bucket_a)

bucket_a 具有以下策略,限制对特定 vpc 集群的访问

0 投票
1 回答
331 浏览

amazon-web-services - 如何禁用 AWS 托管的 CMK

我发现当我删除所有 AWS 服务时,KMS 的账单每月花费 1.02 美元。我发现它正在使用KMS。当我去 KMS 默认密钥。它有很多键(https://ap-southeast-1.console.aws.amazon.com/kms/home?region=ap-southeast-1#/kms/defaultKeys)。所以我想安排删除或禁用。但它没有许可,虽然我被吸引了有kms:Delete*,或的政策kms:ScheduleKeyDeletion。AWS 管理的 CMK 类似于aws/lambda, aws/sns, aws/s3.

AWS 文档说 AWS 管理的密钥不能被删除或禁用。但是当我不使用 AWS KMS default-key ( not Customer managed keys )时如何解决它

0 投票
0 回答
155 浏览

amazon-web-services - 无法使用 ansible 访问 aws 中的特定 kms 密钥

我在 aws 中有一个 KMS,我需要从 ansible 脚本中获取数据。脚本如下,

在 KMS 中添加了一个标签,名称为 Name = kms-key,并且密钥为 SYMMETRIC_DEFAULT 类型。我收到一条错误消息

问题是错误中指定的资源 arn 不是我想从中获取信息的 kms 键。标签(kms-key)在另一个kms中。它是否需要获得帐户中所有 kms 密钥的权限才能从特定 kms 中检索数据。kms: DescribeKey为从 kms 检索数据的用户授予权限。