跳到主要内容

年龄验证

随着新法规要求平台在提供某些功能或内容访问之前验证用户年龄,年龄验证变得越来越重要。k-ID的合规开发工具包通过提供适应本地法律要求的全面、管辖区感知验证系统,使合规变得简单。

本指南将引导您在几个步骤中实现年龄验证,让您快速满足监管要求,同时提供流畅的用户体验。

先决条件

在开始之前,您需要:

  1. k-ID产品: 在k-ID合规工作室创建和配置您的产品
  2. API密钥: 从产品的开发者设置页面生成您的API密钥
  3. Webhook端点(可选但推荐): 设置安全的HTTPS端点以接收验证结果。更多详情,请参见Webhooks

步骤1: 启动年龄验证

调用/age-verification/perform-access-age-verification API创建验证请求。这将返回用户用于完成年龄验证的唯一URL。

提示

使用我们的交互式Swagger文档和您的API密钥快速生成年龄验证URL。

重要: 对于您的实现,这应该是服务器到服务器的调用,以保护您的API密钥不被暴露在客户端代码中。

请求示例

POST /api/v1/age-verification/perform-access-age-verification
Content-Type: application/json
Authorization: Bearer your-api-key

{
"jurisdiction": "GB",
"criteria": {
"ageCategory": "ADULT"
}
}

响应示例

{
"id": "7854909b-9124-4bed-9282-24b44c4a3c97",
"url": "https://family.k-id.com/verify?token=eyJhbGciOiJFUzM4NCIs..."
}

jurisdiction参数确保符合当地法规(如为英国要求设置"GB"),而ageCategory: "ADULT"标准验证用户满足该管辖区定义的年龄标准要求。

步骤2: 显示验证界面

使用返回的URL在您的网站或应用中创建iframe。用户将通过此界面完成验证,可用方法自动适应管辖区要求。

HTML实现

<div id="verification-container">
<iframe
id="verification-widget"
src="VERIFICATION_URL"
width="100%"
height="600"
frameborder="0"
allow="camera;payment;publickey-credentials-get;publickey-credentials-create">
</iframe>
</div>

iframe将向用户展示多种验证方法,例如:

  • AgeKey: 在初始验证过程后生成的可重用和匿名年龄证明
  • 面部年龄估计: 使用设备摄像头的隐私保护年龄估计
  • ID文档验证: 政府颁发的ID验证

可用方法取决于管辖区和您的产品配置。更多详情,请参见验证方法

步骤3: 处理验证结果

一旦用户成功完成年龄验证,或用户已达到最大重试次数但未成功,您可以通过三种方式接收验证结果:

选项A: 实时JavaScript事件(客户端)

const handleMessage = (event) => {
const message = event.data;
if (message.eventType === "Verification.Result") {
if (message.data.status === "PASS") {
// 用户通过验证 - 授予访问权限
console.log("年龄已验证:", message.data.ageCategory);
grantAccess();
} else if (message.data.status === "FAIL") {
// 用户验证失败 - 限制访问
console.log("验证失败:", message.data.failureReason);
restrictAccess();
}
}
};

window.addEventListener("message", handleMessage);

选项B: Webhook通知(服务器端)

配置您的webhook端点以接收Verification.Result事件:

{
"eventType": "Verification.Result",
"data": {
"id": "7854909b-9124-4bed-9282-24b44c4a3c97",
"status": "PASS",
"ageCategory": "adult",
"method": "id-document",
"age": {
"low": 25,
"high": 25
}
}
}

选项C: 轮询(替代方法)

使用验证ID查询验证状态:

GET /api/v1/age-verification/get-status?id=7854909b-9124-4bed-9282-24b44c4a3c97

Response:
{
"id": "7854909b-9124-4bed-9282-24b44c4a3c97",
"status": "PASS",
"ageCategory": "adult",
"method": "id-document"
}

下一步

现在您已经实现了基本的年龄验证,探索这些资源以增强您的集成:

使用k-ID的年龄验证API,您可以快速实现年龄验证法规的合规性,同时为用户提供流畅、注重隐私的验证体验。