Face Liveness 责任共担模式 - Amazon Rekognition

Face Liveness 责任共担模式

安全性和合规性是 AWS 与您(我们的客户)之间的共同责任。在此处阅读有关 AWS 责任共担模式的更多信息。

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

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

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

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

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

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

Liveness 检测流程显示了客户端应用程序、Face Liveness 探测器组件、客户后端、Rekognition 服务和 Rekognition 流式传输服务之间的交互,用于实现安全的 Face Liveness 会话。

对 Amazon Rekognition Face Liveness 服务的所有调用均受 AWS Auth(使用 AWS 签名机制)保护。这包括以下这些调用:

对客户后端的所有调用都需要有身份验证和授权机制。客户需要确保所使用的第三方代码/库/等得到主动维护和开发。客户还需要确保正确的终端用户调用正确的 Face Liveness 会话。客户必须对以下流程进行身份验证和授权:

  • [2] 创建 Face Liveness 会话(来自客户端应用程序)

  • [10] 获取 Face Liveness 会话结果(来自客户端应用程序)

客户可以遵循 STRIDE 安全模型,以确保其 API 调用受到保护。

类型 描述 安全控制
Spoofing Threat action aimed at accessing and use of another user’s credentials, such as username and password. Authentication
Tampering Threat action intending to maliciously change or modify persistent data. Examples include records in a database, and the alteration of data in transit between two computers over an open network, such as the internet. Integrity
Repudiation Threat action aimed at performing prohibited operations in a system that lacks the ability to trace the operations. Non-Repudiation
Information disclosure Threat action intending to read a file that one was not granted access to, or to read data in transit. Confidentiality
Denial of service Threat action attempting to deny access to valid users, such as by making a web server temporarily unavailable or unusable. Availability
Elevation of privilege Threat action intending to gain privileged access to resources in order to gain unauthorized access to information or to compromise a system. Authorization

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

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

  2. AWS 客户需要设置适当的 IAM 角色才能授权 某些操作。调用 AWS 服务需要这些 IAM 角色。

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

  4. AWS 服务记录足够的数据以识别客户发出的调用。这样可以防止否认 攻击。

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

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

  1. 客户必须确保他们遵循正确的身份验证机制。有多种身份验证机制可用于对请求进行身份验证。客户可以探索基于摘要的身份验证OAuthOpenID 连接和其他机制。

  2. 客户必须确保其服务支持用于调用服务 API 的正确加密通道(如 TLS/HTTPS)。

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

  4. 客户必须确保其系统可用,并且受到保护,免受 DDoS 攻击。以下是一些针对 DDoS 攻击的防御技术示例。

客户负责使其应用程序保持最新状态。有关更多信息,请参阅 Face Liveness 更新准则