S3にて静的ホスティングしているWebページにCognitoでログイン機能をつけてみた
2021/04/07 AWS認定 デベロッパーアソシエイトの試験に出るかもなデモ見せあいっこ(ヤマムギvol.12)
https://yamamugi.connpass.com/event/206801/
2021/04/07 AWS認定 デベロッパーアソシエイトの試験に出るかもなデモ見せあいっこ(ヤマムギvol.12)S3にて静的ホスティングしているWebページにCognitoでログイン機能をつけてみた1
View Slide
発表の前に2・この資料は後日公開予定です。写真撮影もOKです。・メモるよりは#yamamugiでツイート!・セッション内容のシステムは今後変更される可能性が大いにあります。#yamamugi
@surumegohan smartmacchiato.life/[email protected]surumegohan.hatenablog.com/Twitter Blog Gmail Web3フリーランスエンジニア・投資家HarborSイベントパートナー宮崎 翔平
@surumegohan smartmacchiato.life/[email protected]surumegohan.hatenablog.com/Twitter Blog Gmail Web4フリーランスエンジニア・投資家HarborSイベントパートナーshow
最近よく見かけますね #HarborS5#yamamugi
おしゃれなコワーキングスペース6#yamamugi
Copyright © 2021 Anti-Pattern Inc. All rights reserved.HarborSイベントパートナーに就任HarborS運営会社がAWSエンジニ向けサービス「engineed」をリリース7株式会社アンチパターン 主要事業エンジニア特化型コミュニティスペース• ソフトウェアエンジニアに必要なサービスを提供• エンジニア向けセミナーなども実施ハイスペックエンジニア特化型マッチングサービス• 優秀なエンジニアと、高付加価値/高単価な案件を依頼したい企業のマッチングサービス初学者エンジニア育成プログラム• 初学者エンジニアにベテランのメンターがつき、オンライン/オフラインで相談可能な仕組みを提供• 大学生向けプログラミング学習コミュニティGatewayソフトウェア開発支援• 様々な企業に対するソフトウェア開発の支援事業- 特にWebサービス開発に強みHarborSのイベントパートナーエンジニアコミュニティHarborSは、勉強会やイベントが多数開催されており、ドロップインでの利用も可能なコワーキングスペースです。皆様もHarborS表参道にお越しください。AWS公式資格取得者限定プラットフォーム資格取得したらすぐに登録!ユーザ登録するだけでオファーを獲得。副業やフリーランスや転職のオファーを獲得しよう!実務レベルの実技試験も提供しており、腕試しも可能!ユーザ登録(無料)受付中→
おとといAWS認定デベロッパーアソシエイトに合格しました8#yamamugi
おとといAWS認定デベロッパーアソシエイトに合格しました9合格体験記ブログ Amazonリンク#yamamugi
そろそろ10#yamamugi
静的ホスティングのWebページに利用してみた11#yamamugiAmazon Simple StorageService (Amazon S3)Amazon CognitoAmazon CognitoAmazon DynamoDBhtml , javascriptAWS CloudユーザープールIDプール予め連携本日の登壇者とタイトルが格納されている
まずは動いてるモノをみてみましょう12#yamamugiデモ
Amazon Cognitoとは13https://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/what-is-amazon-cognito.htmlから引用#yamamugiAmazon CognitoAmazon Cognito は、ウェブアプリケーションやモバイルアプリケーションの認証、許可、ユーザー管理をサポートしています。ユーザーは、ユーザー名とパスワードを使用して直接サインインするか、Facebook、Amazon、Google、Apple などのサードパーティーを通じてサインインできます。
Amazon Cognitoとは14https://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/what-is-amazon-cognito.htmlから引用#yamamugiAmazon CognitoAmazon Cognito の主な 2 つのコンポーネントは、ユーザープールと ID プールです。ユーザープールは、アプリユーザーのサインアップとサインインオプションを提供するユーザーディレクトリです。ID プールは、AWS の他のサービスに対するアクセスをユーザーに許可します。ID プールとユーザープールは別々に使用することも、一緒に使用することもできます。Amazon Cognito は、ウェブアプリケーションやモバイルアプリケーションの認証、許可、ユーザー管理をサポートしています。ユーザーは、ユーザー名とパスワードを使用して直接サインインするか、Facebook、Amazon、Google、Apple などのサードパーティーを通じてサインインできます。
Amazon Cognitoとは15https://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/what-is-amazon-cognito.htmlから引用#yamamugiAmazon CognitoAmazon Cognito の主な 2 つのコンポーネントは、ユーザープールと ID プールです。ユーザープールは、アプリユーザーのサインアップとサインインオプションを提供するユーザーディレクトリです。ID プールは、AWS の他のサービスに対するアクセスをユーザーに許可します。ID プールとユーザープールは別々に使用することも、一緒に使用することもできます。Amazon Cognito は、ウェブアプリケーションやモバイルアプリケーションの認証、許可、ユーザー管理をサポートしています。ユーザーは、ユーザー名とパスワードを使用して直接サインインするか、Facebook、Amazon、Google、Apple などのサードパーティーを通じてサインインできます。/oauth2/authorize エンドポイントは HTTPS のみをサポートします。ユーザープールクライアントは通常、このリクエストをブラウザ経由で行います。ウェブブラウザは、Chrome または Firefox を使用できます。
Amazon Cognitoとは16https://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/what-is-amazon-cognito.htmlから引用#yamamugiAmazon CognitoAmazon Cognito の主な 2 つのコンポーネントは、ユーザープールと ID プールです。ユーザープールは、アプリユーザーのサインアップとサインインオプションを提供するユーザーディレクトリです。ID プールは、AWS の他のサービスに対するアクセスをユーザーに許可します。ID プールとユーザープールは別々に使用することも、一緒に使用することもできます。Amazon Cognito は、ウェブアプリケーションやモバイルアプリケーションの認証、許可、ユーザー管理をサポートしています。ユーザーは、ユーザー名とパスワードを使用して直接サインインするか、Facebook、Amazon、Google、Apple などのサードパーティーを通じてサインインできます。要するに認証・認可をAWSにおまかせできるサービス
静的ホスティングのWebページに利用してみた17#yamamugiAmazon Simple StorageService (Amazon S3)Amazon CognitoAmazon CognitoAmazon DynamoDBhtml , javascriptAWS CloudユーザープールIDプール予め連携本日の登壇者とタイトルが格納されている
静的ホスティングのWebページに利用してみた18#yamamugiAmazon Simple StorageService (Amazon S3)Amazon CognitoAmazon CognitoAmazon DynamoDBhtml , javascriptAWS Cloud1.ブラウザでWebページ閲覧ユーザープールIDプール予め連携本日の登壇者とタイトルが格納されている
静的ホスティングのWebページに利用してみた19#yamamugiAmazon Simple StorageService (Amazon S3)Amazon CognitoAmazon CognitoAmazon DynamoDBhtml , javascriptAWS Cloud1.ブラウザでWebページ閲覧2.登録されているユーザーか確認ユーザープールIDプール予め連携本日の登壇者とタイトルが格納されている
静的ホスティングのWebページに利用してみた20#yamamugiAmazon Simple StorageService (Amazon S3)Amazon CognitoAmazon CognitoAmazon DynamoDBhtml , javascriptAWS Cloud1.ブラウザでWebページ閲覧2.登録されているユーザーか確認3.トークン取得ユーザープールIDプール予め連携本日の登壇者とタイトルが格納されている
静的ホスティングのWebページに利用してみた21#yamamugiAmazon Simple StorageService (Amazon S3)Amazon CognitoAmazon CognitoAmazon DynamoDBhtml , javascriptAWS Cloud1.ブラウザでWebページ閲覧2.登録されているユーザーか確認3.トークン取得4.トークンにてAWS認証許可ユーザープールIDプール予め連携本日の登壇者とタイトルが格納されている
静的ホスティングのWebページに利用してみた22#yamamugiAmazon Simple StorageService (Amazon S3)Amazon CognitoAmazon CognitoAmazon DynamoDBhtml , javascriptAWS Cloud1.ブラウザでWebページ閲覧2.登録されているユーザーか確認3.トークン取得4.トークンにてAWS認証許可5.AWS認証が通ったのでS3からDynamoDBへアクセスして必要な情報を取得ユーザープールIDプール予め連携本日の登壇者とタイトルが格納されている
静的ホスティングのWebページに利用してみた23#yamamugiAmazon Simple StorageService (Amazon S3)Amazon CognitoAmazon CognitoAmazon DynamoDBhtml , javascriptAWS Cloud1.ブラウザでWebページ閲覧2.登録されているユーザーか確認3.トークン取得4.トークンにてAWS認証許可5.AWS認証が通ったのでS3からDynamoDBへアクセスして必要な情報を取得6.ログイン後の機能(DynamoDB)を用いたWebページを利用可能ユーザープールIDプール予め連携本日の登壇者とタイトルが格納されている
サインアップ(登録時)24#yamamugi確認メールを受信AWS関連の記載なし
ログイン画面にロゴ追加25#yamamugiログイン画面が味気ない・・・企業ロゴを追加してみよう
やってみよう26#yamamugiデモ
Cognitoでログインシステムができました27#yamamugiコーディングを最小限にログイン(サインアップ・サインイン)機能が作成できました静的ホスティングと合わせて、今回のCognitoの機能は資格試験範囲です
参考サイト28#yamamugi■Amazon Cognitoとはhttps://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/what-is-amazon-cognito.html■チュートリアル: Amazon S3 での静的ウェブサイトの設定https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/HostingWebsiteOnS3Setup.html■Amazon Cognito 開発者ガイド - Amazon Cognito ユーザープールhttps://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/cognito-user-pool-as-user-directory.html■はじめてのCognito! CognitoのログインUIを使って認証システムを実装したまとめhttps://bit.ly/2Q6ymoD■Amazon Cognito のホストされたウェブの UI を設定する方法を教えてください。https://aws.amazon.com/jp/premiumsupport/knowledge-center/cognito-hosted-web-ui/■AWSJavaScriptSDKhttps://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CognitoIdentityCredentials.html
車輪の再発明は極力避けましょう29#yamamugi合格体験記ブログ Amazonリンク