nemuzuka / serverless-sample

Sample of Serverless Framework and Cognito

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Serverless Framework Sample

Serverless FrameworkでCognitoを使ってユーザ管理するサンプル

(Alexaからユーザ個別の情報を取って来るシステムとして作成。Alexa側の処理はこちら)

環境構築手順(とりあえず動かしたい人向け)

事前準備

1. clone or zip展開

ローカルにcloneしたプロジェクトかzipを展開して配置します。以降の作業は、カレントディレクトリを(serverless-sample)とします

2. npm install(初回のみでOK)

$ npm install -g serverless
$ npm install
$ sls dynamodb install

3. 環境変数を設定

$ cp conf/config.sample.json conf/config.dev.json

conf/config.dev.jsonを修正します

  • REGION: リージョンを指定します
  • USER_POOL_ID: プールIDを指定します
  • CLIENT_ID: アプリクライアントIDを指定します
  • ONLY_API_GATEWAY: Amazon API Gatewayを直接使用する場合、true / Amazon CloudFront を組み合わせて使用する場合、false を指定します

https://cognito-idp.{`リージョン`}.amazonaws.com/{`プールID`}/.well-known/jwks.json にアクセスし、取得したJSONをconf/jwks.jsonとして保存してください

4. ローカルで実行

$ sls offline start

http://localhost:3000/ で参照できます(http://localhost:8000/shell/ にアクセスするとローカルのDynamoDBにアクセスできます)

5. デプロイ

$ sls deploy -v

コマンドの結果、

...
ServiceEndpoint: https://xxxxxxx.execute-api.ap-northeast-1.amazonaws.com/dev
...

のように表示されるので、アクセスするとログイン画面が表示されます(Amazon CloudFrontを組み合わせて使用する場合は別途設定してください)

License

MIT

Copyright (c) 2017 Kazumune Katagiri

About

Sample of Serverless Framework and Cognito

License:MIT License


Languages

Language:HTML 69.4%Language:JavaScript 30.6%