【问题标题】:403 error when authenticating with Azure Management API - nodejs使用 Azure 管理 API 进行身份验证时出现 403 错误 - nodejs
【发布时间】:2015-12-16 02:57:06
【问题描述】:

我正在使用以下 npm 尝试使用 NodeJS 创建云服务。 https://www.npmjs.com/package/azure-mgmt-compute

这是我正在使用的代码:

    var file = __dirname + '/azure-cert.pem';

    var computeManagementClient = computeManagement.createComputeManagementClient(computeManagement.createCertificateCloudCredentials({
        subscriptionId: userCredentials.subscriptionId,
        pem: fs.readFileSync(file, 'utf-8')
    }));

我收到错误消息:“服务器未能对请求进行身份验证。验证证书是否有效并且与此订阅相关联”。 状态码 403。

我已经完成了这里写的: https://msdn.microsoft.com/en-us/library/azure/gg551722.aspx

并使用 OpenSSL 转换为 PEM。

我还尝试了以下方法:

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout azure-cert.pem -out azure-cert.pem

pkcs12 -export -out azure-cert.pfx -in azure-cert.pem -name "我的自签名证书"

openssl x509 -outform der -in azure-cert.pem -out azure-cert.cer

一切都失败了。 有什么想法吗?

【问题讨论】:

    标签: node.js azure ssl ssl-certificate


    【解决方案1】:

    我尝试按照页面 https://www.npmjs.com/package/azure-mgmt-compute 的“如何使用 -> 身份验证”部分通过 Azure Xplat-CLI 获取 .pem 文件并运行示例代码。它工作正常。

    首先需要通过npm install -g azure-cli命令安装Azure Xplat-CLI,请参考https://azure.microsoft.com/en-us/documentation/articles/xplat-cli-install/

    其次,您需要通过命令azure login -u <username> 连接到您的Azure 订阅,请参考https://azure.microsoft.com/en-us/documentation/articles/xplat-cli-connect/

    然后您可以命令azure account cert export 获取.pem 文件。该代码适用于订阅 ID 和 pem 文件。

    最好的问候!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-13
      • 1970-01-01
      • 2023-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-27
      相关资源
      最近更新 更多