ID 管理
自己登録
顧客がお客様のサイトで最初に体験するのは、多くの場合、自己登録のプロセスを通じてです。Amazon Cognito は、カスタマイズ可能なプリパッケージのホスト型ユーザーインターフェイスを提供し、迅速に市場に参入できるほか、完全なカスタム自己登録ソリューションを構築するための堅牢な API セットも提供します。ユーザーは、E メール、電話番号、またはユーザー名を使用してアプリケーションにサインアップできます。自己登録プロセスでは、ユーザーはカスタム属性を含むプロファイルデータの表示と更新が可能です。SMS メッセージや E メールによるパスワードリセットなど、セルフサービスオプションにより、ヘルプデスクへの問い合わせを削減できます。
ID ストア (Amazon Cognito ユーザープール)
Amazon Cognito には、数百万人のユーザーに拡張できる安全な ID ストア (ユーザープール) が用意されています。ユーザープールは、直接サインアップするユーザーと、外部 ID プロバイダーでサインインするフェデレーションユーザーのユーザープロファイルデータを安全に保存します。
Amazon Cognito の ID ストアは、API ベースのユーザーリポジトリです。このリポジトリと API は、ユーザーごとに最大 50 のカスタム属性の保存、さまざまなデータ型のサポート、および長さの制約と変更できるかどうかの制約の適用をサポートしています。サインアッププロセスの完了前にユーザーが指定する必要がある必須属性を選択します
移行オプション
ユーザーは、バッチインポートまたはジャストインタイム (JIT) 移行を使用して Amazon Cognito に移行できます。バッチによるユーザーの移行では、CSV ファイルによるインポートプロセスを使用します。JIT 移行プロセスを使用すると、AWS Lambda トリガーによって移行プロセスがサインインワークフローに統合され、ユーザーのパスワードを保持できます。
マルチテナンシーとテナントの分離
Amazon Cognito では、マルチテナントがサポートされた B2B のやり取りが可能です。アプリケーションの統合、アクセスとパスワードのポリシー、完全なテナントの分離の適用を再利用することもできます。
ユーザー認証
カスタマイズ可能な UI
Amazon Cognito には、ユーザーのサインアップとサインインのためのカスタマイズ可能な組み込み UI が用意されています。Amazon Cognito 向けの Android、iOS、JavaScript SDK を使用して、ユーザーのサインアップページやサインインページをアプリケーションに追加できます。
多要素認証 (MFA)
Amazon Cognito ユーザープールで MFA を有効にして、さらに顧客のセキュリティを強化できます。ユーザーは、SMS や、Google Authenticator などの タイムベースドワンタイムパスワード (TOTP) ジェネレータを使用して自分の ID を確認できます。Amazon Cognito は、異なるユーザーのプールに異なるパスワードルールを設定することをサポートしています。
フェデレーション
Amazon Cognito はフェデレーションハブとして、Apple、Facebook、Google、Amazon などのソーシャル ID プロバイダーや、SAML や OIDC などのエンタープライズ ID プロバイダーを経由したユーザーのログインを可能にします。Amazon Cognito は、標準をベースとした ID プロバイダーです。ユーザーは、(ローカル認証または外部フェデレーションによって) Amazon Cognito にログインすると、OAuth/OIDC を使用してフェデレーションされたリソースにアクセスできるようになります。
カスタム認証
Amazon Cognito ユーザープールでは、Lambda 関数を使用して 1 つ以上のチャレンジ - レスポンスサイクルに基づいてユーザーを認証する、カスタム認証フローを構築できます。このフローを使用して、カスタムチャレンジに基づくパスワードレス認証を実装することも、追加の要素としてカスタムチャレンジを使用することもできます。
Lambda トリガーを使用したユーザープールワークフローのカスタマイズ
Lambda トリガーを使用して、認証とサインアップの前後、またはトークン発行前などのユーザーライフサイクルステージなどで、Cognito の動作をカスタマイズできます。Lambda トリガーを使用して、さまざまな段階でユーザーに送信されるメッセージをカスタマイズしたり、サードパーティのメールや SMS プロバイダーと統合したりすることもできます。
アクセスコントロール
アプリケーションとのラストマイル統合
Amazon Cognito は、アプリケーションとの統合のラストマイルを保護します。Amazon Application Load Balancers (ALBs) と Amazon API gateways には、Amazon Cognito のトークンとスコープに基づいたアクセスを提供するポリシーエンフォースメントポイントが組み込まれています。
AWS リソースへのアクセス
Amazon Cognito の ID プールとしても知られている Amazon Cognito の認証情報ブローカーは、Amazon DynamoDB、Amazon S3 バケット、Lambda サーバーレスコンポーネントやその他の Amazon サービスなどの AWS リソースへの Single Sign-On アクセスを提供します。サービスに対する最小特権アクセスをサポートするために、ユーザーを異なるロールに動的にマッピングすることができます。
マシンツーマシン認証
OAuth クライアント認証情報フローを使用して、Amazon Cognito はマシンツーマシン認証を提供し、アプリケーションコンポーネント間の安全なエクスペリエンスを確保します。
カスタマーエクスペリエンス
カスタマーアウトリーチ
データ駆動型のアプローチで、顧客獲得と維持を促進します。顧客アウトリーチキャンペーンを開始し、Amazon Pinpoint でエンゲージメントを追跡します。Amazon Pinpoint は、Amazon Cognito ベースのユーザーアクティビティを分析し、Amazon Cognito は Pinpoint キャンペーンのためにユーザーデータをエンリッチ化します。
ビジネスの俊敏性を高める
AWS Amplify は、フロントエンドのウェブ/モバイルデベロッパーが AWS でフルスタックアプリケーションをすばやく簡単に構築できるようにする一連の専用ツールと機能であり、ユースケースの進化に合わせて幅広い AWS のサービスを活用できる柔軟性を備えています。Amplify を使用すると、Amazon Cognito でウェブまたはモバイルアプリケーションのバックエンドを設定し、数分の内にアプリケーションを接続して、ウェブフロントエンド UI を視覚的に構築できます。さらに、AWS コンソールの外部で簡単にアプリケーションコンテンツが管理できます。クラウドの専門知識がなくても、より速く、簡単に拡張できます。
拡張性
CIAM ソリューションはカスタムソリューションです。Amazon Cognito には、認証、登録、およびユーザー移行フローを完全にカスタマイズするための堅牢な一連のフックと拡張機能が用意されています。例えば、自己登録フローは、カスタム ID 証明とアカウント検証チェックで補強でき、ログインプロセスは、カスタム認証フローを作成したり、トークンを生成する前に修正したりするために拡張できます。
Amazon Cognito SDK は、Java、C++、PHP、Python、Golang、Ruby、.NET、および JavaScript を使用して利用可能です。
セキュリティ
AWS WAF によるウェブの脆弱性からの保護
Amazon Web Application Firewall (AWS WAF) との連携により、Amazon Cognito には高度なボット検出機能が備わっているので、組織が自動アカウントについて課金されないようにできます。
セキュリティ侵害を受けた認証情報の保護
Amazon Cognito は、ユーザーのサインアップ、サインイン、パスワード変更の際に、セキュリティ侵害を受けた認証情報の再利用をリアルタイムで検出し、防止することができます。他でセキュリティ侵害を受けた認証情報を入力していることが Amazon Cognito で検出されると、パスワードの変更を促されます。
コンプライアンス
Amazon Cognito は複数のセキュリティおよびコンプライアンス要件に適合しており、厳しい規制のある医療関連の企業や事業者などの組織にも対応できます。Amazon Cognito は HIPAA に準拠し、PCI DSS、SOC、ISO/IEC 27001、ISO/IEC 27017、ISO/IEC 27018、ISO 9001 に適合しています。
リスクベースのアダプティブ認証
アダプティブ認証により、ユーザーのアカウントを保護し、サインインエクスペリエンスを向上させます。Amazon Cognito で、新しい場所やデバイスからの試行など通常とは異なるサインインアクティビティが検出されると、そのアクティビティにリスクスコアが割り当てられます。それによって、ユーザーに対して追加の証明を求めるか、そのサインインリクエストをブロックするかを選択できます。