【问题标题】:Is there any service in AWS IOT which is similar to that of "Device Provisioning Service"(DPS) in Azure IOT?AWS IOT 中是否有与 Azure IOT 中的“设备配置服务”(DPS)类似的服务?
【发布时间】:2020-05-18 20:47:54
【问题描述】:

AWS IOT 中是否有与 Azure IOT 中的“设备配置服务”(DPS)类似的服务? 如果没有类似的服务,任何想法如何实现。 我正在考虑以下步骤: 1.在 AWS IOT 中配置自定义端点(全局) 2.用这个自定义端点连接设备 3.与自定义端点连接成功后, 根据设备的位置属性、Load Key和设备上的证书,为设备提供相关的IOT核心端点 4.现在设备可以使用加载的密钥和证书连接相关的IOT核心端点 但是目前仅us-east-1区域支持自定义端点,并且如果一个区域的AWS IOT核心宕机,如何实现跨区域的aws iot核心连接。

【问题讨论】:

    标签: amazon-web-services aws-iot


    【解决方案1】:

    aws 的 registerThing 操作来自:

    https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Iot.html#registerThing-property

    var params = {
      templateBody: 'STRING_VALUE', /* required */
      parameters: {
        '<Parameter>': 'STRING_VALUE',
        /* '<Parameter>': ... */
      }
    };
    iot.registerThing(params, function(err, data) {
      if (err) console.log(err, err.stack); // an error occurred
      else     console.log(data);           // successful response
    });
    

    以上是一个 nodejs 代码片段,其功能与 azure 的配置服务相同:

     var serviceClient = provisioningServiceClient.fromConnectionString(this.connectionString);
    
                    var enrollment = {
                        registrationId: id,
                        deviceId: id,
                        attestation: {
                            type: 'x509',
                            x509: {
                                clientCertificates: {
                                    primary: {
                                        certificate: certificate
                                    }
                                }
                            }
                        }
                    };
    
                    serviceClient.createOrUpdateIndividualEnrollment(enrollment as IndividualEnrollment, function (err, enrollmentResponse) {
                        if (err) {
                            console.error('error creating the individual enrollment: ' + err);
                            reject(err);
                        } else {
                            console.log("enrollment record returned: " + JSON.stringify(enrollmentResponse, null, 2));
                            resolve(enrollmentResponse);
                        }
                    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-08-09
      • 2019-02-08
      • 2023-03-30
      • 1970-01-01
      • 2021-08-22
      • 2023-03-12
      • 1970-01-01
      相关资源
      最近更新 更多