Amazon Cognito 中的数据保护
AWS责任共担模式
出于数据保护目的,我们建议您保护 AWS 账户凭证并使用 AWS Identity and Access Management(IAM)设置单独的用户账户。这仅向每个用户授予履行其工作职责所需的权限。我们还建议您通过以下方式保护数据:
-
对每个账户使用多重身份验证(MFA)。
-
使用 SSL/TLS 与 AWS 资源进行通信。
-
使用 AWS CloudTrail 设置 API 和用户活动日志记录。
-
使用 AWS 加密解决方案以及 AWS 服务中的所有默认安全控制。
-
使用高级托管安全服务(例如 Amazon Macie),其有助于发现和保护存储在 Simple Storage Service(Amazon S3)中的个人数据。
我们强烈建议您切勿将敏感的可识别信息(例如您客户的账号)放入自由格式字段(例如名称字段)。这包括使用控制台、API、AWS CLI 或 AWS SDK 处理 Amazon Cognito 或其他AWS服务时。您输入到 Amazon Cognito 或其他服务中的任何数据都可能被选取以包含在诊断日志中。当您向外部服务器提供网址时,请勿在网址中包含凭证信息来验证您对该服务器的请求。
数据加密
数据加密通常分为两类:静态加密和传输中加密。
静态加密
Amazon Cognito 中的数据按照行业标准进行静态加密。
传输中加密。
作为一项托管式服务,Amazon Cognito 受 AWS 全球网络安全保护。有关 AWS 安全服务以及 AWS 如何保护基础设施的信息,请参阅 AWS 云安全性
您可以使用AWS发布的 API 调用通过网络访问 Amazon Cognito。客户端必须支持以下内容:
-
传输层安全性协议(TLS)。我们要求使用 TLS 1.2,建议使用 TLS 1.3。
-
具有完全向前保密(PFS)的密码套件,例如 DHE(临时 Diffie-Hellman)或 ECDHE(临时椭圆曲线 Diffie-Hellman)。大多数现代系统(如 Java 7 及更高版本)都支持这些模式。
Amazon Cognito 用户池和身份池具有经过 IAM 身份验证、未经身份验证和经过令牌授权的 API 操作。未经身份验证和经过令牌授权的 API 操作旨在由您的客户(即您的应用程序的最终用户)使用。未经身份验证和经过令牌授权的 API 操作会进行静态加密和传输中加密。有关更多信息,请参阅按授权模型分组的 API 操作列表。
注意
Amazon Cognito 在内部加密您的内容,并且不支持客户提供的密钥。