如何在AWS Secret Manager中存储JKS证书

时间:2020-07-26 08:38:20

标签: java amazon-web-services aws-sdk aws-secrets-manager

我需要安全地从Java应用程序中存储和获取keystore.jks和truststore.jks文件,以便与外部应用程序进行安全通信。

我们可以将这些文件存储在AWS Secret Manager中吗?

我找不到适当的文档将jks证书作为密钥存储在AWS Secret Manager中。

2 个答案:

答案 0 :(得分:2)

您可以将它们存储为SecretsManager中的二进制密钥,只要它们不超过大小限制即可。另外,您也可以将它们存储在使用KMS CMK加密的专用S3存储桶中。

由于Java希望在Java应用程序启动之前将truststore.jks和keystore.jks文件存在于文件系统中,因此您需要编写Docker容器脚本,以在启动Java应用程序之前将文件下载到正在运行的容器中(例如,通过在Docker映像中包含并使用AWS CLI工具)。

要授予ECS应用程序下载文件的权限,您需要为ECS任务分配适当的IAM权限。

答案 1 :(得分:0)

您可以从AWS Secret Manager添加和检索证书。但这也取决于您证书的大小。在这里阅读:Quotas for AWS Secrets Manager

AWS Secrets Manager的秘密有各种限制,例如长度 个字符(65,536)。

阅读文档:Storing the certificates in AWS Secrets Manager

注意:您将需要使用HTTP解析器/ Lambda解析器才能对AWS Secrets Manager进行http调用以获取密码。