Azure IoT Edge:引用 config.yaml 文件中的证书

Azure IoT Edge: referencing certificates in config.yaml file

出于测试目的,我正在尝试在我的边缘设备 (raspberry Pi) 上安装证书并遵循 Microsoft 文章 - https://docs.microsoft.com/en-us/azure/iot-edge/how-to-manage-device-certificates

我使用这篇文章创建测试证书:https://docs.microsoft.com/en-us/azure/iot-edge/how-to-create-test-certificates#prerequisites 然后我将 3 个必需的文件复制到 raspberry pi 到名为“certs”的文件夹中,

复制所需的证书后,我使用文件位置更新 config.yaml 文件并重新启动 iotedge,但 iotedge 无法正常启动,即我没有看到模块加载并且 运行

我对 Linux 的工作不是很熟悉,所以认为问题目前可能出在两个地方:

  1. 我的文件 URI 格式不正确,因此 iotedge 无法拾取它们。如何验证以下是否正确?

  2. iotedge 没有对保存证书的目录的读取权限。我如何确保 iotedge 具有目录的读取权限(即证书)?

certificates:
  device_ca_cert: "file:///home/pi/certs/iot-edge-device-identity-edgedevice-pi-full-chain.cert.pem"
  device_ca_pk: "file:///home/pi/certs/iot-edge-device-EdgeCATestCert.key.pem"
  trusted_ca_certs: "file:///home/pi/certs/azure-iot-test-only.root.ca.cert.pem"

您的路径名需要采用 Linux 格式,如:

device_ca_cert: "/home/pi/certs/iot-edge-device-identity-edgedevice-pi-full-chain.cert.pem"

是的,您需要确保用户 iotedge 可以阅读它们。