在客户端连接时注册客户端证书 AWS IoT just-in-time 注册 (JITR) - AWS IoT Core

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在客户端连接时注册客户端证书 AWS IoT just-in-time 注册 (JITR)

您可以配置 CA 证书以启用其已签名注册的客户端证书 AWS IoT 客户端首次连接时自动连接 AWS IoT.

在客户端连接时注册客户证书 AWS IoT 首次必须启用 CA 证书以进行自动注册,并将客户端的第一个连接配置为提供所需的证书。

配置 CA 证书以支持自动注册(控制台)

要将 CA 证书配置为支持自动客户端证书注册,请使用 AWS IoT Console
  1. 登录 AWS 管理控制台并打开 AWS IoT 控制台

  2. 在左侧导航窗格中,选择 “安全”,选择CAs

  3. 在证书颁发机构列表中,找到要启用自动注册的颁发机构,然后使用省略号图标打开选项菜单。

  4. 在选项菜单上,选择启用自动注册

注意

证书颁发机构列表中不显示自动注册状态。要查看证书颁发机构的自动注册状态,您必须打开证书颁发机构的详细信息页面。

配置 CA 证书以支持自动注册 (CLI)

如果您已经向注册了 CA 证书 AWS IoT,使用update-ca-certificate命令将 CA 证书设置为autoRegistrationStatusENABLE

aws iot update-ca-certificate \ --certificate-id caCertificateId \ --new-auto-registration-status ENABLE

如果您要在注册 CA 证书时启用 autoRegistrationStatus,请使用 register-ca-certificate 命令。

aws iot register-ca-certificate \ --allow-auto-registration \ --ca-certificate file://root_CA_cert_filename.pem \ --verification-cert file://verification_cert_filename.pem

使用 describe-ca-certificate 命令查看 CA 证书的状态。

配置客户端的首次连接以进行自动注册

当客户端尝试连接时 AWS IoT 在传输层安全 (TLS) 握手期间,由您的 CA 证书签名的客户端证书必须首次出现在客户端上。

当客户端连接到 AWS IoT,使用你在 “创建” 中创建的客户证书 AWS IoT 客户证书创建自己的客户端证书。 AWS IoT 将 CA 证书识别为已注册的 CA 证书,注册客户端证书,并将其状态设置为PENDING_ACTIVATION。这意味着,已自动注册客户端证书,该证书正在等待激活。客户端证书的状态必须为,ACTIVE然后才能用于连接 AWS IoT。 有关激活客户端证书的信息,请参阅激活或停用客户端证书

注意

你可以使用配置设备 AWS IoT Core just-in-timeregistration (JITR) 功能,无需在设备首次连接时将整个信任链发送到 AWS IoT Core。 出示 CA 证书是可选的,但是设备需要在连接时发送服务器名称指示 (SNI) 扩展名。

时间 AWS IoT 自动注册证书,或者当客户出示PENDING_ACTIVATION状态为证书时, AWS IoT 向以下MQTT主题发布消息:

$aws/events/certificates/registered/caCertificateId

其中 caCertificateId 是颁发客户端证书的 CA 证书的 ID。

发布到该主题的消息具有以下结构:

{ "certificateId": "certificateId", "caCertificateId": "caCertificateId", "timestamp": timestamp, "certificateStatus": "PENDING_ACTIVATION", "awsAccountId": "awsAccountId", "certificateRegistrationTimestamp": "certificateRegistrationTimestamp" }

您可以创建一项规则,以侦听此主题并执行一些操作。我们建议您创建一个 Lambda 规则,以验证客户证书不在证书吊销列表中(CRL),激活证书,并创建策略并将其附加到证书。该策略将确定客户端能够访问的资源。有关如何创建监听$aws/events/certificates/registered/caCertificateID主题并执行这些操作的 Lambda 规则的更多信息,请参阅just-in-time 注册客户证书 AWS IoT.

如果在自动注册客户证书的过程中出现任何错误或异常, AWS IoT 向 Logs 中的 CloudWatch 日志发送事件或消息。有关为您的账户设置日志的更多信息,请参阅 Amazon CloudWatch 文档