在没有构造函数的情况下为CloudFormation分配凭据

时间:2016-10-26 22:54:40

标签: java amazon-web-services amazon-cloudformation

我正在使用Java SDK for CloudFormation。我看到CloudFormationClient接受AWSCredentialsProvider以对其所有请求使用特定凭据。

一个令人费解的问题是,只有在创建cloudFormationClient对象时才能设置凭据吗?即。

 new AmazonCloudFormationClient(AWSCredentials awsCredentials);

我是否可以创建默认的CloudFormationClient对象,然后为其分配凭据?例如:

    AmazonCloudFormationClient cloudformation = new AmazonCloudFormationClient();
    AWSCredentialsProvider creds = getMyCreds();
    cloudformation.setCreds(creds);

这可能吗?

2 个答案:

答案 0 :(得分:0)

基于the API,在创建AmazonCloudFormationClient实例后似乎没有设置凭据的方法。空构造函数(here)的文档提到了凭据提供程序的搜索顺序,并且在创建对象之后无论如何都没有提及可以指定它们。

答案 1 :(得分:0)

正如@Laf指出的那样,没有办法手动设置信用卡。然而,我能够找到一种解决方法。您可以在请求对象本身中设置凭据。

AmazonCloudFormationClient cloudformation = new AmazonCloudFormationClient();
AWSCredentialsProvider creds = getMyCreds();
DescribeStacksRequest request = new DescribeStacksRequest(...);
request.setRequestCredentials(creds);
cloudformation.describestacks(request);