本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
实施 AWS.ActivateUser 操作
托管集成需要该AWS.ActivateUser操作 AWS IoT Device Management 才能从最终用户那里检索用户标识符。对于 OAuth 2.0,的托管集成 AWS IoT Device Management 将在请求标头中传递 OAuth 令牌。对于一般授权,的托管集成 AWS IoT Device Management 将通过参 AWS Secrets Manager 考。您的连接器必须在响应负载中包含全局唯一的用户标识符。
要求
以下列表概述了连接器实现成功AWS.ActivateUser流程的要求:
-
您的 C2C 连接器 Lambda 可以处理
AWS.ActivateUser来自托管集成的操作请求消息。 AWS IoT Device Management -
您的 C2C 连接器 Lambda 可以确定唯一的用户标识符。对于 OAuth 2.0,如果是 JWT 令牌,则可以从令牌本身中提取该令牌,也可以从授权服务器请求该令牌。对于一般授权,可以从您的第三方平台检索或从授权上下文中获取。
AWS.ActivateUser 工作流程
第 1 步:托管集成调用您的 Lambda
的托管集成使用以下有效负载之一 AWS IoT Device Management 调用您的 C2C 连接器 Lambda,具体取决于授权类型:
OAuth 2.0 请求:
{ "header": { "auth": { "token": "ashriu32yr97feqy7afsaf", "type": "OAuth2.0" } }, "payload": { "operationName": "AWS.ActivateUser", "operationVersion": "1.0.0", "connectorId": "Your-Connector-ID" } }
一般授权请求:
{ "header": { "auth": { "secretsManager": { "arn": "string", "versionId": "string" }, "type": "GeneralAuthorization" } }, "payload": { "operationName": "AWS.ActivateUser", "operationVersion": "1.0.0", "connectorId": "Your-Connector-ID" } }
步骤 2:确定用户 ID
C2C 连接器确定要包含在AWS.ActivateUser响应中的用户 ID。
-
对于 OAuth 2.0:这是通过令牌或通过查询您的授权服务器来检索的。
-
对于一般授权:这可以从您的第三方平台检索,也可以从授权上下文中获取。
步骤 3:使用用户标识符进行回应
C2C 连接器会响应 Lambda AWS.ActivateUser 操作调用,包括默认负载以及字段内相应的用户标识符。userId
响应格式:
{ "header": { "responseCode":200 }, "payload": { "responseMessage": "Successfully activated user with connector-id `Your-Connector-Id.”, "userId": "123456" } }