View a markdown version of this page

实施 AWS.DeactivateUser 操作 - 的托管集成 AWS IoT Device Management

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

实施 AWS.DeactivateUser 操作

用户停用概述

当客户删除其客户账户,或者最终用户想要取消其在系统中的账户与 AWS 客户系统的关联时,需要停用提供的用户访问令牌。 AWS 在这两种用例中,托管集成都需要使用 C2C 连接器来简化此工作流程。

下图说明了如何取消最终用户帐户与系统的关联

用户停用工作流程
用户停用工作流程
  1. 用户启动 AWS 客户账户与与 C2C 连接器关联的第三方授权服务器之间的解除关联过程。

  2. 客户通过 AWS IoT Device Management 的托管集成启动删除用户关联。

  3. 托管集成通过使用操作界面向连接器发出请求来启动停用过程。AWS.DeactivateUser

    1. 对于 OAuth 2.0,标题中包含用户的访问令牌。对于一般授权,标题中包含 AWS Secrets Manager 参考文献。

  4. 您的 C2C 连接器接受请求并执行必要的停用步骤。对于 OAuth 2.0,这包括调用您的授权服务器来撤消令牌及其提供的任何访问权限。对于一般授权,这可能包括清理操作或通知您的第三方平台。

    1. 例如,来自未关联用户账户的事件在执行后不应再发送到托管集成。AWS.DeactivateUser

  5. 您的授权服务器或第三方平台会处理停用操作并将响应发送回您的 C2C 连接器。

  6. 您的 C2C 连接器会向 AWS IoT Device Management 的托管集成发送已处理停用的 ACK。

  7. 托管集成会删除最终用户拥有的与您的资源服务器关联的所有资源。

  8. 托管集成向客户发送 ACK,说明与您的系统相关的所有关联都已删除。

  9. 客户通知最终用户其账户已与您的平台取消关联。

AWS.DeactivateUser要求

您的 C2C 连接器必须满足以下要求才能成功处理用户停用问题:

  • 请求处理:C2C 连接器 Lambda 函数接收来自托管集成的请求消息以处理操作。AWS.DeactivateUser

  • 代币撤销/清理:

    • 对于 OAuth 2.0:C2C 连接器必须撤销授权服务器中用户提供的 OAuth 2.0 令牌和相应的刷新令牌。

    • 对于一般授权:C2C 连接器应按照您的第三方平台要求执行任何必要的清理或停用步骤。

索取示例

OAuth 2.0 请求:

以下是您的连接器将收到的 OAuth 2.0 AWS.DeactivateUser 请求示例:

{ "header": { "auth": { "token": "ashriu32yr97feqy7afsaf", "type": "OAuth2.0" } }, "payload":{ "operationName": "AWS.DeactivateUser", "operationVersion": "1.0", "connectorId": "Your-connector-Id" } }

通用授权示例:

{ "header": { "auth": { "secretsManager": { "arn": "arn:aws:secretsmanager:us-east-1:123456789012:secret:my-secret-abc123", "versionId": "EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE" }, "type": "GeneralAuthorization" } }, "payload":{ "operationName": "AWS.DeactivateUser", "operationVersion": "1.0", "connectorId": "Your-connector-Id" } }