- AWS 解决方案库›
- 指导
有关如何在 AWS 上使用数字钱包进行身份验证的指南
概览
工作原理
此架构图使您能够使用数字钱包进行身份验证并获取 AWS 凭证。这些凭证可用于访问 AWS 服务以及对第三方 Web3 API 进行安全的 API 调用。
Well-Architected 支柱
上面的架构图是按照 Well-Architected 最佳实践创建的解决方案示例。要做到完全的良好架构,您应该遵循尽可能多的 Well-Architected 最佳实践。
本指南使用 AWS Serverless Application Model(SAM)定义、构建和部署架构资源。如果 Lambda 函数和 API Gateway 遇到故障或错误,您可以设置 Amazon CloudWatch 警报以解决意外的问题。请查看此博客文章,以了解更多信息:如何使用 CloudWatch 获得有关特定 Lambda 函数错误模式的通知。
本指南采用自定义身份验证流程,在此流程中,用户需要使用他们的数字钱包(加密钱包)为生成的消息签名,以回答 Amazon Cognito 自定义质询,并在用户池中创建身份。此外,本指南还展示了 API Gateway 的两种授权方法:使用 Amazon Cognito 用户池身份令牌,或者对经过身份验证和未经身份验证的用户使用 Amazon Cognito 身份池和 AWS Identity and Access Management(IAM)角色。
您可以安全地将 API 调用代理到第三方 Web3 提供程序 API,这一原则适用于任何第三方 API。API Gateway 提供不同的授权机制,以保护对后端的访问。当来自第三方 Web3 API 的数据通过 API Gateway 传输到客户端的分散式 Web dApp 时,对它们进行传输中加密。
本指南使用 Amazon Cognito 和 API Gateway 这两项极具可用性的托管式服务。这两项服务都会生成可以调用警报的 CloudWatch 指标,而详细的 API Gateway 日志提供了对收到的 HTTP 请求的可见性。这些可观测性功能可以帮助您监控 AWS 区域的运行状况,您可以在这些区域中部署本指南,以帮助提高工作负载的整体可靠性。
您可以将 GitHub 上提供的源代码和后端文件夹中提供的 SAM 模板用作您自己的项目的样板。随后,您可以配置 API Gateway,以指向所需的后端 API 或者运行您选择的 Lambda 函数。
本指南使用 Amazon Cognito 和 API Gateway,这两项无服务器服务提供了可以帮助您入门的免费套餐。Amazon Cognito 根据您的用户池中的每月活跃用户(MAU)数量收费,而 API Gateway 根据收到的 API 调用次数和传出的数据量收费。
本指南尽可能将 API 请求直接代理到后端集成,而不是启动 Lambda 函数,因此减少了资源消耗。所涉及的 Lambda 函数只在所需的持续时间内运行。这种方法可以实现可持续、经济高效的解决方案,而且只在必要时消耗资源。
免责声明
找到今天要查找的内容了吗?
请提供您的意见,以便我们改进网页内容的质量