【问题标题】:Azure IoT Hub TLS certificate revocationAzure IoT 中心 TLS 证书吊销
【发布时间】:2021-08-01 16:44:41
【问题描述】:

IEC 62443-4-2 组件要求 CR 1.9“基于公钥的身份验证的强度”规定:

对于使用基于公钥的身份验证的组件,那些 组件应直接提供或集成到系统中 在同一 IACS 环境中提供以下功能: … c) 通过检查给定证书的撤销来验证证书 状态;

在与 Azure IoT 中心的 TLS 加密通信中使用哪种方法来吊销证书:在线证书状态协议 (OCSP) 和/或证书吊销列表 (CRL)?

Azure IoT SDK 是否支持证书吊销验证?

【问题讨论】:

    标签: azure-iot-hub azure-iot-sdk


    【解决方案1】:

    IoT 中心目前不执行证书吊销检查。您需要明确禁用设备以阻止它们连接。

    【讨论】:

    • 如果 IoT Hub 实例的服务器证书不能被撤销,那么这对实例本身是一个潜在的威胁。
    • IoT Hub 服务器证书当然可以被 Microsoft 吊销,为什么不能……? IoT 中心不会检查设备证书是否已被吊销。为了解决这个问题,您还需要在 IoT 中心禁用设备(连同吊销设备证书)。
    • 如果您在 IoT 中心引用您的 CA 证书,您可以撤销它,但还需要禁用链接到它的所有设备。我建议使用DPS。它也不会检查证书吊销,但您可以使用注册组更轻松地大规模禁用设备。
    • 谢谢。因此,可以吊销(自己的)IoT 中心实例的服务器证书。证书吊销状态是否在 Azure IoT SDK 中得到验证?
    • 是的,看起来你可以控制它。在用于 AMQP 的 C# SDK 中:AmqpTransportSettings.CertificateRevocationCheck github.com/Azure/azure-iot-sdk-csharp/blob/master/iothub/device/… 对于 MQTT:github.com/Azure/azure-iot-sdk-csharp/blob/master/iothub/device/… 然后例如var settings = new AmqpTransportSettings(TransportType.Amqp) { CertificateRevocationCheck = true }; var deviceClient = deviceClient.CreateFromConnectionString(connectionString, new[] { settings });
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-07
    相关资源
    最近更新 更多