メインコンテンツに移動

年齢確認

新しい規制により、プラットフォームは特定の機能やコンテンツへのアクセスを提供する前にユーザーの年齢を確認する必要があります。k-IDのコンプライアンス開発キットは、地域の法的要件に適応する包括的で管轄区域を意識した検証システムを提供することで、コンプライアンスを簡単にします。

このガイドでは、わずか数ステップで年齢確認を実装する方法を説明し、スムーズなユーザー体験を提供しながら規制要件を迅速に満たすことができます。

前提条件

開始する前に、以下が必要です:

  1. k-ID製品: k-IDコンプライアンススタジオ製品を作成・設定
  2. APIキー: 製品の開発者設定ページからAPIキーを生成
  3. Webhookエンドポイント(オプションですが推奨): 検証結果を受信するための安全なHTTPSエンドポイントを設定。詳細はWebhooksを参照。

ステップ1: 年齢確認の開始

/age-verification/perform-access-age-verification APIを呼び出して検証リクエストを作成します。これにより、ユーザーが年齢確認を完了するために使用する一意のURLが返されます。

ヒント

APIキーを使用してインタラクティブなSwaggerドキュメントを使用し、年齢確認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: 検証結果の処理

ユーザーが年齢確認を正常に完了したか、ユーザーが最大試行回数に達して成功しなかった場合、検証結果を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を使用することで、ユーザーにスムーズでプライバシー重視の検証体験を提供しながら、年齢確認規制へのコンプライアンスを迅速に実現できます。