

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# アーキテクチャ図とシーケンス図
<a name="face-liveness-diagrams"></a>

 以下の図は、Amazon Rekognition Face Liveness が機能のアーキテクチャと一連のオペレーションに関してどのように動作するかを詳しく説明しています。

![ライブネス検出フロー図。エンドユーザー、クライアントアプリケーション、FaceLivenessDetector コンポーネント、顧客のバックエンド、Rekognition サービス、Rekognition ストリーミングサービス間の、ライブネスセッション設定、ビデオ分析、結果取得の流れが示されている。](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/images/SequenceDiagramLivenessFlowGuide-v5.png)


![顧客アプリケーションの顔のライブネスチェックにおけるワークフロー。Amplify FaceLivenessDetector コンポーネント、Rekognition サービス、顧客バックエンドのほか、参照画像と監査画像を保存する Amazon S3 バケットが含まれている。](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/images/RekognitionLivenessArchitectureDeveloperGuide_v2.jpg)


Face Liveness チェックプロセスには、以下に概説するいくつかのステップが含まれています。

1.  ユーザーはクライアントアプリケーションで Face Liveness チェックを開始します。

1.  クライアントアプリケーションがお客様のバックエンドを呼び出し、そのバックエンドが Amazon Rekognition サービスを呼び出します。このサービスは Face Liveness セッションを作成し、固有の SessionId を返します。**注:** SessionId は送信後 3 分で期限切れになるため、以下のステップ 3～7 を完了するまでの時間は 3 分間しかありません。顔のライブネスチェックごとに新しい sessionID を使用する必要があります。同じ sessionID を後続の顔のライブネスチェックで使用すると、チェックは失敗します。さらに、SessionId は送信後 3 分で期限切れになり、セッションに関連付けられたすべてのライブネスデータ (sessionID、参照画像、監査画像など) は使用できなくなります。

1.  クライアントアプリケーションは、取得した SessionId と適切なコールバックを使用して FaceLivenessDetector Amplify コンポーネントをレンダリングします。

1.  FaceLivenessDetector コンポーネントは Amazon Rekognition ストリーミングサービスへの接続を確立し、ユーザーの画面上に楕円形をレンダリングし、色付きのライトのシーケンスを表示します。FaceLivenessDetector は、ビデオを録画して Amazon Rekognition ストリーミングサービスにリアルタイムでストリーミングします。

1.  Amazon Rekognition ストリーミングサービスはビデオをリアルタイムで処理して結果を保存し、ストリーミングが完了すると DisconnectEvent を FaceLivenessDetector コンポーネントに返します。

1.  FaceLivenessDetector コンポーネントは、`onAnalysisComplete` コールバックを呼び出して、ストリーミングが完了し、スコアを取得できる状態になったことをクライアントアプリケーションに通知します。

1.  クライアントアプリケーションはお客様のバックエンドを呼び出して、ユーザーが稼働中かどうかを示すブール値のフラグを取得します。お客様のバックエンドは、Amazon Rekognition サービスに対して、信頼スコア、リファレンス、監査イメージを取得するためのリクエストを送信します。カスタマーバックエンドはこれらの属性を使用してユーザーが稼働中かどうかを判断し、クライアントアプリケーションに適切なレスポンスを返します。

1.  最後に、クライアントアプリケーションは FaceLivenessDetector コンポーネントにレスポンスを渡します。これにより、成功/失敗のメッセージが適切にレンダリングされ、フローが完了します。