用户池功能计划 - Amazon Cognito
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

用户池功能计划

了解成本是准备实施 Amazon Cognito 用户池身份验证的一个关键步骤。Amazon Cognito 提供针对用户池的功能计划。每个计划均包含一组特定功能,并按活跃用户每月收取费用。每个功能计划都比之前的功能计划解锁了更多功能。

用户池提供多种可打开或关闭的功能。例如,您可以启用多重身份验证(MFA),同时禁用通过第三方身份提供者(IdP)登录。某些变更需要您切换功能计划。以下用户池特性将决定 Amazon 每月向您收取的使用费用。

  • 您选择的功能

  • 您的应用程序每秒向用户池 API 发出的请求数

  • 一个月内有身份验证、更新或查询活动的用户数,也称为每月活跃用户数或 MAU

  • 来自第三方 SAML 2.0 或 OpenID Connect(OIDC)IdP 的每月活跃用户数

  • 使用客户端凭证授权类型进行机器对机器授权的应用程序客户端和用户池的数量

有关用户池定价的最新信息,请参阅 Amazon Cognito 定价

功能计划的选择适用于单个用户池。同一 Amazon Web Services 账户中的不同用户池可以选用不同的功能计划。您无法为同一用户池内的不同应用程序客户端分别应用不同的功能计划。新用户池的默认功能计划为基础版。

您可以随时在功能计划之间切换,以满足应用程序的要求。计划之间的某些变更可能需要您关闭当前启用的功能。有关更多信息,请参阅关闭功能以更改功能计划

用户池功能计划
精简版

精简版是一种低成本的功能计划,适用于每月活跃用户数较少的用户池。该功能计划足以支持具备基本身份验证功能的用户目录,包含登录功能和经典托管 UI,这是托管登录之前的一个更轻量、可定制性较低的版本。许多较新的功能,例如访问令牌自定义和通行密钥身份验证,都未包含在精简版功能计划中。

基础版

基础版具有所有最新的用户池身份验证功能。该计划为您的应用程序添加了新的选项,无论您的登录页面是托管登录还是自定义登录。基础版具有高级身份验证功能,例如基于选择的登录电子邮件 MFA

增值版

增值版包含基础版计划中的所有功能,并添加了用于保护用户的高级安全功能。该计划可监控用户登录、注册和密码管理请求,寻找泄露迹象。例如,用户池可以检测用户是否从异常位置登录,或是否使用了已被公开泄露的密码。

使用增值版功能计划的用户池会生成包含用户活动详情和风险评估的日志。当您将这些日志导出到外部服务时,可以自行对其进行使用情况和安全性分析。

注意

此前,部分用户池功能包含在高级安全功能定价结构中。此结构中包含的功能现已纳入基础版或增值版功能计划中。

选择功能计划

Amazon Web Services 管理控制台

选择功能计划的步骤

  1. 转到 Amazon Cognito 控制台。如果出现提示,请输入 Amazon 凭证。

  2. 选择用户池

  3. 从列表中选择一个现有用户池,或创建一个用户池。

  4. 选择设置菜单并查看功能计划选项卡。

  5. 查看精简版、基础版和增值版功能计划中可供您使用的功能。

  6. 要更改计划,请选择切换到基础版切换到增值版。要切换到精简版计划,请选择其他计划,然后选择与精简版对比

  7. 在下一个屏幕上,查看您的选择并选择确认

CLI/API/SDK

CreateUserPoolUpdateUserPool 操作通过 UserPoolTier 参数设置您的功能计划。如果您未指定 UserPoolTier 的值,则用户池将默认使用 Essentials。如果将 AdvancedSecurityMode 设置为 AUDITENFORCED,则用户池的层级必须为 PLUS,如果未指定,则默认为 PLUS

有关语法,请参阅 CreateUserPool 中的“示例”部分。有关适用于多种编程语言的 Amazon SDK 中此函数的相关链接,请参阅 CreateUserPool 中的“另请参阅”部分

"UserPoolTier": "PLUS"

在 Amazon CLI 中,此选项是 --user-pool-tier 参数。

--user-pool-tier PLUS

有关更多信息,请参阅 Amazon CLI 中的 create-user-poolupdate-user-pool

按计划划分的功能

用户池中的功能和计划
功能 描述 功能计划
防范使用不安全的密码 在运行时检查纯文本密码是否有泄露迹象 增值版
防范恶意登录尝试 在运行时检查会话属性以了解是否存在泄露迹象 增值版
记录和分析用户活动 生成用户身份验证会话属性和风险评分的日志 增值版
导出用户活动日志 将用户会话和风险日志推送到外部 Amazon Web Services 服务 增值版
使用可视化编辑器自定义托管登录页面 使用 Amazon Cognito 控制台中的可视化编辑器,将品牌和样式应用于您的托管登录页面 基础版 + 增值版
带有电子邮件一次性代码的 MFA 请求或要求本地用户在用户名身份验证后提供额外的电子邮件消息登录因素 基础版 + 增值版
在运行时自定义访问令牌作用域和声明 使用 Lambda 触发器扩展用户池访问令牌的授权功能 基础版 + 增值版
使用一次性密码进行无密码登录 允许用户通过电子邮件或短信接收一次性密码,作为他们的第一个身份验证因素 基础版 + 增值版
使用硬件或软件 FIDO2 身份验证器进行通行密钥登录 允许用户使用存储在 FIDO2 身份验证器上的加密密钥作为他们的第一个身份验证因素 基础版 + 增值版
注册和登录 执行身份验证操作并允许新用户在您的应用程序中注册账户。 精简版 + 基础版 + 增值版
用户组 创建用户的逻辑分组并为身份池操作分配默认的 IAM 角色。 精简版 + 基础版 + 增值版
使用社交、SAML 和 OIDC 身份提供者登录 为用户提供直接登录或使用其首选提供商登录的选项。 精简版 + 基础版 + 增值版
OAuth 2.0/OIDC 授权服务器 充当 OIDC 颁发者。 精简版 + 基础版 + 增值版
登录页面 用于身份验证的一系列托管网页。基础版和增值版提供托管登录。所有功能层级均提供经典托管 UI。 精简版 + 基础版 + 增值版
密码、自定义、刷新令牌和 SRP 身份验证 在应用程序中提示用户输入用户名和密码。 精简版 + 基础版 + 增值版
使用客户端凭证进行机器对机器(M2M)授权 颁发访问令牌以授权非人类实体。 精简版 + 基础版 + 增值版
使用资源服务器进行 API 授权 颁发具有自定义作用域的访问令牌,以授权对外部系统的访问。 精简版 + 基础版 + 增值版
用户导入 设置从 CSV 文件进行的导入作业,并在用户登录时执行即时迁移。 精简版 + 基础版 + 增值版
使用身份验证器应用程序和短信一次性代码进行 MFA 请求或要求本地用户在用户名身份验证后提供额外的短信或身份验证器应用程序登录因素 精简版 + 基础版 + 增值版
在运行时自定义 ID 令牌作用域和声明 使用 Lambda 触发器扩展用户池身份(ID)令牌的身份验证功能 精简版 + 基础版 + 增值版
使用 Lambda 触发器执行自定义运行时操作 使用执行外部操作和影响身份验证的 Lambda 函数,在运行时自定义登录流程 精简版 + 基础版 + 增值版
使用 CSS 自定义托管登录页面 下载 CSS 模板并更改托管登录页面中的一些样式 精简版 + 基础版 + 增值版