前書き
AWS Cogniteについて調査した内容のまとめです。AWSの丁寧な説明をかなり省略して記述しています。
AWS Cognite の概要
アプリケーションの認証、許可、ユーザー管理をサポートしています。当然ですが、AWSのIAMのユーザー管理とは別です。
認証と許可の仕組み(ユーザープールとIDプール)
- ユーザープール
- ユーザー情報の管理と認証
- IDプール
- AWSのサービスへの許可
その他の機能
- Amazon Cognito Sync
- ユーザーデータのデバイス間の同期
- Amazon Cognitoのモニタリング
-
- Amazon Cloud Watchメトリクス
- リアルタイム監視
- AWS CloudTrail
- ロギング
- 新規ユーザー登録およびログインの機能。
- ログインなどのカスタマイズ可能なウェブ UI。
- Facebook、Google でソーシャルサインイン、Login with Amazon、Sign in with Apple、ユーザープールから SAML ID プロバイダーでサインイン。
- ユーザーディレクトリとユーザープロファイルの管理。
- 多要素認証 (MFA) などのセキュリティ機能、漏洩した認証情報のチェック、アカウントの乗っ取り保護、電話と E メールによる検証。
- カスタマイズされたワークフローと AWS Lambda トリガーによるユーザー移行。
認証方式
大きく分けて2つの方法を選べる。(ユーザープール作成時点で選ぶ。後から変更することはできない。よくよく設計する必要がある)
- ユーザー名
- Eメールアドレスおよび電話番号
属性
ユーザーの属性として次のものが用意されている。これらはオプション扱いだが、必要に応じて必須にすることも可能
属性 | 属性 | 属性 |
---|---|---|
address | locale | preferred_username |
birthdate | middle_name | profile |
name | updated_at | |
family_name | nickname | website |
gender | phone_number | zoneinfo |
given_name | picture |
カスタム属性
ポリシー
次のことを設定できます。
- パスワードの強度
- 管理者のみがユーザーを作成できる/ユーザーが自分で作成できる
MFAそして確認
- 多要素認証(MFA)を有効にするか
- ユーザーがパスワードを忘れたとき場合の回復方法
メッセージのカスタマイズ
アプリ向けメールの送信用に Amazon SES を使用する。その設定。要調査
デバイス
デバイスを記憶するオプション。
- 常に
- User Opt In
- いいえ
アプリクライアント
ユーザープールをアクセスできる、アプリケーションを登録できる。認証フローも登録。
トリガー
認証前に決まった処理を行うなど、AWS Lambdaを使用したカスタマイズができます。
全般設定
ユーザーとグループ
- ユーザーを作成
- ユーザーの一覧/参照
- ユーザーをcsvでインポート。csvのヘッダをダウンロードできる
- グループを作れる/ユーザをグループに設定できる
アドバンストセキュリティ
追加料金が発生する場合がある。
メッセージのカスタマイズ
メールの設定。Amazon SES
分析
Amazon Pinpointでユーザーを分析。キャンペーンを作成できる。追加料金。
アプリの統合
工事中!
フェデレーション
Facebook, Google といったプロバイダ経由のログイン設定。
YahooやRakutenは,直接はなさそう。規格に沿っていればできるのかな。要調査。