

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 用户池功能计划
<a name="cognito-sign-in-feature-plans"></a>

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

用户池提供多种可打开或关闭的功能。例如，您可以开启多重身份验证 (MFA) 和关闭使用第三方身份提供商登录 ()。IdPs某些变更需要您切换功能计划。用户池的以下特征决定了每月向您 Amazon 收取的使用费用。
+ 您选择的功能
+ 您的应用程序每秒向用户池 API 发出的请求数
+ 一个月内有身份验证、更新或查询活动的用户数，也称为[每月活跃用户](quotas.md#monthly-active-users)或 MAUs
+ 来自第三方 SAML 2.0 或 OpenID Connect (OIDC) 的每月活跃用户数 IdPs
+ 使用客户端凭证授予授权的应用程序客户端和用户池的 machine-to-machine数量

有关用户池定价的最新信息，请参阅 [Amazon Cognito 定价](https://www.amazonaws.cn/cognito/pricing)。

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

您可以随时在功能计划之间切换，以满足应用程序的要求。计划之间的某些变更可能需要您关闭当前启用的功能。有关更多信息，请参阅 [关闭功能以更改功能计划](feature-plans-deactivate.md)。用户池功能计划

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

**基础版**  
基础版具有所有最新的用户池身份验证功能。该计划为您的应用程序添加了新的选项，无论您的登录页面是托管登录还是自定义登录。基础版具有高级身份验证功能，例如[基于选择的登录](authentication-flows-selection-sdk.md#authentication-flows-selection-choice)和[电子邮件 MFA](user-pool-settings-mfa-sms-email-message.md)。

**增值版**  
增值版包含基础版计划中的所有功能，并添加了用于保护用户的高级安全功能。该计划可监控用户登录、注册和密码管理请求，寻找泄露迹象。例如，用户池可以检测用户是否从异常位置登录，或是否使用了已被公开泄露的密码。  
使用增值版功能计划的用户池会生成包含用户活动详情和风险评估的日志。当您将这些日志导出到外部服务时，可以自行对其进行使用情况和安全性分析。

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

**Topics**
+ [选择功能计划](#cognito-sign-in-feature-plans-choose)
+ [按计划划分的功能](#cognito-sign-in-feature-plans-list)
+ [基础版计划的功能](feature-plans-features-essentials.md)
+ [增值版计划功能](feature-plans-features-plus.md)
+ [关闭功能以更改功能计划](feature-plans-deactivate.md)

## 选择功能计划
<a name="cognito-sign-in-feature-plans-choose"></a>

------
#### [ Amazon Web Services 管理控制台 ]

选择功能计划的步骤

1. 转到 [Amazon Cognito 控制台](https://console.amazonaws.cn/cognito/home)。如果出现提示，请输入您的 Amazon 凭据。

1. 选择**用户池**。

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

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

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

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

1. 在下一个屏幕上，查看您的选择并选择**确认**。

------
#### [ CLI/API/SDK ]

[CreateUserPool](https://docs.amazonaws.cn/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html)和[UpdateUserPool](https://docs.amazonaws.cn/cognito-user-identity-pools/latest/APIReference/API_UpdateUserPool.html)操作在`UserPoolTier`参数中设置您的功能计划。如果您未指定 `UserPoolTier` 的值，则用户池将默认使用 `Essentials`。如果将 `AdvancedSecurityMode` 设置为 `AUDIT` 或 `ENFORCED`，则用户池的层级必须为 `PLUS`，如果未指定，则默认为 `PLUS`。

有关语法[， CreateUserPool请参阅中的示例](https://docs.amazonaws.cn/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html#API_CreateUserPool_Examples)。 CreateUserPool有关各种编程语言[中此函数的链接， Amazon SDKs 请参阅](https://docs.amazonaws.cn/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html#API_CreateUserPool_SeeAlso) of 中的。

```
"UserPoolTier": "PLUS"
```

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

```
--user-pool-tier PLUS
```

有关更多信息 [create-user-pool](https://docs.amazonaws.cn/cli/latest/reference/cognito-idp/create-user-pool.html)，请参阅 Amazon CLI 命令参考[update-user-pool](https://docs.amazonaws.cn/cli/latest/reference/cognito-idp/update-user-pool.html)中的和。

------

## 按计划划分的功能
<a name="cognito-sign-in-feature-plans-list"></a>


**用户池中的功能和计划**  

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