タダです。
今回はサーバーレスシングルページアプリケーション4章で勉強したことをまとめていきます。 www.oreilly.co.jp
章立ては以下のようになっています。
- 1章 シンプルにはじめる
- 2章 ハッシュイベントによるビューのルーティング
- 3章 シングルページアプリケーションに必要なもの
- 4章 Amazon CognitoによるIdentity as a Service
- 5章 DynamoDBにデータを格納する
- 6章 Lambdaを使って(マイクロ)サービスを作る
- 7章 サーバーレスのセキュリティ
- 8章 スケールアップする
4章のまとめ
Adding User Pool Sign-in Through a Third Party - Amazon Cognito
{ "AllowUnauthenticatedIdentities": false, "SupportedLoginProviders": { #SupportedLoginProvidersがIDプロバイダとCognitoのトークンを検証するIDのリストを表す "accounts.google.com": "<ここに転記する>" } }
./sspa create_pools
を実行すると実行結果に応じて以下のファイルが生成される- Google認証を使うために、Googleが提供するJavaScriptライブラリを設定して、View側でログインボタンを追加する
- そのためにGoogle JavaScript API(gapi)を取り込むscript要素を追加する
<script src="https://apis.google.com/js/platform.js" async defer></script>
- ライブラリーの設定は、head要素にmeta要素を追加する
<meta name="google-signin-client_id" content="GoogleのクライアントID">
function googleSignIn() { console.log(arguments); }
- ログインボタンをGoogle側に連携する必要があるため、div要素を追加する
<div class='nav-container no-select fixed-top u-full-width'> <ul class='inline-list hover-links nav-list six columns'> <li><a class='text-lg' href="#">LearnJS</a></li> <li><a href="#problem-1">Start</a></li> </ul> <div class='four columns'> <span class='navbar-padding u-pull-right'> <span class="g-signin2" data-onsuccess="googleSignIn"></span> </span> </div> </div>
デプロイすると、ログインボタンが表示されてGoogle認証ができるようになる
プロファイルビューを作ることで、ユーザーにアプリがどんな情報を持っているかを知らせることができる
次は5章ではDynamoDBでのデータ追加、CognitoをIAMロールで操作していきます。