Amazon Cognitoの簡単な使い方

最終更新日:2026年8月10日

この記事でわかること

はじめに

項目 AWS Microsoft Azure Google Cloud
世界シェア 約33%(首位) 約22% 約11%
強み サービス数・実績 Microsoft製品連携 データ分析・AI
無料枠 12ヶ月+常時無料 12ヶ月無料 常時無料枠あり
主な資格 CLF / SAA / SAP AZ-900 / AZ-104 ACE / PCA

AWSのサービスの一つであるAmazon Cognitoの特徴や機能について、基盤となる部分ならびに必ず操作が必要な設定を解説します。読み方は”アマゾン コグニート”と読み、”匿名の”という意味でincognito(インコグニート)の反対の意味を持たせた造語であると言われています。その意味は”個人を認識する”といった認識で良いのではないでしょうか。

本記事はシンプルでセキュアな機能が学べます。ぜひ最後までご一読いただき、アプリケーションの安全性を容易に高めるための手助けとなれば幸いです。

Amazon Cognitoとは?

Webアプリケーションやモバイルアプリケーションの認証と許可、ユーザーの管理をサポートしています。ユーザーはユーザー名とパスワードを使ったログインか、よく使われている例だとFacebookやGoogle、Appleなどのサードパーティーを通してログインが可能です。

Amazon Cognitoの主となるコンポーネントは2つで、ユーザープールと IDプールです。ユーザープールはアカウント登録とログインの認証情報をアプリ内部のユーザーディレクトリの領域に保存して、その情報を使用して認証を行う機能です。IDプールはAWSにおける他サービスに対してアクセスする権限をユーザーに許可します。各コンポーネントは別で使ったり一緒に使ったりすることが可能です。

Amazon Cognitoはローカルのデータストアとクラウドのデータストアの同期機能を備えています。オフラインでも動作可能なクラウド対応のモバイルアプリケーションを構築可能です。また、データの同期は同一ユーザーであれば複数のデバイスにもされるので、スマートフォンでやっていたゲームの続きを自宅のタブレットでも楽しむといったことも可能になります。

各コンポーネントの詳細

ユーザープール

アプリユーザーはAmazon Cognito からWebやスマホアプリにログインするかサードパーティーのIDプロバイダー(IdP)を通して連携が可能です。ユーザーがログインするかにかかわらず、ユーザープールの全メンバーにソフトウェア開発キットを通じてアクセス可能なディレクトリプロファイルがあります。

IDプール

ユーザーは一時的なAWS認証情報を取得し、AmazonS3やDynamoDBなどのAWSサービスにアクセスが可能です。匿名ゲストユーザーとIDプールのユーザーを認証するのに利用できる次のIDプロバイダーをサポートします。

  • Amazon Cognito ユーザープール
  • FacebookやGoogle等のソーシャルログイン
  • OpenID Connect (OIDC) プロバイダ
  • SAML ID プロバイダー
  • 開発者が認証した ID

Amazon Cognitoでできること

ユーザープールは数億人といったユーザー規模で安全なユーザーディレクトリを作ることができ、フルマネージドサービスではサーバーインフラストラクチャを気にすることなく容易にセットアップ可能です。直接アカウント登録するユーザーやソーシャルIDプロバイダーおよびエンタープライズIDプロバイダーを利用してログインするフェデレーティッドユーザーにユーザープロファイルと認証トークンを提供します。

またAmazon Cognitoにはユーザーのアカウント登録とログインのためのカスタマイズができる組み込みUIが用意されています。Android、iOS、JavaScript SDKを使用してユーザーのアカウント登録ならびにログインページをアプリケーションに追加することができ、高度なセキュリティ機能を使うとアプリケーション内部のユーザーアカウントへのアクセス保護が可能となります。アドバンスドセキュリティ機能はリスクにもとづいたアダプティブ認証および不正の対象となった認証情報に対し、保護を提供します。数回のクリックでユーザープールの高度なセキュリティ機能を有効にすることができるのです。

各コンポーネントの作成方法、使い方

【要注意】
AWSマネジメントコンソールのAmazon Cognito画面は、本記事執筆時点以降にUI刷新が行われており、メニュー名や画面構成が以下の手順と異なる場合があります。実際の作業前には、AWS公式ドキュメントで最新の画面・手順をあわせてご確認ください。

ユーザープールの作成

  1. 初めにユーザープールを作ります。AWSコンソールにログイン、続いてサービスより”Cognito”を検索します。その後、”ユーザープールの管理”を押下します。
  2. 続いて、”ユーザープールを作成する”を押下し、作成画面が表示されたら任意のプール名を入力、その後で”デフォルトを確認する”を押下します。
  3. サイドメニューより”属性”を表示し、ユーザープロファイルで管理対処の属性を選びます。エンドユーザーのログイン方法は初期状態では”ユーザー名”が選択されているので、他の属性もお好みでカスタマイズ可能です。ユーザープールの作成後に新たに属性を追加することはできないので、この時点で仕様を決めておきましょう。
  4. 追加したい属性が選択できたら”次のステップ”を押下します。続いて、ポリシーの設定です。パスワードの強度等の設定をできたら、”変更の保存”を押下します。
  5. サイドメニューより”アプリクライアント”を表示し、”アプリクライアントの追加”リンクを押下します。それぞれ必要項目を記入し、”アプリクライアントの作成”を押下します。このとき、”クライアントシークレットを生成”のチェックを外すことに気を付けてください。JavaScriptからAmazon Cognitoを使った認証をする際にうまくいかなくなります。
  6. 次に、サイドメニューから”確認”を表示し、”プールの作成”を押下します。プールが正常に作られたらプールIDが発行されるので記録してください。また、アプリクライアントIDも発行されるため記録しておきましょう。アプリクライアントIDは、サイドメニューの”アプリクライアント”を表示すると確認できます。

以上でユーザープールの作成完となります。

IDプールの作成

  1. 画面上に表示されている”フェデレーティッドアイデンティティ”を押下し、表示された”新しいIDプールの作成”を押下します。
  2. IDプールの作成画面にて必要項目を記入します。
  3. “プールの作成”を押下し、表示された画面の”詳細を表示”を押下すると、ロールの情報を確認できます。設定は初期状態のままで結構です。”許可”を押下してください。
  4. “IDプールのID”(IdentityPoolId)を確認することができるのでこちらを記録しておいてください。

以上でIDプール作成完了です。

学習方法

最後に、AWSの学習方法についてご紹介です。書籍などを購入して独学で学習するのもいいですが、WebinarやAWSパートナー企業主催のセミナーならびにIT勉強会(「Connpass」等の勉強会サイト)があります。無料でも学習はできるため、オススメは「Connpass」で開催しているオンライン勉強会であればハードルが低いのではないでしょうか。

こういったいろいろな学習の機会を活用して、AWSのスペシャリストを目指してみてください。

押さえておきたいポイント

  • Amazon Cognitoは「ユーザープール(認証・ユーザー管理)」と「IDプール(AWSサービスへの一時的なアクセス権限付与)」という役割の異なる2つのコンポーネントで構成されており、目的に応じて単独でも組み合わせても利用できる。
  • ソーシャルログインやSAML/OIDCなど複数のIDプロバイダーに対応しているため、自前でパスワード管理の仕組みを一から実装しなくても、セキュアな認証基盤を短期間で構築できる。
  • AWSコンソールの操作手順は継続的にアップデートされるため、実際の設定作業前には必ずAWS公式ドキュメントで最新の画面・メニュー名を確認する。

よくある質問

Amazon CognitoとAWS IAMの違いは何ですか?

Amazon Cognitoは自社アプリケーションのエンドユーザー(顧客)向けの認証・認可サービスです。一方でAWS IAM(Identity and Access Management)は、AWSリソースを操作するAWSアカウント内部の管理者や開発者向けのアクセス制御サービスであり、対象とするユーザー層と用途が異なります。

ユーザープールとIDプールは必ず両方作成する必要がありますか?

必須ではありません。ログイン機能のみが必要であればユーザープールのみで完結しますし、既に他の認証基盤があり、S3やDynamoDBなどAWSサービスへの一時的なアクセス権限だけが必要な場合はIDプールのみを利用することも可能です。要件に応じて選択してください。

Amazon Cognitoの料金体系はどうなっていますか?

月間アクティブユーザー数(MAU)に応じた従量課金が基本ですが、無料利用枠や料金体系は変更されることがあります。最新の料金はAWS公式サイトでご確認ください。

まとめ

AWSの認証・認可のシステムはこのほかにIdentity and Access Management (IAM)やDirectory Service、AWS IAM Identity Center(旧AWS Single Sign-On、2022年に改称)等もございますが、今回はAmazon Cognitoの基礎とプールの作成方法を紹介させていただきました。手順も多くはなく、比較的簡単な印象だったのではないでしょうか。より高度なセキュリティの導入でなければ無料での利用もできるため、実際に使ってみてください。

本記事を作業時に活用してくだされば幸いです。最後まで閲覧ありがとうございました。

▼ アクロビジョンについて

👔

一緒に働きましょう

一人ひとりのキャリアに向き合い、
活躍できる現場をご紹介します。

採用サイトを見る →
💻

システム開発のご依頼・ご相談

コンサルティングから運用保守まで、
ワンストップで対応します。

まずはお気軽にご相談ください →