跳至主要内容

AWS 解决方案库

有关如何在 AWS 上使用数字钱包进行身份验证的指引

概览

本指引将展示 Amazon Cognito 的自定义身份验证流程。使用分散式 Web 应用程序(dApp),您可以通过 Amazon Cognito 向您的数字钱包进行身份验证,以获得临时 AWS 凭证。随后,这些凭证允许您访问 AWS 服务,使您能够安全地将 API 调用代理到第三方 API。本指引提供了两种不同的授权方法,您可以从中选择最方便的方法。

工作原理

此架构图使您能够使用数字钱包进行身份验证并获取 AWS 证书。这些证书可用于访问 AWS 服务以及对第三方 Web3 API 进行安全的 API 调用。

Well-Architected 支柱

上面的架构图是按照 Well-Architected 最佳实践创建的解决方案示例。要做到完全的良好架构,您应该遵循尽可能多的 Well-Architected 最佳实践。

本指南使用 AWS 无服务器应用程序模型 (SAM) 来定义、构建和部署架构资源。如果 Lambda 函数和 API 网关遇到故障或错误,您可以设置 Amazon CloudWatch 警报来解决意外问题。查看此博客文章了解更多信息:如何使用 CloudWatch 获得有关特定 Lambda 函数错误模式的通知

阅读“卓越运营”白皮书

本指南采用自定义身份验证流程,用户使用其数字钱包(加密钱包)签署生成的消息,以回答 Amazon Cognito 自定义质询,在用户池中创建身份。此外,本指南演示了 API 网关的两种授权方法:使用亚马逊 Cognito 用户池身份令牌或 A mazon Cognito 身份池 AWS 身份和访问管理 (IAM) 角色对经过身份验证和未经身份验证的用户使用。

您可以安全地将 API 调用代理到第三方 Web3 提供程序 API,这一原则适用于任何第三方 API。API Gateway 通过提供不同的授权机制来保护对后端的访问。来自第三方Web3 API的数据在通过 API网关传输到客户的去中心化网络DApp时在传输过程中会被加密。

阅读《安全性》白皮书

本指南使用高度可用的托管服务、亚马逊 Cognito API Gateway 。这两种服务都会生成可以调用警报的 CloudWatch 指标,而详细的 API 网关日志则提供了对收到的 HTTP 请求的可见性。这些可观测性功能可以帮助您监控 AWS 区域的运行状况,您可以在这些区域中部署本指引,以帮助提高工作负载的整体可靠性。

阅读《可靠性》白皮书

GitHub 上可用的源代码和后端文件夹中提供的 SAM 模板可以作为你自己的项目的样板。然后,您可以配置 API 网关以指向所需的后端 API 或运行您选择的 Lambda 函数。

阅读《性能效率》白皮书

本指南使用亚马逊 Cognito API Gateway,这两项无服务器服务为入门提供免费套餐。Amazon Cognito 的费用基于您的用户池中的月活跃用户 (MAU) 数量,而 API Gateway 的费用基于收到的 API 调用数量和传出的数据量。

阅读《成本优化》白皮书

本指南尽可能将 API 请求直接代理到后端集成,而不是启动 Lambda 函数,从而减少资源消耗。所涉及的 Lambda 函数仅在所需的持续时间内运行。这种方法可以实现可持续、经济高效的解决方案,而且只在必要时消耗资源。

阅读《可持续性》白皮书

免责声明

示例代码;软件库;命令行工具;概念验证;模板;或其他相关技术(包括由我方人员提供的任何前述项)作为 AWS 内容按照《AWS 客户协议》或您与 AWS 之间的相关书面协议(以适用者为准)向您提供。您不应将这些 AWS 内容用在您的生产账户中,或用于生产或其他关键数据。您负责根据特定质量控制规程和标准测试、保护和优化 AWS 内容,例如示例代码,以使其适合生产级应用。部署 AWS 内容可能会因创建或使用 AWS 可收费资源(例如,运行 Amazon EC2 实例或使用 Amazon S3 存储)而产生 AWS 费用。

找到今天要查找的内容了吗?

请提供您的意见,以便我们改进网页内容的质量。