跳到主要内容

已验证家长关联 (VPL)

已验证家长关联 (VPL) 让玩家可以主动邀请自己的家长进入您的产品。家长完成身份验证后,即可查看并设置该玩家的各项控制,例如屏幕时间。

什么是 VPL?

已验证家长关联在一位家长与一位已经被允许使用您产品的玩家之间建立监护关系。是否开始由玩家决定:流程由玩家发起,无论家长是否接受,您的产品都会照常运行。不需要等待家长,这正是它与同意的区别。

是关联,不是门禁

这一区别决定了整个功能的性质,因此有必要明确说明。

可验证父母同意 (VPC)门禁。玩家触及不被允许的操作时,访问会被阻断,必须由可信成人批准后才能继续。它是针对数据处理的法律同意。

VPL 是关联。不需要等待家长,也不涉及任何同意。它建立的是监护关系,而非法律关系。

VPCVPL
全称可验证父母同意已验证家长关联
触发方式注册时未达访问年龄,或触及由 GUARDIAN 管理的功能玩家选择邀请自己的家长
由谁发起家长,此时玩家处于等待状态玩家,而家长此时与产品尚无任何关系
法律性质针对数据处理的同意(例如 COPPA、GDPR-K)监护关系,不是针对数据处理的同意
强制程度强。批准前功能或产品被阻断弱。没有它产品也完全可用
写入内容已同意权限的 enabled额度以及屏幕时间等各项控制状态,绝不写入权限
默认状态批准前被阻断未关联,邀请为可选
challenge.typeCHALLENGE_PARENTAL_CONSENTCHALLENGE_SESSION_UPGRADECHALLENGE_PARENT_INVITE
需调用的端点/age-gate/check 之后调用 /challenge/send-email,或调用 /session/upgrade/age-gate/check 之后调用 /challenge/invite-parent

VPC 与 VPL 互斥

important

只要 VPC 可能以任何形式适用于某位玩家,就不会向其提供 VPL。

只有同时满足以下两点,会话才符合 VPL 的条件:

  • 玩家达到或超过其司法管辖区的访问年龄,因此 /age-gate/check 返回 PASS 并创建了会话。
  • 在该玩家的司法管辖区和年龄下,会话上没有任何权限为 managedBy: GUARDIAN

因此,凡是 VPC 可能触发的情形,VPL 都会被拒绝。下表列出了这些情形:

玩家的情形VPC 的行为VPL 不可用的原因
未达该司法管辖区的访问年龄/age-gate/check 返回带 CHALLENGE_PARENTAL_CONSENT 挑战的 CHALLENGE,且不创建会话没有会话就没有可供邀请家长的对象,因此永远到不了 /challenge/invite-parent
未达访问年龄且开启了数据精简模式同样返回 CHALLENGE,并附带 childLiteAccessEnabled: true,提示您在等待同意期间以自有的安全默认体验让玩家进入仍然没有会话,因此到不了邀请环节
达到访问年龄,但会话带有由 GUARDIAN 管理的权限会话在该权限被锁定的状态下创建,玩家触及该功能时通过 /session/upgrade 触发 VPC邀请会以 FEATURE_DISABLED 被拒绝。您可以在调用前读取会话的 permissions[] 自行确认
该司法管辖区和年龄下产品被完全禁止/age-gate/check 拒绝没有会话

实际上,VPL 适用于那些在其已配置的司法管辖区中不存在 GUARDIAN 管理权限的产品。

同一个产品仍然可以对不同玩家使用两种流程。产品层面没有开关,具体适用哪种流程是按会话根据玩家的司法管辖区、年龄以及产品的权限集合推导出来的。如果您的产品只在部分司法管辖区存在 GUARDIAN 管理权限,那么前一组玩家走 VPC,后一组玩家符合 VPL 的条件。

关联授予什么,不授予什么

家长关联后,其在流程中所做的设置会保存在会话上:

执行仍由您负责。k-ID 报告家长设置的状态,由您的产品据此执行。

VPL 绝不会改变 permissions[] 所授予的内容。这些值保持年龄门禁时的状态不变,因为改变玩家被允许做什么只属于 VPC。

另外,managedBy 并不是任一流程写入的值。它由玩家的年龄和您的司法管辖区配置在每次响应时推导得出,因此不会在同意完成时翻转,而会随着玩家年龄增长自行变化。关于确实会变化的内容,参见权限

会话与 kuid

您从 /age-gate/check 获得的 sessionId 是您在产品中标识某一位玩家的长期句柄。它在关联、解除关联和重新关联之间保持不变。请以它作为您自己用户记录的键。

kuid 是 k-ID 对该会话所关联的持久儿童档案的标识符。k-ID 在家长完成关联时分配它,并在之后关联被解除时将其从会话上清除。因此,kuid 存在即表示该会话已关联了一位家长。

阶段sessionIdkuid会话状态
仅通过年龄门禁,首次新建,此后保持不变managedBy: PLAYERhasApproverEmail: false
家长完成关联不变已分配,并通过 Challenge.StateChange webhook 送达hasApproverEmail: true
关联被解除不变被清除会话仍为 ACTIVE,权限与已推送的数据保持不变
重新关联不变恢复为同一档案的 kuid会话与已推送的数据继续保留,但家长要从零开始重新设置各项控制

每位玩家使用一个会话并重复使用它。为同一位玩家再创建一个会话会把其数据拆分到两个会话中。

可用性

请联系 k-ID 为您的组织开启此功能。

后续步骤