我正在使用Java AWS IoT SDK,但我遇到了一个问题,即必须将AWS IAM访问密钥和秘密凭证嵌入到设备上的Java应用程序代码中。
最初仅在我的代码中使用凭据来创建客户端,然后将X.509证书用于MQTT身份验证和通信。 。
我听说过一种方法,可以通过将AWSCredentialsProvider与令牌等一起使用来避免在代码中嵌入IAM凭据。但是,我看不到任何没有嵌入凭据的实际示例。下面是我的代码片段,显示了如何使用凭据创建客户端对象。谢谢。
String AWS_ACCESSKEY = "AKXXXXXXXXXXXXX"; // not real key
String AWS_SECRETKEY = "ABCXXXXXXXXXXXXXXXXXXXXXX"; // not real key
Regions AWS_REGION = Regions.US_EAST_2;
AWSIot client = AWSIotClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(new
BasicAWSCredentials(AWS_ACCESSKEY, AWS_SECRETKEY))).withRegion(AWS_REGION).build();