Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 /...

16
Copyright (c) 2020 by Amazon.com, Inc. or its affiliates. Auto Check-In App は、https://www.apache.org/licenses/LICENSE-2.0 で閲覧可能な Apache ライセンスバージョン 2.0 の条項に基づいてライセンスされます。 Auto Check-In App AWS 実装ガイド 針原 佳貴 飯塚 将太 石見 和也 宮本 大輔 奥野 友哉 2020 1

Transcript of Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 /...

Page 1: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

Copyright (c) 2020 by Amazon.com, Inc. or its affiliates.

Auto Check-In App は、https://www.apache.org/licenses/LICENSE-2.0 で閲覧可能な Apache ライセンスバージョン 2.0

の条項に基づいてライセンスされます。

Auto Check-In App AWS 実装ガイド

針原 佳貴

飯塚 将太

石見 和也

宮本 大輔

奥野 友哉

2020 年 1 月

Page 2: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

2 / 16 ページ

目次

このガイドについて ............................................................................................................... 3

概要 ............................................................................................................................................ 3

コスト ..................................................................................................................................... 4

アーキテクチャの概要 ........................................................................................................... 4

ソリューションコンポーネント ............................................................................................... 5

ソリューション API ............................................................................................................... 5

Amazon CloudWatch ダッシュボード................................................................................... 5

考慮事項 .................................................................................................................................... 6

注意 ......................................................................................................................................... 6

Amazon Rekognition .............................................................................................................. 7

類似度しきい値 .................................................................................................................. 7

登録用画像の準備 .................................................................................................................. 7

イベント用画像の準備 ........................................................................................................... 7

画像の保存 .............................................................................................................................8

処理のステータス ..................................................................................................................8

イベント時のセキュリティ....................................................................................................8

オペレーターの管理 ...............................................................................................................8

テスト ..................................................................................................................................... 9

テスト構成 .......................................................................................................................... 9

AWS CloudFormation テンプレート ........................................................................................ 9

自動デプロイ ............................................................................................................................. 9

前提条件 ................................................................................................................................. 9

ここでカバーする内容 ........................................................................................................... 9

ステップ 1.スタックを起動する .......................................................................................... 10

ステップ 2.イメージを Amazon S3 にアップロードする .................................................... 11

ステップ 3.アプリをダウンロードして設定する ................................................................ 12

ステップ 4.アプリを起動して実行する ............................................................................... 13

Page 3: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

3 / 16 ページ

セキュリティ ........................................................................................................................... 13

IAM ロール ........................................................................................................................... 13

暗号化 ................................................................................................................................... 14

その他のリソース .................................................................................................................... 14

付録 : 運用メトリクスの収集 .................................................................................................. 15

ソースコード ........................................................................................................................... 16

ドキュメントの改訂 ................................................................................................................ 16

このガイドについて この実装ガイドでは、アマゾン ウェブ サービス (AWS) クラウドに Auto Check-In App をデプロイする

ためのアーキテクチャ上の考慮事項と設定手順について説明します。これには、セキュリティと可用性

に関する AWS のベストプラクティスを使用してこのソリューションをデプロイするために必要な AWS

のサービスを起動および設定する AWS CloudFormation テンプレートへのリンクが含まれています。

このガイドは、AWS クラウドにおけるアーキテクチャの設計の実務経験がある IT インフラストラクチ

ャアーキテクト、管理者、DevOps プロフェッショナルを対象としています。

概要

イベントチェックインは、参加者と現地イベント会場で会う最初の接点であり、チェックインプロセス

を通して参加者にイベントに対する良い印象を与える最高の機会です。最適化されたチェックインのプ

ロセスは、長い待ち行列と参加者の混乱を軽減するのに役立ちます。これにより、参加者のエクスペリ

エンスが向上し、イベントの雰囲気も整います。

チェックインのプロセスを最適化する方法の 1 つに、セルフチェックインを使用してプロセスを自動化

する方法があります。セルフチェックインのキオスクとアプリを利用して、参加者は名前検索または

QR コードスキャンでチェックインし、バッジを印刷して、すばやくイベントに参加できます。ですが、

セルフチェックインでは、参加者が検索インターフェイスに名前を入力するか、QR コードを提示する

必要があるため、チェックインプロセスに時間がかかる場合があります。

顔認証では、名前を入力したり QR コードを提示したりする必要がないため、参加者はよりすばやく簡

単にチェックインできます。参加者はチェックイン時に写真を撮影し、事前に登録しておいた写真と比

較することで、ほんの数秒で顔のコレクションによる認識を行うことができます。

Page 4: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

4 / 16 ページ

Amazon Rekognition はフルマネージド型のサービスなので、アプリケーションにディープラーニング

による視覚分析を簡単に追加できます。Amazon Rekognition を使用すると、イベント参加者の検証を

含む、さまざまなユースケースを用いた顔認証ができます。

チェックインプロセスを簡単に自動化できるように、アマゾンウェブサービス (AWS) ではお客様に

Auto Check-In App を提供しています。このソリューションでは、イベント参加者がチェックインする

際の顔認証に必要な製品とサービスを自動的にプロビジョニングします。

コスト このソリューションの実行中に使用した AWS サービスのコストは、お客様の負担となります。公開時

点で、米国西部(オレゴン)リージョンでデフォルト設定でこのソリューションを実行するためのコス

トは、 1 時間あたり約 10 USD です。料金は変更される可能性があります。詳細については、このソリ

ューションで使用する AWS の各サービスの料金表ウェブページを参照してください。

アーキテクチャの概要 このソリューションをデプロイすると、AWS クラウドに以下の環境が構築されます。

図 1: Auto Check-In App のアーキテクチャ

AWS CloudFormation テンプレートが Amazon API Gateway、Amazon Cognito ユーザープール、AWS

Lambda 関数、Amazon DynamoDB テーブル、Amazon Rekognition、Amazon CloudWatch、および

Amazon Simple Storage Service (Amazon S3) バケットをデプロイします。

Page 5: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

5 / 16 ページ

参加者がイベントに登録する際に写真をアップロードすると、Amazon S3 バケットに保存されます。

Amazon S3 へのアップロードによって、Amazon Rekognition の IndexFaces API を呼び出す Lambda

関数がトリガーされます。Amazon Rekognition が顔の特徴を特徴ベクトルに抽出し、face_id を作成し

ます。次に、そのベクトルが顔のコレクションに保存され、 face_id と対応するユーザー名が

DynamoDB テーブルに保存されます。

イベントでは、オペレーターがこのソリューションの Python ベースの UI とカメラを使って参加者の写

真を撮影すると、写真がトリミングされ、Amazon API Gateway に送信されます。これによって、

Amazon Rekognition の SearchFacesByImage API を呼び出す Lambda 関数がトリガーされます。

Amazon Rekognition が画像から顔の特徴を特徴ベクトルに抽出し、そのベクトルを顔のコレクション

にあるベクトルと比較します。Amazon Rekognition が類似度の高い顔を見つけると、face_id を使って

ユーザー名が取得されます。ユーザー名がオペレーターのラップトップに送信され、参加者が認証され

たことを示します。

ソリューションコンポーネント

ソリューション API Auto Check-In App は、 このソリューションの RESTful API をホストするように Amazon API Gateway

を設定します。オペレーターは、付属の UI および RESTful API を通して安全にデータを操作できます。

この API は、Amazon DynamoDB に保存されたデータにアクセスするための「フロントドア」のように

動作します。また、API を使用して、このソリューションに独自に拡張機能を組み込むことも可能です。

このソリューションでは、Amazon Cognito ユーザープールのユーザー認証機能を利用して、このソリ

ューションを使用するオペレーターを管理します。オペレーターが正常に認証されると、Amazon

Cognito は、コンソールからこのソリューションの API(Amazon API Gateway エンドポイント)にリ

クエストの送信を許可する JSON のウェブトークンを発行します。HTTPS リクエストは、トークンを

含む認証ヘッダーとともに API に送信されます。

Amazon API Gateway は、リクエストに基づいて、適切な AWS Lambda 関数を呼び出し、DynamoDB

テーブルに保存されているデータに対して必要なタスクを実行します。

Amazon CloudWatch ダッシュボード このソリューションでは、デプロイのパフォーマンスをモニターするために使用できるダッシュボード

をオプションで提供しています。このダッシュボードでは、Amazon Rekognition の応答時間と成功数、

Amazon DynamoDB の正常なリクエストのレイテンシー、および Amazon API Gateway のレイテンシ

ーを含む、デプロイに関するカスタム運用の Amazon CloudWatch メトリクスを表示します。

Page 6: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

6 / 16 ページ

図 2: Amazon CloudWatch ダッシュボード

考慮事項

注意 このガイドでは、Auto Check-In App の開発とデプロイに関連するアーキテクチャおよび技術的な問題

にのみに焦点を当てています。法律やプライバシーの問題など、このユースケースに関連する可能性が

ある非アーキテクチャまたは技術的な考慮事項については取り上げていません。例えば、特定の地域で

は、生体情報の収集、保存、および処理に関する法律が制定されている場合があります。管轄区域の法

的要件を確認し、必要に応じて法的な助言を受ける必要があります。

また、商業的環境における顔認証の使用については、多数のプライバシーおよび透明性に関する考慮事

項があります。これらの問題に関する知識を深めて、アプリケーションの設計およびデプロイ時に考慮

するようにしてください。アプリケーションの仕組みと、アプリケーションによって収集されたデータ

の使用、保存、および保持方法に関する情報をエンドユーザーに提供して、アプリケーションの使用を

希望しないエンドユーザーには代替の検証オプションを提供することが推奨されます。詳細については、

次のリソースとベストプラクティスを参照してください。

Facing Facts: Best Practices for Common Uses of Facial Recognition Technologies

Privacy Best Practice Recommendations For Commercial Facial Recognition Use

Privacy Principles for Facial Recognition Technology in Consumer Applications

Page 7: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

7 / 16 ページ

Amazon Rekognition Amazon Rekognition では、ディープラーニングのモデルを使用して、顔検出の実行とコレクション内

での顔の検索を行います。お客様からのフィードバックとディープラーニング研究の向上により、ディ

ープラーニングのモデルの精度を改善し続けています。これらの改善は、モデルの更新としてリリース

します。

Auto Check-In App ソリューションを起動すると、作成された顔のコレクションにその時の最新バージ

ョンのモデルが関連付けられます。その後で新しいバージョンのモデルがリリースされたとしても、こ

のソリューションのコレクションには既に関連付けられているモデルが引き続き使用されます。詳細に

ついては、 Amazon Rekognition 開発者ガイドのモデルのバージョニングを参照してください。

類似度しきい値

このソリューションでは、類似度 (Similarity) しきい値を使用して、2 つの顔の類似度が高いかどうかを

判断します。このしきい値で、一致する顔との類似度に基づいて返される結果の数を制御します。この

しきい値を下回る場合はレスポンスを返しません。

このしきい値は 0~100 の値です。このしきい値のデフォルトは 99 です。 詳細については、Amazon

Rekognition 開発者ガイドのコレクション内の顔の検索を参照してください。

登録用画像の準備 イベント登録時に、チェックイン時に顔認証を使用したいイベント参加者が自分の顔の画像を送信でき

るようにします。参加者が画像を送信したら、その画像が正しくフォーマットされていることを確認し

ます。画像は .jpg、.jpeg、または .png 形式で、ファイル名はイベント中に使用したい名前にする必要

があります。例えば、 jeff.jpg または andy.png などになります。また、画像内は出席者の顔だけになっ

ていることを確認してください。詳細については、Amazon Rekognition 開発者ガイドの顔比較用の入

力イメージに関する推奨事項を参照してください。その後で、このソリューションの Amazon Simple

Storage Service(Amazon S3) バケットに写真をアップロードしてください。

イベント用画像の準備 最も正確な結果を得ることができるように、参加者の顔回りが十分に明るく、画像が 80x80 ピクセル以

上であることを確認してください。顔回りが十分明るくなるように、追加の照明を使用することをお勧

めします。詳細については、Amazon Rekognition 開発者ガイドの Amazon Rekognition における制限を

参照してください。

また、Amazon Rekognition からのレイテンシーを低減し、正しい顔を確実にインデックスするために、

Amazon API Gateway に顔の画像を送信する前にイベントで撮影した顔の画像をトリミングすることを

お勧めします。画像をトリミングすることで、応答時間を短縮し、画像から対象外の顔を削除できます。

詳細については、 Amazon Rekognition 開発者ガイドの Amazon Rekognition Image オペレーションの

レイテンシーを参照してください。

Page 8: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

8 / 16 ページ

対象外の顔をインデックスしないようにするために、このソリューションでは画像の中で最も大きい顔

をインデックスします。画像内にあるその他の顔はいずれもインデックスされません。

画像の保存 Amazon Rekognition が登録写真から顔の特徴を特徴ベクトルに抽出し、そのベクトルを顔のコレクシ

ョンに保存したら、Amazon S3 から登録写真を自動的に削除します。イベント時に撮影された写真は

保存されません。このソリューションは、処理が終わった顔の画像を保存しません。

処理のステータス このソリューションには、次のステータスが含まれます。

Stop here : 顔が検出されませんでした。

Checking : 顔が検出されました。顔のコレクション内で顔の比較をしています。

Welcome : 類似度の高い顔が見つかりました。

顔の画像を処理している間に、ステータスは Stop here から Checking に変わります。最初のデプロイ

時に定義したしきい値を超えた類似度の顔がある場合、ステータスは Welcome に変わります。このし

きい値を超える類似度の顔が見つからない場合、ステータスは Checking 状態のままになります。

イベント時のセキュリティ 追加のセキュリティ要件があるイベントにこのソリューションを使用する場合は、セキュリティの追加

レイヤーとして、チェックイン時に MFA (多要素認証) を使用することをお勧めします。例えば、顔の

一致に加えて、政府発行の ID を提示するように参加者に依頼します。

このソリューションでは、なりすまし防止や生体検知などは提供していません。ただし、このソリュー

ションをカスタマイズしてそれらの機能を追加することはできます。例えば、イベントの写真に加えて、

参加者に一時的に使用するコードを送信できます。また、チャレンジベースのワークフローを構築し、

参加者が笑ったり、頭を傾けたり、目を閉じたりする自然な動作を確認するなど、一連のランダム化さ

れたステップを実行することもできます。

オペレーターの管理 Auto Check-In App には、このソリューションの UI へのアクセスを許可するシェルスクリプトが含まれ

ています。この UI では、オペレーター (操作を行うユーザー) の管理を提供していません。オペレータ

ーを追加するには、付属のスクリプトをご利用ください。詳細については、 ステップ 3 を参照してくだ

さい。

Page 9: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

9 / 16 ページ

テスト イベントの前に、このソリューションの機能をテストすることをお勧めします。また、イベントではノ

ート PC とカメラを持ち込み使用することをお勧めします。

テスト構成

Auto Check-In App ではどんなノート PC、カメラ、およびモニターでも使用できますが、このソリュー

ションでは Apple MacBook Pro、LogiTech C920S ウェブカメラ、Dell P2419H を使用してテストして

います。モニターの設定をポートレートモードに変更し、カメラをモニターの上に置くことをお勧めし

ます。また、顔周りが十分明るくなるように、追加の照明を使用することをお勧めします。

AWS CloudFormation テンプレート

このソリューションでは、AWS CloudFormation を使用して、AWS クラウドへの Auto Check-In App の

デプロイを自動化します。このソリューションには次の AWS CloudFormation テンプレートが含まれて

おり、デプロイ前にダウンロード可能です。

auto-check-in-app.template: このテンプレートを使用して、Auto Check-In

App と関連するすべてのコンポーネントを起動します。デフォルト構成とし

て、Amazon API Gateway、Amazon Cognito ユーザープール、AWS Lambda

関数、Amazon DynamoDB テーブル、Amazon Rekognition、Amazon CloudWatch、および Amazon

Simple Storage Service (Amazon S3) バケットがデプロイされます。また、特定のニーズに基づいてテ

ンプレートをカスタマイズすることもできます。

自動デプロイ

自動デプロイを開始する前に、このガイドで説明されているアーキテクチャ、設定、およびその他の考

慮事項をよくお読みください。このセクションの手順に従って、AWS アカウントに Auto Check-In App

を設定してデプロイします。

デプロイ時間 : 約 5 分

前提条件 Auto Check-In App を起動する前に、AWS コマンドラインインターフェイス (AWS CLI) バージョン

1.16.243 、Python 3.7、および OpenCV 4.1.0 がインストールされている必要があります。

ここでカバーする内容 このアーキテクチャを AWS にデプロイする手順は、次のステップで構成されます。詳細な手順につい

ては、各ステップのリンクを参照してください。

テンプレートを表示

Page 10: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

10 / 16 ページ

ステップ 1.スタックを起動する

AWS アカウントで AWS CloudFormation テンプレートを起動します。

テンプレートのパラメータを確認し、必要に応じて調整します。

ステップ 2.イメージを Amazon S3 にアップロードする

参加者の顔画像をこのソリューションの Amazon S3 バケットにアップロードします。

ステップ 3.アプリをダウンロードして設定する

付属の UI をダウンロードして設定します。

ステップ 4.アプリを起動して実行する

参加者の写真を撮って、このソリューションでイメージと顔のコレクションを比較します。

ステップ 1.スタックを起動する この自動化された AWS CloudFormation テンプレートは、AWS クラウドに Auto Check-In App をデプ

ロイします。スタックを起動する前に、前提条件と考慮事項を確認してください。

注意: このソリューションの実行中に使用した AWS サービスのコストは、お客様の負担となり

ます。詳細については、コストセクションを参照してください。詳細については、このソリュ

ーションで使用する AWS の各サービスの料金表ウェブページを参照してください。

1. AWS マネジメントコンソールにサインインし、右側のボタンをクリ

ックして、auto-check-in-app の Amazon CloudFormation テンプ

レートを起動します。

独自にカスタマイズするためにテンプレートをダウンロードすることもできます。

2. このテンプレートは、デフォルトで米国西部 (オレゴン) リージョンで起動されます。別の AWS リ

ージョンでこのソリューションを起動するには、コンソールのナビゲーションバーのリージョンセ

レクターを使用します。

3. [スタックの作成] ページで、正しいテンプレート URL が [Amazon S3 URL] テキストボックスに示

されていることを確認し、[次へ]を選択します。

4. [スタックの詳細を指定] ページで、このソリューションのスタックに名前を割り当てます。

5. [パラメータ] で、テンプレートのパラメータを確認し、必要に応じて変更します。このソリューシ

ョンでは、次のデフォルト値を使用します。

ソリューション

の起動

Page 11: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

11 / 16 ページ

パラメータ デフォルト 説明

Log Level INFO AWS Lambda 関数のログレベルを選択します。

CRITICAL、ERROR、WARNING、INFO、DEBUG、

または NOSET から選択します。

RegistrationBucketNamePrefix auto-check-in-

app-register

登録時に顔画像をアップロードして保存する

Amazon S3 バケットの名前。

RekognitionCollectionName auto-check-in-

app-face-

collection

Amazon Rekognition の顔のコレクションの名前。

RekognitionFaceSimilarityThreshold 99 撮影された顔画像と事前登録された顔画像の類似度

を決定する 0 ~ 100 の値を指定します。

6. [次へ] を選択します。

7. [スタックオプションの設定] ページで、[次へ] を選択します。

8. [レビュー] ページで、設定を見直して確認します。テンプレートが AWS Identity and Access

Management (IAM) リソースを作成することを確認するチェックボックスを必ずオンにします。

9. [スタックの作成] を選択してスタックをデプロイします。

スタックのステータスは、AWS CloudFormation コンソールの [ステータス] 列で表示できます。約

5 分で [CREATE_COMPLETE] のステータスが表示されます。

注意 : 主要な AWS Lambda 関数に加えて、このソリューションには auto-check-in-app-

CreateCollection Lambda 関数が含まれています。この関数は初期設定時、リソースの更新

または削除時にのみ実行されます。

このソリューションを実行すると、auto-check-in-app-CreateCollection 関数は非アク

ティブになります。ただし、関連付けられたリソースを管理する必要があるため、この関数を

削除しないでください。

ステップ 2.イメージを Amazon S3 にアップロードする

注意 : イベント前にこのソリューションをテストすることをお勧めします。

このソリューションの Amazon Simple Storage Service(Amazon S3) バケットへの画像アップロードを

開始する前に、画像を準備するためのガイドラインを確認してください。

任意のツールを使用して、このソリューションが作成した Amazon S3 バケットに参加者が事前登録し

た画像をアップロードしてください。デフォルト設定のままで使用する場合は、Amazon S3 バケット

名は、auto-check-in-app-register-<region>-<account-id> になります。デフォルト名を変

更した場合は、スタックの [出力] タブで Amazon S3 バケット名を確認できます。Amazon S3 バケット

名は RegistrationBucketName キーの値になります。

Page 12: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

12 / 16 ページ

写真が正常にアップロードされると、顔の特徴は自動的に特徴ベクトルに抽出され、Amazon

Rekognition の顔のコレクションに追加されます。特徴ベクトルが追加されると、元の写真は Amazon

S3 バケットから自動的に削除されます。

ステップ 3.アプリをダウンロードして設定する この手順を使用して、付属の UI をダウンロードして設定します。

1. イベント中に使用するノート PC で、任意のディレクトリで次のコマンドを実行し、GitHub からア

プリケーションソースコードをクローンします。

$ git clone https://github.com/awslabs/auto-check-in-app.git

2. コードのクローンが作成されたら、 auto-check-in-app/source/frontend ディレクトリに移

動します。

3. 次のコマンドを実行します。

chmod +x register-operator.sh

4. 次のコマンドを実行します。

./register-operator.sh <オペレーターの E-mail アドレス>

注意 : スクリプトで該当する AWS リージョンと AWS CloudFormation のスタック名を指定しま

す。

5. パスワードを入力します。

6. default.env.json ファイルを開き、env.json にコピーします。

7. 該当する値でファイルを変更します。

注意 : スタックの [出力] タブで該当する値を見つけることができます。

次の表に、該当する出力キーと値を示します。

キー 値 説明

Region <region> スタックを起動した AWS リージョン

API Endpoint <rest-api-id>.execute-api.

<region>.amazonaws.com/prod/recognize_face

REST API ID を 含 む Amazon API

Gateway エンドポイント名

Cognito User

Pool ID

<region>_<ID> Amazon Cognito ユーザープール ID

Page 13: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

13 / 16 ページ

キー 値 説明

Cognito User

Pool Client ID

<client ID> Amazon Cognito ユーザープールのクラ

イアント ID

ステップ 4.アプリを起動して実行する この手順を使用して、Auto Check-In App を起動し、顔認証を開始します。

1. Auto Check-In App を起動するには、次のコマンドを実行します。

$ python main.py

2. プロンプトが表示されたら、ユーザー名とパスワードを入力します。

3. 組み込みのカメラまたは USB カメラを使用して、参加者の顔の写真を撮ります。イメージの処理中

に、ステータスは Stop here(顔が検出されませんでした)、Checking(顔が検出されました。

顔のコレクション内で顔の比較をしています)、Welcome(類似度の高い顔が見つかりました)の

順に切り変わります。

注意 : ステータスが Welcome に変わったら、デフォルトで 10 秒ほど Checking の状態に戻り

ます。これにより、同じ参加者の認証情報が繰り返し伝わることを回避します。この時間を変

更するには、env.json ファイルの VisibilityTimeout パラメータを変更してください。

画像を撮影すると、顔検出と認識結果を示すウィンドウが開きます。

{'result': 'OK', 'name': '<ユーザ名>', 'similarity': 99.71908569335938} {'result': 'OK', 'name': '<ユーザ名>', 'similarity': 99.79707336425781} {'result': 'OK', 'name': '<ユーザ名>', 'similarity': 99.7418441772461}

セキュリティ

AWS インフラストラクチャでシステムを構築する場合、セキュリティ上の責任はお客様と AWS の間で

共有されます。この共有モデルにより、AWS がホストオペレーティングシステムおよび仮想化レイヤ

ーからサービスが運用されている施設の物理的なセキュリティに至るまでのコンポーネントを運用、管

理、およびコントロールするため、お客様の運用上の負担を軽減することができます。AWS のセキュ

リティの詳細については、AWS クラウドセキュリティを参照してください。

IAM ロール AWS Identity and Access Management(IAM) ロールにより、AWS のサービスとユーザーに対してアク

セスポリシーとアクセス許可を詳細に割り当てることができます。このソリューションでは、いくつか

の IAM ロールが作成されます。それには、このソリューションの AWS Lambda 関数にこのソリューシ

ョンで使用する他のサービスへのアクセスを許可するロールが含まれます。

Page 14: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

14 / 16 ページ

暗号化 Auto Check-In App では、転送中のデータに SSL/TLS 暗号化を使用する HTTPS を利用します。このソ

リューションの Amazon Simple Storage Service(Amazon S3) バケットと Amazon DynamoDB テーブル

では、サーバーサイドの暗号化がデフォルトで有効になっており、保管中のデータを暗号化しています。

詳細については、Amazon S3 開発者ガイドのサーバー側の暗号化を使用したデータの保護と、Amazon

DynamoDB 開発者ガイドの保管時の DynamoDB の暗号化を参照してください。

その他のリソース

AWS のサービス

Amazon Rekognition

AWS Lambda

Amazon DynamoDB

Amazon Simple Storage Service

Amazon API Gateway

Amazon CloudWatch

Amazon Cognito

AWS CloudFormation

その他のリソース

Facing Facts: Best Practices for Common Uses of Facial Recognition Technologies

Privacy Best Practice Recommendations For Commercial Facial Recognition Use

Privacy Principles for Facial Recognition Technology in Consumer Applications

Page 15: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

15 / 16 ページ

付録 : 運用メトリクスの収集

このソリューションには、匿名の運用メトリクスを AWS に送信するオプションが含まれています。当

社はこのデータを使用して、お客様がこのソリューション、関連サービスおよび製品をどのように使用

しているかをよりよく理解し、提供するサービスや製品の改善に役立てます。有効にすると、次の情報

が収集され、AWS に送信されます。

Solution ID: AWS ソリューション識別子

Unique ID (UUID): ソリューションのデプロイごとにランダムに生成された一意の識別子

Timestamp : データ収集タイムスタンプ

Similarity Value : Amazon Rekognition の SearchFacesByImage API によって返される類似度

Request Image Size : 登録と検索に使用するイメージのサイズ

Response Time and Request Latency : ソリューションがリクエストに応答するまでにかかる

時間

このオプションで収集されたデータは AWS に帰属します。 データ収集には、AWS プライバシーポ

リシーが適用されます。この機能をオプトアウトするには、次のように AWS CloudFormation テン

プレートマッピングセクションを変更します。

Mappings:

Metrics:

Send-Data:

SendAnonymousData: "Yes"

を以下に変更します。

Mappings:

Metrics:

Send-Data:

SendAnonymousData: "No"

Page 16: Auto Check-In App€¦ · アマゾンウェブサービス - Auto Check-In App 2020 年 1 月 6 / 16 ページ 図 2: Amazon CloudWatch ダッシュボード 考慮事項 注意

アマゾンウェブサービス - Auto Check-In App 2020 年 1 月

16 / 16 ページ

ソースコード

GitHub リポジトリにアクセスして、このソリューションのテンプレートとスクリプトをダウンロード

し、カスタマイズを他のユーザーと共有できます。

ドキュメントの改訂

日付 変更

2020 年 1 月 初回リリース

注意

お客様は、この文書に記載されている情報を独自に評価する責任を負うものとします。このドキュメント

は、(a) 情報提供のみを目的としており、(b) AWS の現行製品とプラクティスを表したものであり、予告なし

に変更されることがあり、(c) AWS およびその関連会社、サプライヤー、またはライセンサーからの契約義

務や確約を意味するものではありません。AWS の製品やサービスは、明示または暗示を問わず、いかなる

保証、表明、条件を伴うことなく「現状のまま」提供されます。お客様に対する AWS の責任は、AWS 契約

により規定されます。本書は、AWS とお客様の間で行われるいかなる契約の一部でもなく、そのような契

約の内容を変更するものでもありません。

Auto Check-In App は、https://www.apache.org/licenses/LICENSE-2.0 で閲覧可能な Apache ライセンスバー

ジョン 2.0 の条項に基づいてライセンスされます。

© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.