我已经使用HTML创建了一个登录应用程序,我正在其中使用Cognito用户池和身份池提供对AWS服务的访问,我希望该用户只能访问这些服务30分钟,并且在该用户应被自动删除并全部旋转之后他的资源应删除。
我有一些API AdminDeleteUser可以删除该用户,但是如何自动计算该用户的30Min以及删除资源。
eventName
,即REMOVE
,并且userIdentity
属性的principalId
为dynamodb.amazonaws.com
。 Lambda找到具有上述条件的事件后,就可以继续删除DynamoDB项中列出的所有资源。值得注意的是,以上是基本模式,存在陷阱和低效之处。例如,一个RDS数据库的删除通常要比您的Cognito用户花费的时间长得多,这几乎是即时的。您不想在等待删除这些资源的同时保持Lambda的运行状态;这是低效且昂贵的,因此您可能想找到一种解决方案,也许可以使用Step Functions或SNS来删除允许用户以有效方式启动的资源。