amazon web服务使用IAM角色从java访问AWS S3
我们将应用程序托管在本地而不是EC2上。是否可以使用IAM角色而不是从java访问配置文件或凭据来访问AWS S3? 安全团队提出了将凭据存储在本地的问题,因为它很容易受到攻击
就我在谷歌搜索到的情况而言,我已经找到了使用存储在环境中或中的凭据进行访问的选项。aws作为一个概要文件。如果我们需要基于角色的身份验证,那么应用程序应该部署在EC2中。但是我们在本地托管了服务器。 如果您有任何建议,请提供
你可以在下面搜索框中键入要查询的问题!
我们将应用程序托管在本地而不是EC2上。是否可以使用IAM角色而不是从java访问配置文件或凭据来访问AWS S3? 安全团队提出了将凭据存储在本地的问题,因为它很容易受到攻击
就我在谷歌搜索到的情况而言,我已经找到了使用存储在环境中或中的凭据进行访问的选项。aws作为一个概要文件。如果我们需要基于角色的身份验证,那么应用程序应该部署在EC2中。但是我们在本地托管了服务器。 如果您有任何建议,请提供
# 1 楼答案
我不确定我是否理解您想要做什么,但为什么不为该角色分配一个专用用户呢
您可能会发现另一件有用的事情是使用临时凭证。总的来说,Amazon有两种服务用于此目的——Cognoto和STS(据我所知,Cognoto在幕后使用STS)。它们有不同的限制,但一般来说,它们允许您在有限的时间内接收凭据。这样,您将获得一个访问id、一个秘密(以及一个会话id),但它们是临时的
# 2 楼答案
服务角色绑定到AWS服务,所以长话短说,对于您的本地服务器,您需要使用AWS API密钥
不幸的是,最后你需要将凭证存储在某个地方。即使使用Cognito或STS等服务,您也需要将服务的凭据存储在某个位置(有效地——对于任何外部或云服务,无论您可能使用什么云或服务)
IMHO您所能做的最好的事情就是使用专用的AWS凭证(API密钥),并且只有真正需要的权限