如何安全地存储和使用客户的AWS Secret Key

时间:2012-09-01 12:08:18

标签: security node.js amazon-web-services

存储客户的密钥&是否可以接受;访问我服务器上的密钥ID以允许我代表他们访问AWS API?

对于密码,只需使用哈希来存储加密版本,但每次调用AWS时我都需要使用实际的键值,因此我无法对其进行哈希处理。

简单来说,对于每个经过身份验证的用户,我会存储一个像这样的对象:

{userdId: [myUserId],
 secretKey: 'jHuiU-jiuhd...',
 accessKeyId: 'abcdef...',
 etc}

每次我打电话给AWS时,我都可以访问它。

现在,我可以对其进行base64编码和/或甚至自己对其进行加密,但在某些阶段我必须对其进行解码和解密才能发出请求,我需要做的所有这些选项都存储在服务器上。< / p>

如果数据保存在服务器上 - 从未发送回客户端 - 如果从服务器到AWS的传输是通过SSL完成的,那么这就足够了吗?

1 个答案:

答案 0 :(得分:0)

  

如何安全地存储和使用客户的AWS密钥

Ansible

如果您使用的是Ansible,请考虑使用Vault to Protect Sensitive Ansible Data。因此,您可以将其配置为加密敏感内容,例如私钥。

Keybase

另一种方法是使用Keybase应用,它可以在您的所有设备上提供端到端的加密数据。

PGP

使用加密来加密和解密敏感密钥。

OpenSSL的

使用您的public key to encrypt the file,然后使用您的私钥对其进行解密。

SSH Vault

检查ssh-vault如何使用SSH密钥加密/解密数据。