Amazon Cognito の認証と認可を、ウェブアプリケーションとモバイルアプリケーションに統合する - Amazon Cognito

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Cognito の認証と認可を、ウェブアプリケーションとモバイルアプリケーションに統合する

アプリケーションを Amazon Cognito アプリケーションクライアントと統合すると、ユーザーの認証と認可のためのAPIオペレーションを呼び出すことができます。Amazon Cognito AWS Amplifyをウェブおよびモバイルアプリと統合するために を使用することをお勧めします。 AWS Amplify は、フロントエンドのウェブおよびモバイルデベロッパーが でフルスタックアプリケーションを簡単に構築、接続、ホストできる完全なソリューションです。また AWS、ユースケースの進化 AWS のサービス に合わせて の幅を柔軟に活用できます。Amplify Auth は、主に Amazon Cognito を使用して認証機能を構築します。

Amazon Cognito の一般的な実装では、ビジュアルツールと が混在していますAPIs。Amazon Cognito コンソールは、Amazon Cognito ユーザープールとアイデンティティプールを設定および管理するためのビジュアルインターフェイスです。ホストされた UI は、 ready-to-useAmazon Cognito ユーザープールをすばやくテストしてデプロイするためのウェブベースのサインインアプリケーションです。さらに、ほとんどの Amazon Cognito デプロイでは、ユーザープールやアイデンティティプールを操作するコードをアプリケーションに追加する必要があります。例えば、アプリケーションは、ホストされた UI を呼び出してユーザーのサインインを行い、次にアプリケーションコードからトークンエンドポイントを呼び出して、ユーザーの認可コードをトークンと交換する場合があります。この場合、アプリケーションはユーザーのトークンを解釈して保存し、認証と認可のための適切なコンテキストでトークンを提示する必要があります。Amplify は、これらのプロセス用の組み込み機能を備えたガイド付き統合ツールを追加します。

Amazon Cognito リソースをすべてコードで構築することもできます。独自のカスタムアプリケーションコードの使用を開始するには、 の Amazon Cognito コード例を参照してくださいAWS SDKs。OpenID Connect ID プロバイダーとして Amazon Cognito と統合するには、OpenID Connect デベロッパーツールを使用します。

Amazon Cognito の認証と認可を使用する前に、アプリプラットフォームを選択し、サービスと統合するためのコードを準備します。使用可能なプラットフォームについては、「による認証 AWS SDKs」を参照してください。 AWS CLI はAmazon Cognito およびその他の SDKのコマンドラインであり AWS のサービス、Amazon Cognito に慣れ始めるための貴重な場所ですAPI。

注記

Amazon Cognito の一部のコンポーネントは、 でのみ設定できますAPI。例えば、ユーザープールのカスタムSMSまたは E メール送信者 Lambda トリガーは、 CreateUserPool または リクエストのUserPoolクラスの LambdaConfigプロパティを更新するUpdateUserPoolAPIリクエストでのみ設定できます。

Amazon Cognito ユーザープールAPIは、名前空間を複数のAPIオペレーションクラスと共有します。1 つのクラスでは、ユーザープールとそのプロセス、ID プロバイダー、ユーザーを設定します。別のクラスでは、パブリッククライアントでユーザーがサインイン、サインアウト、プロファイルの管理を行うための認証されていないオペレーションを提供します。最終的なAPIオペレーションクラスは、機密サーバー側のクライアントで独自の AWS 認証情報を使用して承認するユーザーオペレーションを実行します。アプリケーションコードの実装を始める前に、目的のアプリケーションアーキテクチャを知っておく必要があります。詳細については、「ユーザープールAPIと認証サーバーの使用」を参照してください。

による認証 AWS Amplify

AWS Amplify は、ウェブおよびモバイルアプリケーションを構築するための完全なソリューションです。Amplify では、Amplify ライブラリを使用して既存のリソースに接続することも、Amplify コマンドラインインターフェイス () を使用して新しいリソースを作成および設定することもできますCLI。Amplify には、Authenticator などの UI コンポーネントも接続されており、アプリケーションでのサインインやサインアップエクスペリエンスの設定とカスタマイズに使用できます。

フロントエンドアプリケーションで Amplify の認証機能を使用するには、プラットフォーム別の以下のドキュメントを参照してください。

Amplify ライブラリはオープンソースであり、 で利用できますGitHub。Amplify Auth が Amazon Cognito 認証をどのように実装するかの詳細については、以下のライブラリを参照してください。

Amplify によるユーザーインターフェイス (UI) の作成

Amazon Cognito ユーザープールでホストされた UI は、ウェブアプリケーションやモバイルアプリケーションの認証フロントエンドの基本的なニーズを満たすことができます。ホストされた UI が対応しているパラメータの範囲を超えてユーザーインターフェイス (UI) をカスタマイズするには、カスタムアプリケーションを作成します。Amplify UI は、さまざまな言語でのカスタマイズ可能なフロントエンドコンポーネントのコレクションです。

Amplify Authenticator アプリケーションの例を示すスクリーンショット。

カスタム認証コンポーネントの使用を開始するには、Authenticator コンポーネントに関する以下のドキュメントを参照してください。

による認証 AWS SDKs

安全なバックエンドを使用して Amazon Cognito とやり取りする独自のアイデンティティマイクロサービスを構築するには、選択した言語で API AWS SDKを使用して Amazon Cognito ユーザープールと Amazon Cognito ID プールに接続します。

各APIオペレーションの詳細については、Amazon Cognito ユーザープールAPIリファレンス」およびAmazon Cognito API リファレンス」を参照してください。これらのドキュメントには、サポートされているプラットフォームSDKsでさまざまな を使用するためのリソースを含む「」セクションも含まれています