【问题标题】:How to create a X.509 CA sample certificate for an Azure IoTHub Module?如何为 Azure IoTHub 模块创建 X.509 CA 示例证书?
【发布时间】:2020-09-25 04:07:17
【问题描述】:

我一直按照this tutorial 中的步骤创建 IoT 中心模块,因此我可以为我的示例设备试验模块孪生。只要我使用 SAS 令牌创建模块,每一个都可以正常工作,如教程中所述。

但是现在,我希望能够使用示例 X.509 CA 证书来创建模块。问题是当我尝试使用以下内容来创建我的模块时:

module_client = IoTHubModuleClient.create_from_x509_certificate(cert, HOSTNAME, DEVICE_ID, MODULE_ID)

...cert 是我使用 those instructions(即./certGen.sh create_device_certificate SampleDevice4)为我的示例设备创建的 X.509 证书,我收到以下错误:

ConnectOperation: 完成时出现错误 UnauthorizedError('Connection 拒绝:未经授权。')

我知道我的示例设备证书是有效的,因为我能够在这个tutorial about device twins 中成功使用它。所以我假设我需要专门为该模块创建一个新的 X.509 证书/密钥对,而不是使用设备证书。但我找不到如何创建这些。有谁知道如何为模块而不是设备生成 X.509 CA 证书?

【问题讨论】:

    标签: python x509 azure-iot-hub


    【解决方案1】:

    我发现可以使用以下语法生成模块 X.509 证书: ./certGen.sh create_device_certificate SampleDevice4\/mymodule。请注意,必须对斜杠进行转义,以便 openssl 可以正确生成证书的公用名 (CN)。 据我所知,这是未记录的行为,因此我不知道将来是否可以可靠地使用此约定。我在教程上留下了反馈,询问是否是这种情况。

    【讨论】:

    • 感谢分享反馈!您的反馈很有价值,并与内容作者分享,以便酌情评估和更新文档。
    猜你喜欢
    • 1970-01-01
    • 2011-10-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-25
    相关资源
    最近更新 更多