

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

# Face Liveness 责任共担模式
<a name="face-liveness-shared-responsibility-model"></a>

 

安全与合规是您（客户）共同承担的责任。 AWS 在此处阅读有关 AWS 分担责任模式的[更多信息](https://aws.amazon.com/compliance/shared-responsibility-model/)。

1.  对 AWS 服务的所有调用（通过客户端应用程序或客户后端）均通过身份验证（身份验证）进行 AWS AWS 身份验证和授权。Face Liveness 服务所有者负责确保这种情况发生。

1.  对客户后端的所有调用（来自客户端应用程序）均通过客户进行身份验证和授权。这一责任由客户承担。客户必须确保来自客户端应用程序的调用经过身份验证，并且不会以任何方式被篡改。

1.  客户后端必须识别执行 Face Liveness 挑战的终端用户。客户负责将终端用户与 Face Liveness 会话联系起来。Face Liveness 服务不区分终端用户。它只能识别来电身 AWS 份（由客户处理）。

1. AWS 建议客户除了采用符合其使用案例需求和安全态势的 Face Liveness 之外，还应增加额外的验证检查措施，例如地理位置定位（如基于 IP）、一次性密码（OTP）等。

“FaceMovementAndLightChallenge” 设置要求用户将脸向屏幕移动，并保持静止状态以获得一系列闪烁的灯光，从而为Rekognition Liveness提供最高的精度。我们建议客户使用此默认设置。或者，客户可以启用 “FaceMovementChallenge” 设置，通过消除闪烁的灯光，将检查时间缩短几秒钟。虽然 “FaceMovementAndLightChallenge” 仍然是最大限度地提高准确性的最佳设置，但 “FaceMovementChallenge” 允许客户优先考虑更快的活跃度检查。在选择这些设置时，客户应考虑自身使用案例的需求，包括预期的攻击类型、期望的错误接受率和错误拒绝率，同时还应实施额外的检查措施，例如地理位置（如基于 IP）、一次性密码（OTP）等。客户应根据自身使用案例，在采用不同置信度分数阈值测试 Liveness 性能后，再作出此决定。客户有责任实施控制措施来保护发送视频的设备

以下流程图显示了哪些调用由 AWS 服务或客户进行身份验证：

![Liveness 检测流程显示了客户端应用程序、Face Liveness 探测器组件、客户后端、Rekognition 服务和 Rekognition 流式传输服务之间的交互，用于实现安全的 Face Liveness 会话。](http://docs.aws.amazon.com/zh_cn/rekognition/latest/dg/images/SequenceDiagramLivenessFlow-v5.png)


对亚马逊 Rekognition Face Liveness 服务的所有呼叫均 AWS 受身份验证（使用签名机制）保护。 AWS 这包括以下这些调用：
+  [3] [CreateFaceLivenessSession](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateFaceLivenessSession.html)API 调用（来自客户的后端） 
+  [7] [StartFaceLivenessSession](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_rekognitionstreaming_StartFaceLivenessSession.html)API 调用（来自客户端应用程序） 
+  [11] [GetFaceLivenessSessionResults](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_GetFaceLivenessSessionResults.html)API 调用（来自客户的后端） 

对客户后端的所有调用都需要有身份验证和授权机制。客户需要确保所使用的第三方 code/library /etc 得到积极维护和开发。客户还需要确保正确的终端用户调用正确的 Face Liveness 会话。客户必须对以下流程进行身份验证和授权：
+  [2] 创建 Face Liveness 会话（来自客户端应用程序） 
+  [10] 获取 Face Liveness 会话结果（来自客户端应用程序） 

客户可以遵循 [STRIDE](https://owasp.org/www-community/Threat_Modeling_Process#stride-threat-list) 安全模型，以确保其 API 调用受到保护。


| 
| 
| Type | 说明 | 安全控制 | 
| --- |--- |--- |
| 欺骗 | 威胁操作旨在访问和使用其他用户的证书，例如用户名和密码。 | 身份验证 | 
| 篡改 | 意图恶意更改或修改永久数据的威胁行动。示例包括数据库中的记录，以及通过开放网络（例如互联网）在两台计算机之间传输的数据的更改。 | 完整性 | 
| 否认 | 威胁操作旨在在缺乏跟踪操作能力的系统中执行违禁操作。 | Non-Repudiation | 
| 信息披露 | 威胁操作旨在读取未被授权访问的文件或读取传输中的数据。 | 机密性 | 
| 拒绝服务 | 试图拒绝有效用户访问的威胁操作，例如使 Web 服务器暂时不可用或无法使用。 | 可用性 | 
| 权限提升 | 威胁行动，意图获得对资源的访问权限，以获得未经授权的信息访问权限或危害系统。 | Authorization | 

AWS 通过以下方式保护其连接：

1.  计算请求签名，然后在服务端验证签名。使用此签名对请求进行***身份验证***。

1.  AWS 客户需要设置适当的 IAM 角色才能对某些角色***进行授权*** actions/operations。调用 AWS 服务需要这些 IAM 角色。

1.  只允许 HTTPS AWS 服务请求。在开放网络中使用 TLS 对请求进行加密。这样可以保护请求的***机密性*** 并保持请求的***完整性***。

1. AWS 服务记录足够的数据以识别客户拨打的电话。这样可以防止***否认*** 攻击。

1.  AWS 服务拥有保持足够的***可用性*** 

客户负责通过以下方式保护其服务和 API 调用：

1.  客户必须确保他们遵循正确的身份验证机制。有多种身份验证机制可用于对请求进行身份验证。客户可以探索[基于摘要的身份验证](https://en.wikipedia.org/wiki/Digest_access_authentication)、[OAuth](https://oauth.net/)、[OpenID 连接](https://openid.net/connect/)和其他机制。

1.  客户必须确保其服务支持用于调用服务 API 的正确加密渠道（例如 TLS/HTTPS）。

1.  客户必须确保记录必要的数据，以便唯一识别 API 调用和调用者。他们应该能够使用定义的参数和调用时间识别调用其 API 的客户端。

1.  客户必须确保其系统可用，并且受到保护，免受 [DDoS 攻击](https://en.wikipedia.org/wiki/Denial-of-service_attack)。以下是一些针对 DDoS 攻击的[防御技术](https://en.wikipedia.org/wiki/Denial-of-service_attack#Defense_techniques)示例。

客户负责使其应用程序保持最新状态。有关更多信息，请参阅 [Face Liveness 更新准则](face-liveness-update-guidelines.md)。