【问题标题】:AWS certificate manager Inaccessible host: `acm.undefined.amazonaws.com'AWS 证书管理器无法访问主机:`acm.undefined.amazonaws.com'
【发布时间】:2021-05-31 08:25:33
【问题描述】:

我一直在使用 AWS SDK v2.846.0 为不同的域创建 SSL 证书,但是当我提出请求时,我收到此错误:

“无法访问的主机:acm.undefined.amazonaws.com'. This service may not be available in the us-east-1' 区域。”

有人知道我能做什么吗?

我正在使用此文档:https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/ACM.html#requestCertificate-property

【问题讨论】:

  • 您是如何创建 ACM 服务对象的?您是否通过了未定义的区域?或者您的 AWS_REGION 环境变量或凭证配置文件是否指示空/未定义区域?
  • 嗨 Jarmod,我刚刚从 aws-sdk 导入了 ACM --> const AWS = require('aws-sdk');同时创建对象 --> const _ACM = new AWS.ACM();我设置了 us-east-2 区域
  • 你是如何设置 us-east-2 区域的?你能在这里分享一些代码吗?
  • _ACM.config.update({ secretAccessKey: secretKey, accessKeyId: accessKeyId, region: 'us-east-2' })
  • 将这些选项传递给 ACM 构造函数,或者在创建 ACM 服务对象之前进行配置更新

标签: node.js amazon-web-services amazon-certificate-manager


【解决方案1】:

您的 ACM 凭据对象中似乎未定义该区域。

要提供选项(包括访问密钥、密钥和区域),您可以将它们传递给服务构造函数,例如

options = { secretAccessKey: skid, accessKeyId: akid, region: 'us-east-2' };
acm = new AWS.ACM(options);

或者您可以更新 SDK 的配置对象,但您必须在创建服务对象之前执行此操作,例如:

options = { secretAccessKey: skid, accessKeyId: akid, region: 'us-east-2' };
AWS.config.update(options);
acm = new AWS.ACM();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-16
    • 1970-01-01
    • 2019-03-17
    • 2016-09-03
    相关资源
    最近更新 更多