LoginSignup
26
27

More than 3 years have passed since last update.

LambdaでCognito認証

Last updated at Posted at 2020-01-10

はじめに

SDKをローカルに持ってきてゴニョるサンプルは検索に引っかかるのですが、
クラウド側(Lambda関数内部)で完結するサンプルが見つからない...
よし、ならば投稿してしまえ。

トップ ←イマココ
ユーザー作成
ユーザー確認
ユーザー認証
ユーザー認可 ※Lambdaで認可する方法を解説します。

※メインはLambda関数のコードの紹介です。付随する情報は簡潔に記します。

概要

ローカルにダウンロードしたSDKを使うのではなく、
クラウド側で用意されているSDKを使ってCognito認証しよう。
というのが今回のコンセプトです。

↓こちらを使います。
https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CognitoIdentityServiceProvider.html

001.png
002.png

Cognito

  1. ユーザープールを作成する。
    ※必須属性は任意。
  2. 全般設定>アプリクライアント からアプリクライアントを作成する。
    ※認証フローは"ALLOW_USER_PASSWORD_AUTH"を選択する。

Lambda

  1. Lambda関数を作成する。
    ※ランタイムはNode.jsの最新版を選択する。
  2. Cognitoのポリシーをアタッチする。
    ※とりあえずは「AmazonCognitoPowerUser」だけでOK。必要に応じて取捨選択を。
  3. 関数コードを書く。詳細は各ページにて。
    1. ユーザー作成
    2. ユーザー確認
    3. ユーザー認証
    4. ユーザー認可

API Gateway

  1. "REST API" または "HTTP API"を作成する。
    ※REST APIの場合は、Lambdaプロキシ統合を使用する。
  2. 先に作成したLambda関数を、統合先に指定する。
    ※REST APIの場合は、デプロイを忘れずに。
26
27
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
26
27