Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
shotaueda3
PPTX, PDF
1,721 views
組み込みメーカーだからこそのAWS Cognitoの使い方
AWS Dev Day Tokyo 2018のLT大会の登壇資料になります。 (https://aws.amazon.com/jp/aws-devday-tokyo-2018/)
Technology
◦
Related topics:
Cloud Computing Insights
•
Read more
3
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 18
2
/ 18
3
/ 18
4
/ 18
5
/ 18
6
/ 18
7
/ 18
8
/ 18
9
/ 18
10
/ 18
11
/ 18
12
/ 18
13
/ 18
14
/ 18
15
/ 18
16
/ 18
17
/ 18
18
/ 18
More Related Content
PPTX
SPAセキュリティ入門~PHP Conference Japan 2021
by
Hiroshi Tokumaru
PDF
AWSのログ管理ベストプラクティス
by
Akihiro Kuwano
PDF
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
by
Amazon Web Services Japan
PDF
マルチテナント化で知っておきたいデータベースのこと
by
Amazon Web Services Japan
PDF
20210526 AWS Expert Online マルチアカウント管理の基本
by
Amazon Web Services Japan
PPTX
Amazon EKS への道 ~ EKS 再入門 ~
by
Hideaki Aoyagi
PDF
AWS初心者向けWebinar AWS上でのDDoS対策
by
Amazon Web Services Japan
PDF
Mavenの真実とウソ
by
Yoshitaka Kawashima
SPAセキュリティ入門~PHP Conference Japan 2021
by
Hiroshi Tokumaru
AWSのログ管理ベストプラクティス
by
Akihiro Kuwano
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
by
Amazon Web Services Japan
マルチテナント化で知っておきたいデータベースのこと
by
Amazon Web Services Japan
20210526 AWS Expert Online マルチアカウント管理の基本
by
Amazon Web Services Japan
Amazon EKS への道 ~ EKS 再入門 ~
by
Hideaki Aoyagi
AWS初心者向けWebinar AWS上でのDDoS対策
by
Amazon Web Services Japan
Mavenの真実とウソ
by
Yoshitaka Kawashima
What's hot
PDF
AWS OpsWorksハンズオン
by
Amazon Web Services Japan
PDF
DevOps with Database on AWS
by
Amazon Web Services Japan
PPTX
RLSを用いたマルチテナント実装 for Django
by
Takayuki Shimizukawa
PDF
AWS Black Belt Techシリーズ Amazon Kinesis
by
Amazon Web Services Japan
PDF
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
by
Yahoo!デベロッパーネットワーク
PPTX
やってはいけない空振りDelete
by
Yu Yamada
PDF
20200930 AWS Black Belt Online Seminar Amazon Kinesis Video Streams
by
Amazon Web Services Japan
PDF
AWSでDockerを扱うためのベストプラクティス
by
Amazon Web Services Japan
PDF
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
by
Amazon Web Services Japan
PDF
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
by
Amazon Web Services Japan
PDF
Fargate起動歴1日の男が語る運用の勘どころ
by
Yuto Komai
PPTX
20220409 AWS BLEA 開発にあたって検討したこと
by
Amazon Web Services Japan
PDF
Docker 9 tips~意外と知られていない日常で役立つ便利技
by
Masahito Zembutsu
PDF
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
by
Amazon Web Services Japan
PDF
20180509 AWS Black Belt Online Seminar Amazon GuardDuty
by
Amazon Web Services Japan
PDF
AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
by
Amazon Web Services Japan
PDF
20210119 AWS Black Belt Online Seminar AWS CloudTrail
by
Amazon Web Services Japan
PDF
AWSで実現するバックアップとディザスタリカバリ
by
Amazon Web Services Japan
PDF
CircleCI vs. CodePipeline
by
HonMarkHunt
PDF
20180801 AWS Black Belt Online Seminar Amazon QuickSight アップデート
by
Amazon Web Services Japan
AWS OpsWorksハンズオン
by
Amazon Web Services Japan
DevOps with Database on AWS
by
Amazon Web Services Japan
RLSを用いたマルチテナント実装 for Django
by
Takayuki Shimizukawa
AWS Black Belt Techシリーズ Amazon Kinesis
by
Amazon Web Services Japan
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
by
Yahoo!デベロッパーネットワーク
やってはいけない空振りDelete
by
Yu Yamada
20200930 AWS Black Belt Online Seminar Amazon Kinesis Video Streams
by
Amazon Web Services Japan
AWSでDockerを扱うためのベストプラクティス
by
Amazon Web Services Japan
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
by
Amazon Web Services Japan
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
by
Amazon Web Services Japan
Fargate起動歴1日の男が語る運用の勘どころ
by
Yuto Komai
20220409 AWS BLEA 開発にあたって検討したこと
by
Amazon Web Services Japan
Docker 9 tips~意外と知られていない日常で役立つ便利技
by
Masahito Zembutsu
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
by
Amazon Web Services Japan
20180509 AWS Black Belt Online Seminar Amazon GuardDuty
by
Amazon Web Services Japan
AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
by
Amazon Web Services Japan
20210119 AWS Black Belt Online Seminar AWS CloudTrail
by
Amazon Web Services Japan
AWSで実現するバックアップとディザスタリカバリ
by
Amazon Web Services Japan
CircleCI vs. CodePipeline
by
HonMarkHunt
20180801 AWS Black Belt Online Seminar Amazon QuickSight アップデート
by
Amazon Web Services Japan
Similar to 組み込みメーカーだからこそのAWS Cognitoの使い方
PDF
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
by
Yuki Ando
PDF
Black Belt Online Seminar Amazon Cognito
by
Amazon Web Services Japan
PPTX
Amazon Cognito + SNS + Zabbixでサーバー監視アプリを作ってみた
by
Hikaru Ashino
PDF
Serverless AWS構成でセキュアなSPAを目指す
by
Masayuki Kato
PDF
Amazon Cognito Deep Dive @ JAWS DAYS 2016
by
akitsukada
PDF
20200630 AWS Black Belt Online Seminar Amazon Cognito
by
Amazon Web Services Japan
PDF
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
by
Amazon Web Services Japan
PDF
IAM & Consolidated Billing -ほぼ週刊AWSマイスターシリーズ第4回
by
SORACOM, INC
PDF
AWS Black Belt Online Seminar 2017 AWS Cognito
by
Amazon Web Services Japan
PDF
AWSを利用したアプリ開発
by
Fixel Inc.
PDF
サーバレスを可能にするAWSサービスの概要
by
Fixel Inc.
PDF
AWS Summits 2014 AWS MobileServices JP
by
Amazon Web Services Japan
PDF
re:port2017 hirayama
by
Tomofumi Hirayama
PDF
AWS Cognito makes old web apps available from anywhere
by
Yukiya Hayashi
PDF
AWS Black Belt Online Seminar 2018 AWS Well-Architected Framework
by
Amazon Web Services Japan
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
by
Yuki Ando
Black Belt Online Seminar Amazon Cognito
by
Amazon Web Services Japan
Amazon Cognito + SNS + Zabbixでサーバー監視アプリを作ってみた
by
Hikaru Ashino
Serverless AWS構成でセキュアなSPAを目指す
by
Masayuki Kato
Amazon Cognito Deep Dive @ JAWS DAYS 2016
by
akitsukada
20200630 AWS Black Belt Online Seminar Amazon Cognito
by
Amazon Web Services Japan
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
by
Amazon Web Services Japan
IAM & Consolidated Billing -ほぼ週刊AWSマイスターシリーズ第4回
by
SORACOM, INC
AWS Black Belt Online Seminar 2017 AWS Cognito
by
Amazon Web Services Japan
AWSを利用したアプリ開発
by
Fixel Inc.
サーバレスを可能にするAWSサービスの概要
by
Fixel Inc.
AWS Summits 2014 AWS MobileServices JP
by
Amazon Web Services Japan
re:port2017 hirayama
by
Tomofumi Hirayama
AWS Cognito makes old web apps available from anywhere
by
Yukiya Hayashi
AWS Black Belt Online Seminar 2018 AWS Well-Architected Framework
by
Amazon Web Services Japan
組み込みメーカーだからこそのAWS Cognitoの使い方
1.
組み込みメーカーだからこ その AWS Cognitoの使い 方 AWS 標準機能をいかに拡張し マネージドサービスオンリーで認証基盤を 実現するか
2.
自己紹介 • 上田 渉太 •
アルパイン株式会社イノベーションラボ所属 • 企画、設計職 • 趣味 • ロードバイク • ゲーム作り (主にコアワーキングスペース weeyble https://weeyble.com/ で活動しています) • 3D CG (無印Zbrushで作品を作っています) • Twitter( @tukkyCG1 ) • Qiita( https://qiita.com/tukkyr ) • Slideshare( https://www.slideshare.net/shotaueda3 ) • 好きなAWSのサービス • Lambda • DynamoDB • AppAync
3.
アルパインの紹介 社名 アルパイン株式会社 設立 1967年5月 東京本社 東京都大田区雪谷大塚町1-7 資本金 259億円 従業員数 13,175名(2018年3月31日現在) グループ 海外15か国28社・国内7社 1500 2250 3000 2017/32018/32019/3 売上(億円) 2,477 2,752 2,950 (予想) 0 50 100 150 200 2017/3 2018/3
2019/3 営業利益(億円) 56 137 130 (予想) 主要製品 市販市場向け オーディオ・カーナビシステム 自動車メーカー向け 車載システム コネクテッドサービス領域へ オープンイノベーション推進!
4.
アジェンダ • 実現したいこと • 組み込みメーカーならではの事情 •
ユーザー認証に求める要件 • AWSの認証サービスの紹介 • AWSの認証サービスを使う上での問題点 • 解決方法の提示 • まとめ
5.
AWS マネージドサービスのみで 認証基盤を構築したい • 皆さんもAWSのマネージドサービスを調べて自社サービスの適 応を考えた際、あと少し機能の拡張やカスタマイズが出来れば と考えたことはありませんか •
本LTでは私が実際に遭遇した 組み込みメーカーならではの 事情を認証基盤に組み込んだ時 • いかにして AWSのマネージドサービスを拡張して問題を解決 したか紹介したいと思います
6.
システムの概要と特徴 • 開発対象が組み込み機器とスマホアプリの二 か所 • スマホアプリのみが直接AWSのサービスとつな がり、組み込み機器はスマホアプリを経由しな いとAWSのサービスを利用できない •
ユーザー認証に関わる部分はAWSの CognitoとApiGatewayを使ってマネージド なAWSのサービスのみで構築したい Mobile client AWS account シリアルナ ンバー 組み込み機器 ②ユーザー登録 ③IDTOKEN (Cognito署名付き) ④CognitoUserPool で認証・認可 ①
7.
組み込み機器メーカーならではの事情1 • 組み込み機器とスマホアプリの両方の開発が必要になり、それらの寿命とリリー ス回数が異なる • 組み込み機器が新しく購入された場合 •
スマホアプリに新しい機器購入されたことを通知し同一ユーザーとしてサービ スを継続したい • アプリサービスが新しくリリースされた場合 • 既存の組み込み機器を使用しているユーザーを同一人物として認識した上 で新しいスマホアプリのサービスを提供したい
8.
組み込み機器メーカーならではの事情2 • 組み込み機器自体はAWSとの通信手段を持たず スマホアプリがその役割を肩代わりする • 実際にユーザー認証の仕組みを持つのはスマホアプリで組み込み機器の区別する情 報はシリアルナンバーのみである •
スマホアプリが変わると同じ組み込み機器を使っていてもユーザーの認証情報を一切引 継ぎできなくなってしまう • シリアルナンバーを登録するタイミングとAWSで認証を行うタイミングが異なる • スマホアプリ間で組み込み機器のシリアルナンバーを共有できる仕組みが必要
9.
ユーザー認証に求める要件 • 組み込み機器、スマホアプリのどちらか一方が新しくなっても、 もう一方に与える影響を最小限としたい • シリアルナンバーをスマホアプリ間で共有したい •
組み込み機器やスマホアプリとは独立したユーザー毎の情報(セッションID)が作成できなおかつ、 それをスマホアプリ間で共有できれば良い • シリアルナンバーはセッションIDに紐づけていつでも保管できる
10.
AWSの認証に関わる マネージドサービスについて • AWS Cognito
Userpool • AWSが提供するモバイル用のクラウド認証サービス • 実態はOpenID ConnectのIDプロバイダーのラッパーのようなもの • クライアントからの認証情報に基づいて、IDTokenをCognitoの署名付きで発行する • ユーザーの認証情報を管理する機能をもつ、しかし標準機能ではUserpool間でユー ザーの認証情報の受け渡しはできない • AWS ApiGateway • 簡単にWebapiを作成、配布、保守、監視、保護を行うことが出来る • オーサライザーを設定することで、Apiのアクセスを制御することもできる
11.
システムの概要 お試し版 - AWSを使ってマネージドなシステムを組んでみる ①
組み込み機器はシリアルナンバーをスマホアプ リに伝える ② スマホアプリはCognitoにユーザー認証の情 報を送る ③ Cognitoは情報をもとに署名し,IDTokenと してスマホアプリに返す ④ スマホアプリはIDTokeをApiGatewayに送 る。 ApiGatewayはIDTokenの署名をチェックし 、各サービスに対してリクエストを転送する Mobile client AWS account シリアルナ ンバー 組み込み機器 ②ユーザー登録 ③IDTOKEN (Cognito署名付き) ④CognitoUserPool で認証・認可 ①
12.
システムの問題 - ユーザー認証に求める要件と比較して • ユーザーを認証したタイミングでセッションIDが作成できない •
スマホアプリに対して、Userpoolを一つづつ割り当てると アプリ間でユーザー情報を共有する手段がない • シリアルナンバーがユーザー登録のタイミングでしか送れない • ユーザー認証としの基本的な機能はあるのにこのまま諦め るのはもったいない • どうにかして機能を拡張できないか Lambdaを使えば 機能を拡張できます!! Mobile client AWS account シリアルナ ンバー 組み込み 機器 ②ユーザー登録 ③IDTOKEN (Cognito署名付き) ④CognitoUserPoolで 認証・認可 ①
13.
AWS Lambdaとは • マネージドなサービスで任意コードをサーバーを管理しなくてもコードを実行することが出来 る •
Node.js, java, Go, C#, Pythonをサポート • IAMを設定してあげることでAWSのリソースへのアクセスの制御もできる • ApiGatewayから呼び出して、サーバーレスのRESTApiを実現するといった用途でよく 使われる • 実は一部のサービスでは機能の拡張のためにLambdaを利用することが出来る • CognitoとApiGatewayはこの機能拡張の仕組みを持っている
14.
CognitoUserpool+Lambdaで拡張する • Lambdaトリガーを利用してワークフローをカスタマイズする • トリガーはトークン生成前トリガーを使う •
カスタマイズすること • Lambdaが呼び出されたら uuidを使ってセッションIDを作成する • セッションIDとユーザーの認証情報をDBに保管する • IDToken生成時のclaim情報にセッションIDを付加する • これはcookieのセッションIDのようにアプリとサーバー間でのみ知っている情報として扱う
15.
ApiGateway+Lambdaで拡張する • Lambdaトリガーを利用してLambdaオーサライザーを作成する • APIリクエストの署名確認はLambdaオーサライザーで行う •
カスタマイズすること • リクエストがCognitoで署名されたIDTokenを持っているかを確認する • IDTokenからカスタマイズしたセッションIDを含むclaimを取り出し マッピングテンプレートで各サービスにユーザーの認証情報を渡す下準備をする
16.
システムの概要 - 完成版 - •
ユーザーを認証したタイミングでセッション IDが作成できない • スマホアプリに対して、Userpoolを一つ づつ割り当てるとアプリ間でユーザー情報 を共有する手段がない • シリアルナンバーがユーザー登録のタイミン グでしか送れない 解 決 元の設計をほとんど変更することなしに 要件を達成することに成功!! 変更したのは赤枠の部分だけ Mobile client シリアルナ ンバー組み込み機器 ①ユーザー登録 ④IDTOKEN (Cognito署名付き) ⑤IDTokenの転送 UserData 管理 account ②セッションIDの 作成とDBへの保存 ③Claimに セッション IDを含める ようリクエ スト ⑥IDTOKEN の署名確認 ⑦署名結果 の通知 Contextの編集 ユーザーデータの 取得 別のAWSアカウント(別のUserPool保持)からもアクセス可能 解 決 解 決
17.
まとめ • 今回の例では私が実際に遭遇した問題とその解決方法でしたが、皆さんの業務に も利用できる点があると思います • AWSを使う上で •
実現したいことの特徴点と問題点を洗い出してみる • AWSの標準機能を調査し、極力マネージドサービスのみでシステムを組んでみる • AWS標準機能で実現できたことと実現できなかったことを洗い出す • 実現できなかったことに対して、Lambdaの拡張で実現できないか検討してみ る • それでもだめなら初めて、自前でサービスを作成することを検討する このステップ があることを 本LTで知って いただければ 幸いです
Editor's Notes
#23
引き続き、この場をお借りしまして、私より、昨今の当社を 取り巻く環境と今後の取り組みについて、ご説明申し上げます。
Download