使用Lambda,Cognito或IAM在AWS上进行用户身份验证(注册和登录)

DJ晴天

我一直在寻找使用各种AWS服务来处理下一个主要项目的基础架构。我们开始在EC2实例上查看docker容器,但是在进一步研究了AWS Lambda之后-这似乎是值得探索的路径。

使用AWS Lambda范例,我们将简单地使用Lambda函数作为逻辑粘合剂,将我们的数据和事件(来自其他AWS服务)结合在一起。

例如,如果我们产品的用户创建了一条新记录,则可以在该事件上触发AWS Lambda,我们可以调用lambda函数将该记录添加到AWS Cloudsearch中,从而使搜索保持最新状态。

对于这种类型的范式,在用户管理,身份验证等方面,我不确定。我已阅读了有关IAM和Cognito的一些文档,以寻找可减轻用户注册,登录,注销,忘记密码等工作的AWS服务。这些服务似乎并不是真正针对的。IAM是组织(而不是用户群)的身份管理,而cognito更加专注于跨许多设备或应用程序实例(身份验证后)同步身份信息。

我目前想知道我应该做的是自己编写代码,登录,忘记密码等代码作为lambda函数吗?还是在AWS堆栈中有一些解决方案或一系列解决方案会刮擦这种特殊的痕迹?

亚历克西斯号

您可以将自己的身份验证系统与Cognito结合使用,然后使用AMI进行授权,甚至针对您的用户群。

  • 当认证用户(可能通过API网关称为lambda函数),您将获取或Cognito创建与用户相关联的身份ID使用GetOpenIdTokenForDeveloperIdentity
  • 然后,您将拥有一个Cognito OpenId令牌,您可以将该令牌提供给已验证的用户。
  • 用户可以使用此令牌获取与IAM角色关联的临时AWS凭证因此,您可以为经过身份验证的用户提供对某些AWS资源的访问权限:GetCredentialsForIdentity
  • 当用户使用这些凭证调用AWS资源时,您可以通过上下文访问其Cognito身份(例如LambdaAPI GatewayS3的示例
  • 最后,你可以找到关联到这个Cognito身份的用户使用你的系统LookupDeveloperIdentity

检查身份验证流程更多示例

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Django使用登录的Windows域用户进行身份验证

AWS Cognito用户身份验证

如何使用Firebase嵌入Google登录按钮以在Web上进行身份验证

如何使用访问令牌和ID令牌对Cognito用户进行身份验证

如何使用IAM DB身份验证和Python在MySQL RDS中进行身份验证

如何使用AWS Cognito在浏览器中对用户进行身份验证?

如何在AWS Lambda函数中获取经过Cognito身份验证的用户信息?

使用AWS Cognito进行多租户身份验证

使用Cognito用户池对Apollo Client进行AWS AppSync身份验证

使用Cognito AWS-SDK-CPP对用户进行身份验证

AWS Cognito用户池登录缺少身份验证令牌

使用Lambda IAM角色以身份验证为Cognito的管理员

如何使用Aws Cognito和Aws Amplify对用户进行身份验证

使用Google登录和SwiftUI检查用户身份验证

登录时对用户进行身份验证

使用AWS Amplify和Android使用Cognito对REST API进行身份验证

在身份验证后Lambda触发器中获取AWS Cognito身份验证的用户

如何对未经身份验证的用户使用AWS Cognito?

使用MEAN Stack进行用户注册和身份验证/授权

如何使用AWS Cognito SDK通过使用NodeJS的REST服务对用户进行身份验证?

使用 AWS Cognito + Azure AD + Facebook 对用户进行身份验证

使用 uid 进行 PHP 和 LDAP 登录身份验证

使用 Android 进行 Firebase 电子邮件和密码身份验证 - 用户注册

使用 AWS Cognito 联合身份进行身份验证失败,因为用户未经过身份验证

使用 Lambda 和 AWS Cognito 进行身份验证

AWS - JavaScript - 使用经过身份验证的 Cognito 用户对 DynamoDB 进行 CRUD 操作

从 AWS Lambda 通过 Azure AD 对用户进行身份验证

如何使用 API Gateway Cognito Authorizer 对访客/未经身份验证的用户进行身份验证?

AWS Cognito 用户池自定义身份验证 Lambda 未触发