2021年12月17日(金曜日)
AWSが提供する認証機能サービスのひとつ、Amazon cognitoについて勉強会を開催しました。
■概要
概要紹介から、Amazon cognito、JavaScriptを利用した認証機能を実装・解説。
■Amazon cognitoとは
・Webアプリケーションやモバイルアプリケーションに
認証機能を提供するAWSのサービス
・AWSにいくつかある認証機能の中でも
「不特定多数の一般ユーザーの認証・管理」を行うことができる
構成要素は主に2つ
①ユーザープール
・ユーザー認証とユーザー管理を行う
②IDプール
・ユーザー認可を行う
■ユーザープールの特徴
・デフォルトで2千万件のユーザーを作成できる
・外部IDプロバイダーと連携した認証が可能(シングルサインオン)
・組み込みUIが用意されているので使用しやすい
*日本語対応していない
・サーバーレスで認証ができるので、
SPAやAPIベースで動くモバイルのようなものにも対応できる
・SMSを使った多要素認証 (MFA)
■ユーザープールを使うための設定方法(AWSコンソールでの設定)
・Amazon cognitoのコンソール画面で
[ユーザープールの管理]を選択
・[ユーザープールの作成]→プール名を入力
→[ステップに従って設定する]
・普通のログイン機能での、必要最低限の設定は
「属性」と「アプリクライアント」
◎属性
どの項目を使ってサインインするか
(後から編集不可能なのでしっかり検討してからの作成が良い)
属性の必須項目の設定、カスタム属性の追加など
◎アプリクライアント
ログイン画面を作成するプログラムを特定するための設定
アプリクライアントを作るとIDが発行されるという流れ
■JavaScriptを使用した認証機能実装
画面
・ユーザー登録画面
・メールアドレス認証画面
・ログイン画面
JavaScriptのSDKを使う際に必要なのでダウンロード
・aws-cognito-sdk.min.js
・aws-sdk.min.js
・amazon-cognito-identity.min.js
■概要
概要紹介から、Amazon cognito、JavaScriptを利用した認証機能を実装・解説。
■Amazon cognitoとは
・Webアプリケーションやモバイルアプリケーションに
認証機能を提供するAWSのサービス
・AWSにいくつかある認証機能の中でも
「不特定多数の一般ユーザーの認証・管理」を行うことができる
構成要素は主に2つ
①ユーザープール
・ユーザー認証とユーザー管理を行う
②IDプール
・ユーザー認可を行う
■ユーザープールの特徴
・デフォルトで2千万件のユーザーを作成できる
・外部IDプロバイダーと連携した認証が可能(シングルサインオン)
・組み込みUIが用意されているので使用しやすい
*日本語対応していない
・サーバーレスで認証ができるので、
SPAやAPIベースで動くモバイルのようなものにも対応できる
・SMSを使った多要素認証 (MFA)
■ユーザープールを使うための設定方法(AWSコンソールでの設定)
・Amazon cognitoのコンソール画面で
[ユーザープールの管理]を選択
・[ユーザープールの作成]→プール名を入力
→[ステップに従って設定する]
・普通のログイン機能での、必要最低限の設定は
「属性」と「アプリクライアント」
◎属性
どの項目を使ってサインインするか
(後から編集不可能なのでしっかり検討してからの作成が良い)
属性の必須項目の設定、カスタム属性の追加など
◎アプリクライアント
ログイン画面を作成するプログラムを特定するための設定
アプリクライアントを作るとIDが発行されるという流れ
■JavaScriptを使用した認証機能実装
画面
・ユーザー登録画面
・メールアドレス認証画面
・ログイン画面
JavaScriptのSDKを使う際に必要なのでダウンロード
・aws-cognito-sdk.min.js
・aws-sdk.min.js
・amazon-cognito-identity.min.js