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
Yuki Ando
540 views
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
2020年10月20日(火)~22日(木) オンラインにて開催された AWS DevDay Online JapanのDay1で発表した資料です。
Technology
◦
Read more
0
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 40
2
/ 40
3
/ 40
4
/ 40
5
/ 40
6
/ 40
7
/ 40
8
/ 40
9
/ 40
10
/ 40
11
/ 40
12
/ 40
13
/ 40
14
/ 40
15
/ 40
16
/ 40
17
/ 40
18
/ 40
19
/ 40
20
/ 40
21
/ 40
22
/ 40
23
/ 40
24
/ 40
25
/ 40
26
/ 40
27
/ 40
28
/ 40
29
/ 40
30
/ 40
31
/ 40
32
/ 40
33
/ 40
34
/ 40
35
/ 40
36
/ 40
37
/ 40
38
/ 40
39
/ 40
40
/ 40
More Related Content
PDF
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
by
Amazon Web Services Japan
PDF
DynamoDBの初心者に伝えたい初めて触るときの勘所
by
Ryo Sasaki
PDF
de:code 2019 Cloud トラック 総まとめ! 完全版
by
Minoru Naito
PDF
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
by
Yuki Ando
PPTX
AWS & Google Cloudを使ったシステム開発/技術選定のはなし
by
修一 高橋
PDF
Introducing the elastic 8.0 release a new era of speed, scale, relevance, and...
by
Shotaro Suzuki
PDF
Docker Desktop WSL2 Backendで捗るWindows PCのコンテナ開発環境
by
Yuki Ando
PDF
Building React, Flutter and Blazor development and debugging environment with...
by
Shotaro Suzuki
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
by
Amazon Web Services Japan
DynamoDBの初心者に伝えたい初めて触るときの勘所
by
Ryo Sasaki
de:code 2019 Cloud トラック 総まとめ! 完全版
by
Minoru Naito
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
by
Yuki Ando
AWS & Google Cloudを使ったシステム開発/技術選定のはなし
by
修一 高橋
Introducing the elastic 8.0 release a new era of speed, scale, relevance, and...
by
Shotaro Suzuki
Docker Desktop WSL2 Backendで捗るWindows PCのコンテナ開発環境
by
Yuki Ando
Building React, Flutter and Blazor development and debugging environment with...
by
Shotaro Suzuki
What's hot
PDF
Sum awsloft tko-iotloft-10-lt4-may-2020
by
Amazon Web Services Japan
PDF
Airflowを広告データのワークフローエンジンとして運用してみた話
by
Katsunori Kanda
PDF
Application development with c#, .net 6, blazor web assembly, asp.net web api...
by
Shotaro Suzuki
PDF
AWS & Google Cloud 両方を駆使するチームでの技術選定
by
修一 高橋
PDF
AWS市場動向と求められる人材、その育成方法について
by
Trainocate Japan, Ltd.
PDF
JAWS-UG初心者支部 - 2020-01-29 - マルチアカウント運用のはじめかた
by
Yutaro Ono
PDF
ぼうけんにでかけよう Kubernetes KEDA
by
Tsukasa Kato
PDF
Insight into Azure Active Directory - Azure AD Custom Role & Scope
by
Kazuki Takai
PDF
Power app custom api v0.1.21.1221
by
Ayumu Inaba
PDF
MongoDB社の製品紹介 2019-MongoDB EA&Atlas
by
昌桓 李
PPTX
オートモーティブ領域における 位置情報関連アルゴリズムあれこれ
by
DeNA
PDF
Let's build a simple app with .net 6 asp.net core web api, react, and elasti...
by
Shotaro Suzuki
PDF
AWSの最新動向と事例から知る クラウド利用の進化と真価
by
Trainocate Japan, Ltd.
PDF
猫でも分かる Android WebKit
by
Naruto TAKAHASHI
PDF
AWS市場動向と求められる人材、その育成方法について
by
Trainocate Japan, Ltd.
PDF
Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...
by
Shotaro Suzuki
PDF
クラウドネイティブガバナンスの実現
by
Minoru Naito
PDF
AWS 技術者向け Azure サービス解説 de:code2019版 #CD81
by
Minoru Naito
PDF
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
by
Shotaro Suzuki
PDF
Azure update flash
by
Minoru Naito
Sum awsloft tko-iotloft-10-lt4-may-2020
by
Amazon Web Services Japan
Airflowを広告データのワークフローエンジンとして運用してみた話
by
Katsunori Kanda
Application development with c#, .net 6, blazor web assembly, asp.net web api...
by
Shotaro Suzuki
AWS & Google Cloud 両方を駆使するチームでの技術選定
by
修一 高橋
AWS市場動向と求められる人材、その育成方法について
by
Trainocate Japan, Ltd.
JAWS-UG初心者支部 - 2020-01-29 - マルチアカウント運用のはじめかた
by
Yutaro Ono
ぼうけんにでかけよう Kubernetes KEDA
by
Tsukasa Kato
Insight into Azure Active Directory - Azure AD Custom Role & Scope
by
Kazuki Takai
Power app custom api v0.1.21.1221
by
Ayumu Inaba
MongoDB社の製品紹介 2019-MongoDB EA&Atlas
by
昌桓 李
オートモーティブ領域における 位置情報関連アルゴリズムあれこれ
by
DeNA
Let's build a simple app with .net 6 asp.net core web api, react, and elasti...
by
Shotaro Suzuki
AWSの最新動向と事例から知る クラウド利用の進化と真価
by
Trainocate Japan, Ltd.
猫でも分かる Android WebKit
by
Naruto TAKAHASHI
AWS市場動向と求められる人材、その育成方法について
by
Trainocate Japan, Ltd.
Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...
by
Shotaro Suzuki
クラウドネイティブガバナンスの実現
by
Minoru Naito
AWS 技術者向け Azure サービス解説 de:code2019版 #CD81
by
Minoru Naito
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
by
Shotaro Suzuki
Azure update flash
by
Minoru Naito
Similar to [AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
PDF
20200630 AWS Black Belt Online Seminar Amazon Cognito
by
Amazon Web Services Japan
PDF
Authlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_inside
by
Tatsuo Kudo
PDF
セキュリティ設計の頻出論点
by
Tomohiro Nakashima
PDF
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
by
Amazon Web Services Japan
PDF
認証技術、デジタルアイデンティティ技術の最新動向
by
Tatsuo Kudo
PDF
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
by
Amazon Web Services Japan
PDF
Black Belt Online Seminar Amazon Cognito
by
Amazon Web Services Japan
PDF
AWS Black Belt Online Seminar 2017 AWS Cognito
by
Amazon Web Services Japan
PDF
Serverless AWS構成でセキュアなSPAを目指す
by
Masayuki Kato
PDF
SCIM and OpenID Connect Intro
by
Tatsuo Kudo
PPTX
組み込みメーカーだからこそのAWS Cognitoの使い方
by
shotaueda3
PDF
Lambda認証認可パターン
by
Takuro Sasaki
PDF
AWS Well-Architected Tool 活用術セミナー セキュリティ編
by
Nobuhiro Nakayama
PDF
Scale Your Business without Servers
by
Keisuke Nishitani
PDF
Amazon Cognito Deep Dive @ JAWS DAYS 2016
by
akitsukada
PDF
Cloud Identity Summit 2012 TOI
by
Tatsuo Kudo
PDF
100121 Scis2010 Itoh
by
Hiroki Itoh
PDF
IAM & Consolidated Billing -ほぼ週刊AWSマイスターシリーズ第4回
by
SORACOM, INC
PDF
AWS Summits 2014 AWS MobileServices JP
by
Amazon Web Services Japan
PDF
UserManagedAccess_idcon13
by
Ryo Ito
20200630 AWS Black Belt Online Seminar Amazon Cognito
by
Amazon Web Services Japan
Authlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_inside
by
Tatsuo Kudo
セキュリティ設計の頻出論点
by
Tomohiro Nakashima
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
by
Amazon Web Services Japan
認証技術、デジタルアイデンティティ技術の最新動向
by
Tatsuo Kudo
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
by
Amazon Web Services Japan
Black Belt Online Seminar Amazon Cognito
by
Amazon Web Services Japan
AWS Black Belt Online Seminar 2017 AWS Cognito
by
Amazon Web Services Japan
Serverless AWS構成でセキュアなSPAを目指す
by
Masayuki Kato
SCIM and OpenID Connect Intro
by
Tatsuo Kudo
組み込みメーカーだからこそのAWS Cognitoの使い方
by
shotaueda3
Lambda認証認可パターン
by
Takuro Sasaki
AWS Well-Architected Tool 活用術セミナー セキュリティ編
by
Nobuhiro Nakayama
Scale Your Business without Servers
by
Keisuke Nishitani
Amazon Cognito Deep Dive @ JAWS DAYS 2016
by
akitsukada
Cloud Identity Summit 2012 TOI
by
Tatsuo Kudo
100121 Scis2010 Itoh
by
Hiroki Itoh
IAM & Consolidated Billing -ほぼ週刊AWSマイスターシリーズ第4回
by
SORACOM, INC
AWS Summits 2014 AWS MobileServices JP
by
Amazon Web Services Japan
UserManagedAccess_idcon13
by
Ryo Ito
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
1.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved.In Partnership with Cognito/Amplify で加速する エンタープライズのアプリケーション開発 安藤 裕紀 プラットフォームアーキテクト NRIデジタル株式会社 S e s s i o n B - 2
2.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with 自己紹介 安藤 裕紀(あんどう ゆうき) • NRIデジタル プラットフォームアーキテクト (2011年 野村総合研究所入社、2017年 NRIデジタル出向) • Webシステムのサーバ構築・運用を中心としたインフラエンジニア として流通・金融・製造など複数業種の技術支援を経験 • ここ最近は、AWS上に構築されたECサイトや会員サービスの 開発運用を効率化すべくSRE / DevOpsエンジニア寄りの業務に従事 • 2020 APN AWS Top Engineers選出
3.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with 本日お話しすること(セッション概要より) エンタープライズの新サービスを開発する際、企業はグループ内の複数のサービスを 横断した顧客体験の向上とデータ活用によってビジネスの価値を高めようとします。 そこで必要になるのが、エンドユーザの認証の統合とサービスごとの認可の制御です。 Cognito/Amplifyは新サービスを開発する際に認証機能を素早く実装する手段として知 られていますが、IDaaSと連携した認証とサービスに必要な認可の機能を実装するため に利用することで、エンタープライズが求める認証・認可を素早く実現するノウハウ をお伝えします。
4.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with アジェンダ • NRIデジタルについて • エンタープライズに認証・認可が求められる背景 • アプリケーション開発を加速するためのAWSマネージドサービス活用 • まとめ
5.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved.In Partnership with
6.
6Copyright (C) NRI
digital, Ltd. All rights reserved. 野村総合研究所(NRI)グループの デジタルビジネス専門の戦略子会社 NRIグループ内外から組織の壁を超えて 集結した多様なプロフェッショナルが ”ワンチーム”で、お客様と共に デジタルによるビジネス変革を推進 多様なプロフェッショナルが集結 新たなテクノロジー領域への挑戦 価値共創型のビジネス創出
7.
7Copyright (C) NRI
digital, Ltd. All rights reserved. 多くの企業が、ビジネス環境の激しい変化に対応するため、 テクノロジーを活用したビジネスの変革(DX)に取り組んでいる 店頭販売 対面接客 オンライン会員サービス デジタルマーケティング ECサイト・ショッピングアプリ 定額制 サブスクリプションサービス 顧客接点のDX 販売手段のDX
8.
8Copyright (C) NRI
digital, Ltd. All rights reserved. NRIデジタルはお客様のビジネス変革の全てのフェーズに関わり、 多様な専門性を持つプロフェッショナルが協力してDXを推進している 構想・企画 デザイン・ 設計 開発 テスト リリースモニタリング データ収集・ データ分析 可視化・ フィードバック 事業運営 お客様 ビジネスデザイナー (専門性の例) • ビジネスコンサルタント • システムコンサルタント • サービスデザイナー • UI/UXデザイナー アプリケーションデベロッパー (専門性の例) • プロジェクトマネージャー • システムエンジニア • スクラムマスター • スクラムデベロッパー プラットフォームアーキテクト (専門性の例) • アーキテクト • インフラエンジニア • データサイエンティスト • データエンジニア
9.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved.In Partnership with
10.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with エンタープライズ(大企業)
11.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with ビジネスを変革するための経営トップの意思決定 DXやるぞ!
12.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with 各事業会社の各部門で新サービスを検討 DXやるぞ! やるぞ! やるぞ!やるぞ!
13.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with Web、モバイル、IoTなど新サービスが続々と開始
14.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with グループ横断のデータ活用により顧客体験を向上したい グループの シナジーを 発揮するぞ!
15.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with グループ横断のデータ活用により顧客体験を向上したい グループの シナジーを 発揮するぞ!
16.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with 顧客IDを統合するために ******** 同じ顧客IDで 紐付けたい
17.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with サービス側で認証連携と認可機能を実装する必要がある ******** 認証連携・認可機能を実装 同じ顧客IDで 紐付けたい
18.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with 認証・認可とは? • 認証 (AuthN , Authentication) • 相手が誰であるかを確認すること 例)ログインによる本人確認 • 認可 (AuthZ , Authorization) • 誰かに許可を与えること 例)ログイン済みユーザにAPIへのアクセスを許可
19.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with 認証・認可とは? • 認証 (AuthN , Authentication) • 相手が誰であるかを確認すること 例)ログインによる本人確認 • 認可 (AuthZ , Authorization) • 誰かに許可を与えること 例)ログイン済みユーザにAPIへのアクセスを許可 OpenID Connect Authorization Code Flow Relying Party OpenID Provider Initiate Request Authorization(Redirect) Authentication & Authorization Authorization Code(Redirect) Authorization Code Access Token + ID Token UserInfo API User ID etc. 参考: http://openid-foundation-japan.github.io/openid-connect-basic-1_0.ja.html
20.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved.In Partnership with
21.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with エンタープライズとサービス開発の要件を両立する • エンタープライズの要件 • 共通の認証基盤・分析基盤を利用する • グループ横断のデータ活用 • 共通のセキュリティ・ガバナンス • グループ内他サービスとユーザ情報連携 • 他サービスの個別属性を連携する 例)会員ランク・住所など • バッチによるファイルインターフェース • サービス開発の要件 • 開発アジリティ • サービス開発の実験と反復を繰り返し、 顧客により良い体験を提供したい • ランニングコストの変動費化 • ユーザー数を明確に想定できないため、 ランニングコストが最初から固定費に なるのは避けたい • 運用の手離れの良さ • 開発チームは他のサービスの開発にも 着手するため、ビジネスの差別化に 直結しない運用からは手離れしたい
22.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with アプリケーション開発を加速するための基本方針 • AWSのマネージドサービスを活用する • アプリケーションで実装する機能の一部をマネージドサービスで実現 • 車輪の再発明がなくなる→コード量が減る→ビジネスロジックの開発に注力 例)認証・認可の機能をCognito/Amplifyで実装 • バックエンドの機能をサーバーレスで開発 • サーバーの運用管理がなくなる→インフラ運用がなくなり、コストは変動費に • キャパシティ不足による機会損失やセキュリティリスクを最小化 • フロントエンド開発にリソースを集中する • WebアプリはSingle Page Application(SPA)で開発する • リッチで操作性の高いUIを提供しやすい • フロントエンド(UI)とバックエンド(API)で開発者の関心事を分離できる • モバイルアプリ向けAPIにバックエンドの流用が可能
23.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with 本セッションの主役はこちら Amazon Cognito Webアプリ、モバイルアプリのための シンプルでセキュアな認証・認可を提供 AWS Amplify Webアプリ、モバイルアプリの作成、設定、 実装を加速するツールとサービスのセット
24.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with 本セッションの主役はこちら Amazon Cognito Webアプリ、モバイルアプリのための シンプルでセキュアな認証・認可を提供 • ユーザープール アプリへのアクセスに利用できるトークンを提供 • IDプール AWSにアクセスできるクレデンシャルを提供 • Cognito Sync モバイルアプリとクラウド間のデータ同期を実現 AWS Amplify Webアプリ、モバイルアプリの作成、設定、 実装を加速するツールとサービスのセット • Amplify Framework AWSのサービスで構築したバックエンドに直感的 なインターフェースで接続できるライブラリ • Amplify CLI AWSのサーバーレスなバックエンドを コマンドラインで構築・管理するCLIツール • Amplify Console GitベースのSPAや静的サイトのCI/CDパイプライン を提供する静的Webホスティングサービス
25.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. In Partnership with AWS Cloud Client AWS Cloud ソリューション構成 フロントエンド(UI) React/Amplify を利用したSPA CloudFront/S3 にホスティング バックエンド(API) Cognito API Gateway Lambda DynamoDB バックエンド(Batch) S3 Glue 共通認証基盤(OpenID Connect Provider) 共通属性 Single Page Application 認可コード取得 Amazon S3 (静的サイトホスティング用) トークン取得 Amazon API Gateway Amazon Cognito OpenID Connect 認証 Authorization Code Flow APIアクセス 基幹システム/他サービスなど ユーザ属性 AWS Lambda Amazon DynamoDB Amazon CloudFront ユーザ属性取得 • Cognito固有ユーザ情報 • 標準属性(OIDC仕様) • カスタム属性 COGNITO_USER_POOLS オーソライザー AWS Glue HTML取得 Amazon S3 ファイルインターフェース サインイン開始 ユーザ認証 ユーザ情報DB Redirect Redirect Redirect トークン・属性取得 API Services Batch Services UI表示 Cognitoユーザープール
26.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. In Partnership with AWS Cloud Client AWS Cloud ソリューション構成 フロントエンド(UI) React/Amplify を利用したSPA CloudFront/S3 にホスティング バックエンド(API) Cognito API Gateway Lambda DynamoDB バックエンド(Batch) S3 Glue 共通認証基盤(OpenID Connect Provider) 共通属性 Single Page Application 認可コード取得 Amazon S3 (静的サイトホスティング用) トークン取得 Amazon API Gateway Amazon Cognito OpenID Connect 認証 Authorization Code Flow APIアクセス 基幹システム/他サービスなど ユーザ属性 AWS Lambda Amazon DynamoDB Amazon CloudFront ユーザ属性取得 • Cognito固有ユーザ情報 • 標準属性(OIDC仕様) • カスタム属性 COGNITO_USER_POOLS オーソライザー AWS Glue HTML取得 Amazon S3 ファイルインターフェース サインイン開始 ユーザ認証 ユーザ情報DB Redirect Redirect Redirect トークン・属性取得 API Services Batch Services UI表示 Cognitoユーザープール フロントエンド(UI) バックエンド(API) バック エンド (Batch) 共通認証基盤 他システム サービス開発側の実装範囲
27.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. In Partnership with AWS Cloud Client AWS Cloud ソリューション構成 フロントエンド(UI) React/Amplify を利用したSPA CloudFront/S3 にホスティング バックエンド(API) Cognito API Gateway Lambda DynamoDB バックエンド(Batch) S3 Glue 共通認証基盤(OpenID Connect Provider) 共通属性 Single Page Application 認可コード取得 Amazon S3 (静的サイトホスティング用) トークン取得 Amazon API Gateway Amazon Cognito OpenID Connect 認証 Authorization Code Flow APIアクセス 基幹システム/他サービスなど ユーザ属性 AWS Lambda Amazon DynamoDB Amazon CloudFront ユーザ属性取得 • Cognito固有ユーザ情報 • 標準属性(OIDC仕様) • カスタム属性 COGNITO_USER_POOLS オーソライザー AWS Glue HTML取得 Amazon S3 ファイルインターフェース サインイン開始 ユーザ認証 ユーザ情報DB Redirect Redirect Redirect トークン・属性取得 API Services Batch Services UI表示 Cognitoユーザープール
28.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. In Partnership with AWS Cloud Client AWS Cloud ソリューション構成 フロントエンド(UI) React/Amplify を利用したSPA CloudFront/S3 にホスティング バックエンド(API) Cognito API Gateway Lambda DynamoDB バックエンド(Batch) S3 Glue 共通認証基盤(OpenID Connect Provider) 共通属性 Single Page Application 認可コード取得 Amazon S3 (静的サイトホスティング用) トークン取得 Amazon API Gateway Amazon Cognito OpenID Connect 認証 Authorization Code Flow APIアクセス 基幹システム/他サービスなど ユーザ属性 AWS Lambda Amazon DynamoDB Amazon CloudFront ユーザ属性取得 • Cognito固有ユーザ情報 • 標準属性(OIDC仕様) • カスタム属性 COGNITO_USER_POOLS オーソライザー AWS Glue HTML取得 Amazon S3 ファイルインターフェース サインイン開始 ユーザ認証 ユーザ情報DB Redirect Redirect Redirect トークン・属性取得 API Services Batch Services UI表示 Cognitoユーザープール
29.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. In Partnership with AWS Cloud Client AWS Cloud ソリューション構成 フロントエンド(UI) React/Amplify を利用したSPA CloudFront/S3 にホスティング バックエンド(API) Cognito API Gateway Lambda DynamoDB バックエンド(Batch) S3 Glue 共通認証基盤(OpenID Connect Provider) 共通属性 Single Page Application 認可コード取得 Amazon S3 (静的サイトホスティング用) トークン取得 Amazon API Gateway Amazon Cognito OpenID Connect 認証 Authorization Code Flow APIアクセス 基幹システム/他サービスなど ユーザ属性 AWS Lambda Amazon DynamoDB Amazon CloudFront ユーザ属性取得 • Cognito固有ユーザ情報 • 標準属性(OIDC仕様) • カスタム属性 COGNITO_USER_POOLS オーソライザー AWS Glue HTML取得 Amazon S3 ファイルインターフェース サインイン開始 ユーザ認証 ユーザ情報DB Redirect Redirect Redirect トークン・属性取得 API Services Batch Services UI表示 Cognitoユーザープール
30.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. In Partnership with AWS Cloud Client AWS Cloud ソリューション構成 フロントエンド(UI) React/Amplify を利用したSPA CloudFront/S3 にホスティング バックエンド(API) Cognito API Gateway Lambda DynamoDB バックエンド(Batch) S3 Glue 共通認証基盤(OpenID Connect Provider) 共通属性 Single Page Application 認可コード取得 Amazon S3 (静的サイトホスティング用) トークン取得 Amazon API Gateway Amazon Cognito OpenID Connect 認証 Authorization Code Flow APIアクセス 基幹システム/他サービスなど ユーザ属性 AWS Lambda Amazon DynamoDB Amazon CloudFront ユーザ属性取得 • Cognito固有ユーザ情報 • 標準属性(OIDC仕様) • カスタム属性 COGNITO_USER_POOLS オーソライザー AWS Glue HTML取得 Amazon S3 ファイルインターフェース サインイン開始 ユーザ認証 ユーザ情報DB Redirect Redirect Redirect トークン・属性取得 API Services Batch Services UI表示 Cognitoユーザープール
31.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. In Partnership with AWS Cloud Client AWS Cloud ソリューション構成 フロントエンド(UI) React/Amplify を利用したSPA CloudFront/S3 にホスティング バックエンド(API) Cognito API Gateway Lambda DynamoDB バックエンド(Batch) S3 Glue 共通認証基盤(OpenID Connect Provider) 共通属性 Single Page Application 認可コード取得 Amazon S3 (静的サイトホスティング用) トークン取得 Amazon API Gateway Amazon Cognito OpenID Connect 認証 Authorization Code Flow APIアクセス 基幹システム/他サービスなど ユーザ属性 AWS Lambda Amazon DynamoDB Amazon CloudFront ユーザ属性取得 • Cognito固有ユーザ情報 • 標準属性(OIDC仕様) • カスタム属性 COGNITO_USER_POOLS オーソライザー AWS Glue HTML取得 Amazon S3 ファイルインターフェース サインイン開始 ユーザ認証 ユーザ情報DB Redirect Redirect Redirect トークン・属性取得 API Services Batch Services UI表示 Cognitoユーザープール OpenID ConnectのInitiateリクエスト https://XXXXXXXXXXX.auth.ap-northeast-1.amazoncognito.com/oauth2/authorize?redirect_uri=http%3A%2F%2 Flocalhost%3A3000%2F&response_type=code&client_id=7o8ves8p5rq6q6o7i0mise4mbo&identity_provider=Id P&scope=email%20openid%20profile%20aws.cognito.signin.user.admin&state=NQNc0Lpkc2GCM8rxQj1ECYsio 4FIoUoe&code_challenge=FvgiKIf8J4lbTd42Pj-CNF5ykPZaAqZICTO4Q3EY8xc&code_challenge_method=S256 CSRF対策 戻ってきたリダイレクトのクエリ文字列に同じstateパラメータが設定されていること ?code=e0e91d0a-66a5-45cf-9afd-77117e3e26f0&state=NQNc0Lpkc2GCM8rxQj1ECYsio4FIoUoe PKCE:Proof Key for Code Exchange (RFC 7636) 認可コード横取り対策 トークンエンドポイントを呼び出したクライアントが、ハッシュ化前のcode_challenge の値(code_verifier)を含めてアクセスしていること code_verifier: 1U2UYEWnf3OYaSBKJQltCQ8S4fQb5XZBcWA2YoVRiN5e8I5Sk3yWyIJuiR58J5Ncdbs1YACHWKUYER m81UzYy7nEEpCRPqxUsDCr5jGnA4cfC9Y5eJCfzVD85D1cTxTE
32.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. In Partnership with AWS Cloud Client AWS Cloud ソリューション構成 フロントエンド(UI) React/Amplify を利用したSPA CloudFront/S3 にホスティング バックエンド(API) Cognito API Gateway Lambda DynamoDB バックエンド(Batch) S3 Glue 共通認証基盤(OpenID Connect Provider) 共通属性 Single Page Application 認可コード取得 Amazon S3 (静的サイトホスティング用) トークン取得 Amazon API Gateway Amazon Cognito OpenID Connect 認証 Authorization Code Flow APIアクセス 基幹システム/他サービスなど ユーザ属性 AWS Lambda Amazon DynamoDB Amazon CloudFront ユーザ属性取得 • Cognito固有ユーザ情報 • 標準属性(OIDC仕様) • カスタム属性 COGNITO_USER_POOLS オーソライザー AWS Glue HTML取得 Amazon S3 ファイルインターフェース サインイン開始 ユーザ認証 ユーザ情報DB Redirect Redirect Redirect トークン・属性取得 API Services Batch Services UI表示 Cognitoユーザープール
33.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. In Partnership with AWS Cloud Client AWS Cloud ソリューション構成 フロントエンド(UI) React/Amplify を利用したSPA CloudFront/S3 にホスティング バックエンド(API) Cognito API Gateway Lambda DynamoDB バックエンド(Batch) S3 Glue 共通認証基盤(OpenID Connect Provider) 共通属性 Single Page Application 認可コード取得 Amazon S3 (静的サイトホスティング用) トークン取得 Amazon API Gateway Amazon Cognito OpenID Connect 認証 Authorization Code Flow APIアクセス 基幹システム/他サービスなど ユーザ属性 AWS Lambda Amazon DynamoDB Amazon CloudFront ユーザ属性取得 Cognitoユーザプール • Cognito固有ユーザ情報 • 標準属性(OIDC仕様) • カスタム属性 COGNITO_USER_POOLS オーソライザー AWS Glue HTML取得 Amazon S3 ファイルインターフェース サインイン開始 ユーザ認証 ユーザ情報DB Redirect Redirect Redirect IDトークン・アクセストークン・属性取得 https://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/apigateway-enable-cognito-user-pool.html
34.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. In Partnership with AWS Cloud Client AWS Cloud ソリューション構成 フロントエンド(UI) React/Amplify を利用したSPA CloudFront/S3 にホスティング バックエンド(API) Cognito API Gateway Lambda DynamoDB バックエンド(Batch) S3 Glue 共通認証基盤(OpenID Connect Provider) 共通属性 Single Page Application 認可コード取得 Amazon S3 (静的サイトホスティング用) トークン取得 Amazon API Gateway Amazon Cognito OpenID Connect 認証 Authorization Code Flow APIアクセス 基幹システム/他サービスなど ユーザ属性 AWS Lambda Amazon DynamoDB Amazon CloudFront ユーザ属性取得 • Cognito固有ユーザ情報 • 標準属性(OIDC仕様) • カスタム属性 COGNITO_USER_POOLS オーソライザー AWS Glue HTML取得 Amazon S3 ファイルインターフェース サインイン開始 ユーザ認証 ユーザ情報DB Redirect Redirect Redirect トークン・属性取得 API Services Batch Services UI表示 Cognitoユーザープール 更新頻度が少なく※利用頻度の多い属性を、Cognitoの カスタム属性に反映することで、フロントエンド・ バックエンドのアプリケーションで扱いやすくなるた め、一部をカスタム属性としてboto3で登録 ※更新頻度が多い属性をユーザープール属性とするのは推奨されていない https://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/user-pool-settings-attributes.html
35.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with エンタープライズとサービス開発の要件を両立する • エンタープライズの要件 • 共通の認証基盤・分析基盤を利用する • グループ横断のデータ活用 • 共通のセキュリティ・ガバナンス • グループ内他サービスとユーザ情報連携 • 他サービスの個別属性を連携する 例)会員ランク・住所など • バッチによるファイルインターフェース • サービス開発の要件 • 開発アジリティ • サービス開発の実験と反復を繰り返し、 顧客により良い体験を提供したい • ランニングコストの変動費化 • ユーザー数を明確に想定できないため、 ランニングコストが最初から固定費に なるのは避けたい • 運用の手離れの良さ • 開発チームは他のサービスの開発にも 着手するため、ビジネスの差別化に 直結しない運用からは手離れしたい
36.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved.In Partnership with
37.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved. In Partnership with • エンタープライズで新サービス開発をする際、認証やデータの連携は 避けて通れない課題となり、開発アジリティとのトレードオフが発生 • Cognito/Amplifyは、独自のユーザ認証・ユーザ管理を実現するためだけ でなく、OpenID Connect Providerと認証連携可能なアプリケーションを 素早く実装するために活用できる • マネージドサービスやサーバーレスは開発・運用コストの削減効果が 大きいが、エンタープライズに求められる要件を充足するどうかは、 “信頼しつつも検証すべき” 本日お話ししたかったこと
38.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved.In Partnership with / エンタープライズの認証・認可要件を 素早く実現するために、Cognitoや Amplifyを活用してアプリケーションの 開発を加速させましょう \
39.
ご清聴ありがとうございました! © 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved.In Partnership with 安藤 裕紀 y-ando@nri-digital.jp
40.
© 2020, Amazon
Web Services, Inc. or its affiliates. All rights reserved.In Partnership with 20-22.10.2020
Download