您如何确定 Java 项目中使用 AWS 访问密钥值的所有位置?
How can you determine all of the places AWS access key values are used in a project in Java?
我有一些项目使用 system.properties
文件读取值。目前它还存储 aws.secretKey
和 aws.accessKeyId
。我们正在考虑切换到使用基于角色的身份验证方法。为此,我们想确定这需要付出多少努力。
由于不同的 AWS 组件使用这些值 "under the hood" 我们如何确定所有这些实例发生的位置?对于任何其他 system.properties 值,我们可以简单地搜索 属性 键以找到它们可以使用 System.getProperty 访问。这不适用于这些值。
一种可能性是删除这些值并查看失败的原因,但我假设这会让我 运行 进入一个又一个实例,并且对我的目的来说花费的时间太长了。
AWS SDK 使用通用实现类型,这意味着您无需更改代码,只需更改您提供凭据的方式:
Returns AWSCredentials which the caller can use to authorize an AWS request. Each implementation of AWSCredentialsProvider can chose its own strategy for loading credentials. For example, an implementation might load credentials from an existing key management system, or load new credentials when credentials are rotated.
来自here
列出了可用的方法here
我有一些项目使用 system.properties
文件读取值。目前它还存储 aws.secretKey
和 aws.accessKeyId
。我们正在考虑切换到使用基于角色的身份验证方法。为此,我们想确定这需要付出多少努力。
由于不同的 AWS 组件使用这些值 "under the hood" 我们如何确定所有这些实例发生的位置?对于任何其他 system.properties 值,我们可以简单地搜索 属性 键以找到它们可以使用 System.getProperty 访问。这不适用于这些值。
一种可能性是删除这些值并查看失败的原因,但我假设这会让我 运行 进入一个又一个实例,并且对我的目的来说花费的时间太长了。
AWS SDK 使用通用实现类型,这意味着您无需更改代码,只需更改您提供凭据的方式:
Returns AWSCredentials which the caller can use to authorize an AWS request. Each implementation of AWSCredentialsProvider can chose its own strategy for loading credentials. For example, an implementation might load credentials from an existing key management system, or load new credentials when credentials are rotated.
来自here
列出了可用的方法here