我正在使用java从s3上传和下载文件。我的问题是我无法检查代码以及公开的密钥和访问密钥,但代码必须签入公共环境。如何单独管理我的凭据并仅访问我的代码中的引用?
我使用的代码是
String awsAccessKey = "YOUR_AWS_ACCESS_KEY";
String awsSecretKey = "YOUR_AWS_SECRET_KEY";
AWSCredentials awsCredentials =
new AWSCredentials(awsAccessKey, awsSecretKey);
我希望凭据管理器与平台无关。
答案 0 :(得分:5)
您可以实现AWSCredentialsProvider
,这是一个为SDK客户端提供凭据的接口。例如,DefaultAWSCredentialsProviderChain
是一个实现,它在多个位置查找凭据(环境,属性文件和EC2实例配置文件)。
您可以在AWS SDK for Java Github repo中查看多个凭据提供程序的实现。
答案 1 :(得分:0)
所有亚马逊实用程序都要求使用环境变量定义这些属性,您可以使用相同的方法,或使用基于文件的配置。