SlideShare a Scribd company logo
1 of 43
Download to read offline
アマゾン ウェブ サービス ジャパン株式会社
ソリューションアーキテクト 辻 義一
2017.10.10
【AWS Black Belt Online Seminar】
AWSにおけるアプリ認証パターン
AWS Black Belt Online Seminar とは
AWSJのTechメンバがAWSに関する様々な事を紹介するオンラインセミナーです
【火曜 12:00〜13:00】
主にAWSのソリューションや
業界カットでの使いどころなどを紹介
(例:IoT、金融業界向け etc.)
【水曜 18:00〜19:00】
主にAWSサービスの紹介や
アップデートの解説
(例:EC2、RDS、Lambda etc.)
※開催曜日と時間帯は変更となる場合がございます。
最新の情報は下記をご確認下さい。
オンラインセミナーのスケジュール&申し込みサイト
https://aws.amazon.com/jp/about-aws/events/webinars/
内容についての注意点
• 本資料では2017年10月10日時点のサービス内容および価格についてご説明しています。最新の
情報はAWS公式ウェブサイト(http://aws.amazon.com)にてご確認ください。
• 資料作成には十分注意しておりますが、資料内の価格とAWS公式ウェブサイト記載の価格に相
違があった場合、AWS公式ウェブサイトの価格を優先とさせていただきます。
• 価格は税抜表記となっています。日本居住者のお客様が東京リージョンを使用する場合、別途
消費税をご請求させていただきます。
• AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to
change in accordance with the AWS Customer Agreement available at
http://aws.amazon.com/agreement/. Any pricing information included in this document is
provided only as an estimate of usage charges for AWS services based on certain information that
you have provided. Monthly charges will be based on your actual use of AWS services, and may
vary from the estimates provided.
Agenda
用語について
本Webinarでの想定ユースケース3パターン
登場するサービスの概要紹介
AWS上での実現パターン
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
用語について
用語の確認(1/2)
統一されておらず曖昧な用語もあるが、本ウェビナーでは以下の通りとする。
認証 = Authentication (AuthN)
相手が本当に申告された人であるかを確認すること。
認可 = Authorization (AuthZ)
特定の条件で特定のリソースへのアクセスを許可すること。
認証連携 = Federated Authentication, Federated Identity, ID Federation, Federation
サードパーティで行われた認証情報を受け取って、認証を実施する代わりにすること。
アプリにとって認証を委譲していることになる。
別の用語例: 実現方法の例:SAML, OpenID, OpenID Connect
代理アクセス = Delegated Acccess
ユーザ合意の上で、サード−パーティがユーザの代わりにリソースへのアクセスを許可すること。
ユーザにとって認可されている一部をサードパーティに委譲することになる。
実現方法の例:OAuth
用語の確認(2/2)
認証情報 = Credential
認証をパスするために必要な情報のこと。
具体例:ユーザ名とパスワード、IAMユーザのアクセスキーとシークレットアクセスキー
トークン = Token, Ticket
認証をパスするために必要な情報で、一定期間のみ有効な情報のこと。
具体例:IAMロールで割り当てられるアクセスキーとシークレットアクセスキーとトークン、
SAMLで認証後に発行されるSAML Assertion、JWT (Json Web Token)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
本Webinarでの想定ユースケース
3パターン
勝手に
3分類
① コンシューマ向けWebサイト
典型的なWebサイト構成
WebのHTML生成は
サーバサイドで実施
初回ユーザ認証後は、
Cookieベースでの認証
ユーザの状態を
セッションストアに保持
user001
********
login
ブラウザ
□□□ Web
+ 認証機能
ID/Passwodでの
認証・Cookie発行
Cookieベースでの認証
Cookie ユーザレポジトリ
&セッションストア
Webサイト
① コンシューマ向けWebサイト
初回認証、その後Cookieベース認証のイメージ
ID/Passwordでまず認証し、その後の通信ではCookie内のセッションIDを常に確認する。
初回アクセス、ID/Password認証
ブラウザ: HTMLのフォームでID/Passwordを送信する。
Webサーバ: ユーザストアにID/Passwordを確認する
Webサーバ: セッションにログイン情報を反映する。
Webサーバ: セッションIDが入ったCookieを含めて
HTMLコンテンツを返す。
2回目以降のアクセス、Cookieベースの認証
ブラウザ: セッションIDが入ったCookieを含めてリクエストを送る。
Webサーバ:セッションIDがログイン済みかセッションストアに確認する。
Webサーバ: ログイン済みであればHTMLコンテンツを返す。
ブラウザ Webサーバ
user001
********
login
ユーザレポジトリ
セッションストア
1
4
5
1
7
2
3
6
2
3
4
5
6
7
Cookie
① コンシューマ向けWebサイト
典型的なWebサイト構成
WebのHTML生成は
サーバサイドで実施
初回ユーザ認証後は、
Cookieベースでの認証
ユーザの状態を
セッションストアに保持
user001
********
login
ブラウザ
□□□ Web
+ 認証機能
ID/Passwodでの
認証・Cookie発行
Cookieベースでの認証
Cookie ユーザレポジトリ
&セッションストア
Webサイト
バックエンド
システムアプリの認証情報
でアクセス
API
サードパーティ
Webサイト
a f t g
サードパーティとの
認証連携
SAML
○○○ Web
セッション
ストア
内部や外部への認証連携
サードパーティ
Webサイト
AWSのマネージドサービス
AWSリソースに
直接アクセス
代理アクセスできる
トークン発行
OAuth
トークンで
APIにアクセス
API
サードパーティ
Webサイト
サードパーティ
Webサイト
a f t g
サードパーティとの
認証連携
OAuth
AWSのマネージドサービス
トークンで
APIにアクセス
代理アクセスできる
トークン発行
バックエンド
SAML
バックエンド
システムアプリの認証情報
でアクセス
API
外部への認証連携
AWSリソースに
直接アクセス
モバイル
アプリ
ID/Passwodでの認証・
トークン発行
トークン ベースでの認証
API
API
トークン
シングル
ページ
アプリケーション
○○○ API
□□□ API
+ 認証機能
ユーザレポジトリ
② モバイルアプリやシングルページアプリケーショ
ン
サーバサイドはAPIで実現
サーバサイドは
ステートレスな構成
モバイルアプリなど
クライアントサイドの
画面はJavaScriptで構成
初回ユーザ認証後は、
トークンベースでの認証
② モバイルアプリやシングルページアプリケーショ
ン
初回認証、その後トークンベース認証のイメージ
ID/Passwordでまず認証し、その後の通信ではトークンを付けてリクエストを行う。
初回アクセス、ID/Password認証
アプリ: ユーザの入力したID/Passwordを取り出し
て認証APIに送信する。
APIサーバ: ユーザストアにID/Passwordを確認する。
APIサーバ: トークンを返す。
2回目以降のアクセス、Cookieベースの認証
アプリ: トークンを付けてリクエストを送る。
APIサーバ: トークンを公開鍵暗号方などで検証する。
APIサーバ: リクエストに応じてレスポンスを返す。
APIサーバ
ユーザレポジトリ
1
3
4
1
6
2
2
3
4
5
6
モバイル
アプリ
シングル
ページ
アプリケーション
5
③ エンタープライズ企業の社内システム
SAML
user001
********
login
社員PC
Active Directory
Federation Service
(ADFS, IdP)
Acitve Directory
Linux/Unix系
Webサーバ
インターネット
サードパーティ
SaaS
ユーザ
レポジトリ
SAML対応
Webサーバ
Webサーバ
サードパーティ
との認証連携
SSO製品
社内での認証連携
Webサーバ
ID/Passwodでの認証
統合Windows認証
/ Kerberos認証
SSOやパスワード同期を実現
複数パスワード管理の煩雑さ
やログインの手間を軽減する
PCやサーバにWindowsが多数
使われるため、Windowsの認
証機能を活用
認証連携はSAMLで実現
登場するサービスの概要紹介
AWS IAM (Identity and Access Management)
ユーザやロールに、何を
行ってよいか記載された
ポリシーを割り当てて制
御する。
APIにアクセスする際に
使用する認証情報は
• アクセスキー
• シークレットアクセスキー
• トークン(有効期限ありの場合のみ)
で構成されている。
AWSのサービスは認証情
報をSigV4という方法で署
名をAPIリクエストに毎回
付けてアクセスする。
AWSのサービスへの認証と認可を管理するサービス
EC2
起動、停止
S3
アップロード
ダウンロード
Management
Console
ユーザ名・
パスワード
AWS管理者・
オペレータ
SDK
アクセスキー・
シークレット
アクセスキー
AWS CLI
>
API
IAMユーザ
IAMロール
ユーザ、
アプリ、
サービスなど
アクセスキー・
シークレット
アクセスキー・
トークン
Amazon Cognito
Cognito User Pool
アプリケーションにユーザー登録やサイ
ンイン機能を追加できる。
• パスワードやMFAを使ったユーザ
認証、フェデレーションして認証
• 認証後に独自のアプリケーションで
も検証可能なJWT形式のトークンが
得られる
Cognito Federated Identities
IDプロバイダと認証連携して、
ロールを使った一時的なAWS認証
情報を得られる。
主にモバイル向けに認証機能を提供するサービス
Cognito Sync
アプリケーションにデバイス間でユーザ出た
の同期を実現できるサービスとライブラリ。
Amazon API Gateway
REST APIを実現するリバースプロキシとして
動作
OS、キャパシティ等インフラの管理不要
認証・認可をメソッド単位で制御可能
• 標準:AWS認証情報
• カスタム:Lambdaで任意に実装可
APIに必要なスロットリング、キャッシュの
機能を提供
バックエンドとしてLambda、既存Webシステ
ムを利用可能
Web APIの作成・保護・運⽤と公開を簡単に
モバイル
アプリ
Webサイト
サービス
API
Gatew
ay Lambda
API Gateway
キャッシュ
EC2 /
Elastic Beanstalk
Webサービス
CloudWatch
モニタリング
Lambda
カスタム オーソライザー
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS上での実現パターン
user001
********
login
ブラウザ
□□□ Web
+ 認証機能ID/Passwodでの
認証・Cookie発行
Cookieベースでの認証
Cookie ユーザレポジトリ
&セッションストア
Webサイト
バックエンド
システムアプリの認証情報で
アクセス
API
サードパーティ
Webサイト
a f t g
サードパーティとの認
証連携
SAML
○○○ Web
セッション
ストア
内部や外部への認証連携
サードパーティ
Webサイト
AWSのマネージドサービス
AWSリソースに
直接アクセス
代理アクセスできる
トークン発行
OAuth
トークンで
APIにアクセス
API
① コンシューマ向けWebサイト
ID/Passwodでの認証・Cookie発行
Cookieベースでの認証
→
user001
********
login
ブラウザ
□□□ Web
+ 認証機能ID/Passwodでの
認証・Cookie発行
Cookieベースでの認証
Cookie ユーザレポジトリ
&セッションストア
認証はAWS上でも実装方法に違いは無し。
ユーザレポジトリには以下のものが使用可。
• Amazon DynamoDB
• Amazon RDS
ユーザレポジトリ
&セッションストア
user001
********
login
ブラウザ
□□□ Web
+ 認証機能ID/Passwodでの
認証・Cookie発行
Cookieベースでの認証
Cookie ユーザレポジトリ
&セッションストア
Webサイト
バックエンド
システムアプリの認証情報で
アクセス
API
サードパーティ
Webサイト
a f t g
サードパーティとの認
証連携
SAML
○○○ Web
セッション
ストア
内部や外部への認証連携
サードパーティ
Webサイト
AWSのマネージドサービス
AWSリソースに
直接アクセス
代理アクセスできる
トークン発行
OAuth
トークンで
APIにアクセス
API
① コンシューマ向けWebサイト
ブラウザからAWSリソースへのアクセス
→
S3とCloudFrontは認証の要否を設定でき、
認証方法の1つとして署名付きURLを利用で
きる。
生成されたURLは、長いパラメータが付いて
いますが単なるURLのため、HTML内にリン
ク先やイメージのURL、ファイルのアップ
ロード先に使用できる。
この方法は、Webサーバの負荷軽減、Web
サーバのステートレス化に役立つ。
user001
********
login
ブラウザ
AWSのマネージドサービス
AWSリソースに
直接アクセス
署名付きURLをサーバサイド生成することで直接アクセス
• Amazon S3
• Amazon CloudFront
例: https://s3-ap-northeast-
1.amazonaws.com/tsujiy-
share/blackbelt.pdf?Signature=3qU6GYLrhaqUsA
OZZs3%2BnkqEMFM%3D&Expires=1509937417
&AWSAccessKeyId=AKIAI5WBYZZKWLQO7XVA
署名付きURL
をリンク先に
■署名機能の違い
※ダウンロード回数制限や署名URLの失効はできない。URLの有効期限をかなり短くして、都度URLを生成する仕
組みで対応するのがおすすめ。
① コンシューマ向けWebサイト
S3 CloudFront ( + S3)
署名に必要な鍵 AWS認証情報
(IAMユーザ、IAMロール)
CloudFrontキーペア
署名時に独自ドメイン名 利用可(HTTPのみ) 利用可(HTTPSも)
署名時に行える制限 有効期限 有効期限、開始日時、IPアドレス
署名時のスケーラビリ
ティ
キーを適切に分散させればスケーラビリティ
が得られる
キャッシュによりさらに高いスケーラビリ
ティが得られる(認証情報でURLが異なって
いてもキャッシュ有効)
その他 - Cookieでも認証が可能で特定パス以下全体を
許可するなどが可能
user001
********
login
ブラウザ
□□□ Web
+ 認証機能ID/Passwodでの
認証・Cookie発行
Cookieベースでの認証
Cookie ユーザレポジトリ
&セッションストア
Webサイト
バックエンド
システムアプリの認証情報で
アクセス
API
サードパーティ
Webサイト
a f t g
サードパーティとの認
証連携
SAML
○○○ Web
セッション
ストア
内部や外部への認証連携
サードパーティ
Webサイト
AWSのマネージドサービス
AWSリソースに
直接アクセス
代理アクセスできる
トークン発行
OAuth
トークンで
APIにアクセス
API
① コンシューマ向けWebサイト
アプリの認証情報でアクセス
→
EC2 インスタンスプロファイルを使うと EC2
インスタンス内で、AWS 認証情報を入手で
きる。
パラメータストアでは、パスワードやDB接
続文字列など任意の文字列を入手できる。
アプリケーション プログラムと認証情報を
分離できるため、パスワードなどの流出を防
ぎやすくなる。
アプリと認証情報を分離し、安全に管理
• EC2 インスタンスプロファイル
• EC2 Systems Manager パラメータストア
バックエンド
システムアプリの認証情報で
アクセス
API
AWSのマネージドサービス
user001
********
login
ブラウザ
□□□ Web
+ 認証機能ID/Passwodでの
認証・Cookie発行
Cookieベースでの認証
Cookie ユーザレポジトリ
&セッションストア
Webサイト
バックエンド
システムアプリの認証情報で
アクセス
API
サードパーティ
Webサイト
a f t g
サードパーティとの認
証連携
SAML
○○○ Web
セッション
ストア
内部や外部への認証連携
サードパーティ
Webサイト
AWSのマネージドサービス
AWSリソースに
直接アクセス
代理アクセスできる
トークン発行
OAuth
トークンで
APIにアクセス
API
① コンシューマ向けWebサイト
サードパーティとの認証連携
内部との認証連携
代理アクセス
→ AWS上でも実装方法に違いは無し。
user001
********
login
ブラウザ
サードパーティ
Webサイト
a f t g
サードパーティとの認
証連携
SAML
内部や外部への認証連携
サードパーティ
Webサイト
代理アクセスできる
トークン発行
OAuth
トークンで
APIにアクセス
API
SAML
□□□ API
+ 認証機能
サードパーティ
Webサイト
a f t g
サードパーティとの
認証連携
ID/Passwodでの認証・
トークン発行
② モバイルアプリやシングルページアプリケーショ
ン
代理アクセスできる
トークン発行
サードパーティ
Webサイト
OAuth
AWSのマネージドサービス
トークンで
APIにアクセス AWSリソースに
直接アクセス
バックエンド
システムアプリの認証情報で
アクセス
API
バックエンド
トークン ベースでの認証
API
API
トークン
○○○ API
ユーザレポジトリ
モバイル
アプリ
シングル
ページ
アプリケーション
トークン ベースでの認証
API
トークン
○○○ API
API
AWSのマネージドサービス
AWSリソースに
直接アクセス
ID/Passwodでの認証・
トークン発行
ID/Passwodでの認証・トークン発行
トークンベースでの認証
ブラウザからAWSリソースへのアクセス
→ ユーザ認証・ユーザレポジトリ・
トークン発行をサービスで実現
• Amazon Cognito
Cognito
ID/Passwodでの認証・
トークン発行
認証に関連する内容を一通りサービスで
実現できるため、実装コストや期間を
減らすことができる。
Eメールや携帯電話番号へのSMSを使った
MFAも可能。
② モバイルアプリやシングルページアプリケーション
Cognito User Poolを使用した場合のユーザ認証のおおまかな流れ
標準ではSecure Remote Passwordプロトコルという仕組み
でユーザ名とパスワードが検証される。
アプリ :InitiateAuth APIを呼び出す。
認証フローとしてUSER_SRP_AUTHを指定。
Cognito :チャレンジを返す。
チャレンジの種類としてPASSWORD_VERIFIERを返し、
パスワードの検証を求める。
アプリ :RespondToAuthChallenge APIを呼び出す。
パスワードを使って生成したチャレンジレスポンスを送る。
Cognito :3種類トークンを返す。
・IDトークン(JWT形式、クレーム情報と認証用)
・アクセストークン(JWT形式、認証用)
・更新トークン(他トークン更新依頼時用)
JWTトークン
Cognito
User PoolAPI (JSON)
http://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/amazon-cognito-user-pools-authentication-flow.html
初回アクセス、ID/Password認証
JWT
トークン
モバイル
アプリ
シングル
ページ
アプリケーション
user001
********
login
SDK
iOS, Android, JavaScript
1
2
3
4
1
2
3
4
アプリ :独自のAPIを呼び出す。
Cognitoから受け取ったJWTトークンをAPIサーバへの呼び
出しに含める。
APIサーバ:JWTセットをダウンロードする。
APIサーバ :トークンを検証して、結果を返す。
JWTセットに含まれる公開鍵でユーザから受け取った
JWTトークンの署名を検証して、OKであれば、
リクエストされたAPIを処理して結果を返す。
② モバイルアプリやシングルページアプリケーション
Cognito User Poolを使用した場合のユーザ認証のおおまかな流れ
API
http://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/amazon-cognito-user-pools-using-tokens-with-identity-
providers.html#amazon-cognito-identity-user-pools-using-id-and-access-tokens-in-web-api
2回目以降のアクセス、独自APIサーバへのトークンベースの認証
APIサーバ
モバイル
アプリ
シングル
ページ
アプリケーション
user001
********
login
SDK
iOS, Android, JavaScript
JWT
セット
JWT
トークン
Cognito
User Pool
JWTトークンの検証は
注意して実装
1
4
2 3
1
2
4
3
アプリ :API Gatewayを呼び出す。
Cognitoから受け取ったJWTトークンをAPI Gatewayへの呼
び出しに含める。
API Gateway:JWTトークンを検証して、
Lambdaを呼び出す。
API Gateway :結果を返す。
JWTセットに含まれる公開鍵でユーザから受け取った
JWTトークンの署名を検証して、OKであれば、
リクエストされたAPIを処理して結果を返す。
② モバイルアプリやシングルページアプリケーション
Cognito User Poolを使用した場合のユーザ認証のおおまかな流れ
API
http://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html
2回目以降のアクセス、API Gatewayへトークンベースの認証
API Gateway
モバイル
アプリ
シングル
ページ
アプリケーション
user001
********
login
SDK
iOS, Android, JavaScript
JWT
トークン
1
3
1
2
3
2
Lambda
② モバイルアプリやシングルページアプリケーション
Cognito User Poolを使用した場合のユーザ認証のおおまかな流れ
API
http://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-integrating-user-pools-with-identity-pools.html
2回目以降のアクセス、AWSリソースへの認証
AWSの
マネージドサービス
モバイル
アプリ
シングル
ページ
アプリケーション
user001
********
login
SDK
iOS, Android, JavaScript
AWS
認証情報
API
JWT
トークン
アプリ :GetCredentialsForIdentity APIを呼び出す。
Cognito User Poolから受け取ったJWTトークンをCognito
Federated Identitiesに渡す。
Cognito :AWS認証情報を返す。
認証情報は一時的なもので、アクセスキー、シークレット
アクセスキー、トークンで構成されている。
アプリ :AWS認証情報を使ってAWSの他のサービス
にアクセスする。
AWSサービス:結果を返す。
Cognito
Federated Identities
1
2
3
4
1
2
3
4
□□□ API
+ 認証機能
サードパーティ
Webサイト
a f t g
サードパーティとの
認証連携
ID/Passwodでの認証・
トークン発行
② モバイルアプリやシングルページアプリケーショ
ン
サードパーティとの認証連携
→
代理アクセスできる
トークン発行
サードパーティ
Webサイト
OAuth
AWSのマネージドサービス
トークンで
APIにアクセス AWSリソースに
直接アクセス
バックエンド
システムアプリの認証情報で
アクセス
API
バックエンド
トークン ベースでの認証
API
API
トークン
○○○ API
ユーザレポジトリ
モバイル
アプリ
シングル
ページ
アプリケーション
トークン
サードパーティ
Webサイト
a f t g
SAML
Amazon, Facebook, Google, SAML との
認証連携をサービスで実現
• Amazon Cognito
Cognitoサードパーティとの
認証連携
ユーザ認証に使用できるCognito User Pool
で認証連携も行える。
※Cognito User PoolはOpenID Connect、Twitterには現時点で未対応。
Cognito Federated IdentitiesはOpenID Connect、Twitterに対応しており、
AWS認証情報を得られる。
SAML
□□□ API
+ 認証機能
サードパーティ
Webサイト
a f t g
サードパーティとの
認証連携
ID/Passwodでの認証・
トークン発行
② モバイルアプリやシングルページアプリケーショ
ン
代理アクセスできる
トークン発行
サードパーティ
Webサイト
OAuth
AWSのマネージドサービス
トークンで
APIにアクセス AWSリソースに
直接アクセス
バックエンド
システムアプリの認証情報で
アクセス
API
バックエンド
トークン ベースでの認証
API
API
トークン
○○○ API
ユーザレポジトリ
モバイル
アプリ
シングル
ページ
アプリケーション
トークン
API
AWSのマネージドサービス
AWSリソースに
直接アクセス
ID/Passwodでの認証・
トークン発行
ID/Passwodでの認証・トークン発行
ブラウザからAWSリソースへのアクセス
Cognitoで対応できない方法で実現したい場合
→
以下のような場合、独自で認証を実現する
事が考えられる。
• クライアント証明書認証
• 独自のMFA
• 独自ポリシーのパスワード認証
独自に認証してAWSの認証情報を発行
• AWS Security Token Service (STS)
□□□ API
+ 認証機能
サードパーティ
Webサイト
a f t g
サードパーティとの
認証連携
ID/Passwodでの認証・
トークン発行
② モバイルアプリやシングルページアプリケーショ
ン
トークンベースの認証
→
代理アクセスできる
トークン発行
サードパーティ
Webサイト
OAuth
AWSのマネージドサービス
トークンで
APIにアクセス AWSリソースに
直接アクセス
バックエンド
システムアプリの認証情報で
アクセス
API
バックエンド
トークン ベースでの認証
API
API
トークン
○○○ API
ユーザレポジトリ
モバイル
アプリ
シングル
ページ
アプリケーション
標準でAWSの認証情報に対応しており、認
証・認可をパスしたアクセスのみEC2や
Lambdaなどに送ることができる。
Custom Authorizerで独自のトークンにも
対応できる。
トークン ベースでの認証
API
API
AWSの認証情報を使った認証・認可を
サービスで実現
• Amazon API Gateway
サードパーティ
Webサイト
a f t g
SAML
サードパーティとの
認証連携
□□□ API
+ 認証機能
サードパーティ
Webサイト
a f t g
サードパーティとの
認証連携
ID/Passwodでの認証・
トークン発行
② モバイルアプリやシングルページアプリケーショ
ン
代理アクセス
→
代理アクセスできる
トークン発行
サードパーティ
Webサイト
OAuth
AWSのマネージドサービス
トークンで
APIにアクセス AWSリソースに
直接アクセス
バックエンド
システムアプリの認証情報で
アクセス
API
バックエンド
トークン ベースでの認証
API
API
トークン
○○○ API
ユーザレポジトリ
モバイル
アプリ
シングル
ページ
アプリケーション
ユーザ認証に使用できるCognito User Pool
で代理アクセスを実現できるOAuthプロコ
ルに対応して、トークンをサードパーティ
Webサイトに提供も行える。
サードパーティ
Webサイト
OAuth
トークンで
APIにアクセス
API
代理アクセスできる
トークン発行
OAuth を使った代理アクセス機能を実現
• Amazon Cognito
Cognito
SAML
user001
********
login
社員PC
Active Directory
Federation Service
(ADFS, IdP)
Acitve Directory
Linux/Unix系
Webサーバ
インターネット
サードパーティ
SaaS
ユーザ
レポジトリ
SAML対応
Webサーバ
Webサーバ
サードパーティ
との認証連携
SSO製品
社内での認証連携
Webサーバ
ID/Passwodでの認証
統合Windows認証
/ Kerberos認証
Acitve Directory
③ エンタープライズ企業の社内システム
Active Directory (AD)
→
認証を利用するリソースをAWS上に
配置するなどのユースケースで
Directory ServiceのMicrosoft ADを利用で
きる。
ただし、既存のADを完全にAWS上に置き
換えたいなどの場合は、移行コストを考え
るとEC2上のWindows Serverで実現する方
が良い。
ADの構築運用をサービスで実現
• AWS Directory Service
• Amazon EC2 Systems Manager Config
user001
********
login
社員PC
Webサーバ統合Windows認証
/ Kerberos認証
インスタンス作成時に
ドメインの自動参加
SAML
user001
********
login
社員PC
Active Directory
Federation Service
(ADFS, IdP)
Acitve Directory
Linux/Unix系
Webサーバ
インターネット
サードパーティ
SaaS
ユーザ
レポジトリ
SAML対応
Webサーバ
Webサーバ
サードパーティ
との認証連携
SSO製品
社内での認証連携
Webサーバ
ID/Passwodでの認証
統合Windows認証
/ Kerberos認証
③ エンタープライズ企業の社内システム
ID/Passwordでの認証
社内での認証連携
サードパーティとの認証連携
→ AWS上でも実装方法に違いは無し。
SAML
user001
********
login
社員PC
Active Directory
Federation Service
(ADFS, IdP)
Linux/Unix系
Webサーバ
インターネット
サードパーティ
SaaS
ユーザ
レポジトリ
SAML対応
Webサーバ
サードパーティ
との認証連携
SSO製品
社内での認証連携
Webサーバ
ID/Passwodでの認証
組み合わせ: API Gateway + CloudFrontの署名Cookie
認証あり静的Webサイトを実現
• Amazon CloudFront + Amazon S3
Cookie
Cookieベースでの認証
CloudFront S3
API Gateway Lambda
トークンでの認証
・Cookie発行
トークン
ID/Passwodでの認証
・トークン発行
Cognito
user001
********
login
ブラウザ
認証部分のみHTML+JavaScriptでクライア
ント部分を実装し、認証後はCookieを元に
単純な静的Webサイトを提供できる。
サードパーティ
Webサイト
a f t g
サードパーティとの
認証連携
SAML
最後に
認証機能はセンシティブで
ユーザエクスペリエンスにも影響する。
マネージドサービスを使える所は使おう。
の組み合わせは特におすすめ。
Cognito API
Gateway
参考URL
S3 署名付きURLを使ったダウンロード/アップロード:
http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/ShareObjectPreSignedURL.html
http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/PresignedUrlUploadObject.html
CloudFront署名付きURL/Cookie:
http://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-urls.html
http://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-cookies.html
EC2 インスタンスプロファイル:
http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html
EC2 Systems Manager パラメータストア:
https://aws.amazon.com/jp/ec2/systems-manager/parameter-store/
http://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/systems-manager-paramstore.html
AWS re:Invent 2016: Serverless Authentication and Authorization (MBL306)
https://www.slideshare.net/AmazonWebServices/aws-reinvent-2016-serverless-authentication-and-authorization-identity-
management-for-serverless-architectures-mbl306
AWS re:Invent 2016: Add User Sign-In, User Management, and Security to your Mobile and Web Applications with Amazon
Cognito (MBL310)
https://www.slideshare.net/AmazonWebServices/aws-reinvent-2016-add-user-signin-user-management-and-security-to-
your-mobile-and-web-applications-with-amazon-cognito-mbl310
オンラインセミナー資料の配置場所
AWS クラウドサービス活用資料集
• http://aws.amazon.com/jp/aws-jp-introduction/
AWS Solutions Architect ブログ
• 最新の情報、セミナー中のQ&A等が掲載されています
• http://aws.typepad.com/sajp/
@awscloud_jp
検索
最新技術情報、イベント情報、お役立ち情報、
お得なキャンペーン情報などを日々更新しています!
もしくは
http://on.fb.me/1vR8yWm
公式Twitter/Facebook
AWSの最新情報をお届けします
AWSの導入、お問い合わせのご相談
AWSクラウド導入に関するご質問、お見積り、資料請求を
ご希望のお客様は以下のリンクよりお気軽にご相談ください
https://aws.amazon.com/jp/contact-us/aws-sales/
※「AWS 問い合わせ」で検索してください
AWS Well Architected 個別技術相談会のお知らせ
Well Architectedフレームワークに基づく数十個の質問項目を元に、お客
様がAWS上で構築するシステムに潜むリスクやその回避方法をお伝えす
る個別相談会
https://pages.awscloud.com/well-architected-consulting-2017Q4-jp.html
参加無料
毎週火曜・木曜開催
ご参加ありがとうございました

More Related Content

What's hot

20190731 Black Belt Online Seminar Amazon ECS Deep Dive
20190731 Black Belt Online Seminar Amazon ECS Deep Dive20190731 Black Belt Online Seminar Amazon ECS Deep Dive
20190731 Black Belt Online Seminar Amazon ECS Deep DiveAmazon Web Services Japan
 
AWS Black Belt Online Seminar 2017 Amazon DynamoDB
AWS Black Belt Online Seminar 2017 Amazon DynamoDB AWS Black Belt Online Seminar 2017 Amazon DynamoDB
AWS Black Belt Online Seminar 2017 Amazon DynamoDB Amazon Web Services Japan
 
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model  20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model Amazon Web Services Japan
 
20200617 AWS Black Belt Online Seminar Amazon Athena
20200617 AWS Black Belt Online Seminar Amazon Athena20200617 AWS Black Belt Online Seminar Amazon Athena
20200617 AWS Black Belt Online Seminar Amazon AthenaAmazon Web Services Japan
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Amazon Web Services Japan
 
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報Amazon Web Services Japan
 
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPNAmazon Web Services Japan
 
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch ServiceAmazon Web Services Japan
 
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)Amazon Web Services Japan
 
20190514 AWS Black Belt Online Seminar Amazon API Gateway
20190514 AWS Black Belt Online Seminar Amazon API Gateway 20190514 AWS Black Belt Online Seminar Amazon API Gateway
20190514 AWS Black Belt Online Seminar Amazon API Gateway Amazon Web Services Japan
 
AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
AWS Black Belt Online Seminar 2017 AWS Elastic BeanstalkAWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
AWS Black Belt Online Seminar 2017 AWS Elastic BeanstalkAmazon Web Services Japan
 
20200721 AWS Black Belt Online Seminar AWS App Mesh
20200721 AWS Black Belt Online Seminar AWS App Mesh20200721 AWS Black Belt Online Seminar AWS App Mesh
20200721 AWS Black Belt Online Seminar AWS App MeshAmazon Web Services Japan
 
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...Amazon Web Services Japan
 
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...Amazon Web Services Japan
 
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)Amazon Web Services Japan
 
AWS Black Belt Online Seminar 2017 Amazon Kinesis
AWS Black Belt Online Seminar 2017 Amazon KinesisAWS Black Belt Online Seminar 2017 Amazon Kinesis
AWS Black Belt Online Seminar 2017 Amazon KinesisAmazon Web Services Japan
 
20200722 AWS Black Belt Online Seminar AWSアカウント シングルサインオンの設計と運用
20200722 AWS Black Belt Online Seminar AWSアカウント シングルサインオンの設計と運用20200722 AWS Black Belt Online Seminar AWSアカウント シングルサインオンの設計と運用
20200722 AWS Black Belt Online Seminar AWSアカウント シングルサインオンの設計と運用Amazon Web Services Japan
 
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)Amazon Web Services Japan
 

What's hot (20)

20190731 Black Belt Online Seminar Amazon ECS Deep Dive
20190731 Black Belt Online Seminar Amazon ECS Deep Dive20190731 Black Belt Online Seminar Amazon ECS Deep Dive
20190731 Black Belt Online Seminar Amazon ECS Deep Dive
 
AWS Black Belt Online Seminar 2017 Amazon DynamoDB
AWS Black Belt Online Seminar 2017 Amazon DynamoDB AWS Black Belt Online Seminar 2017 Amazon DynamoDB
AWS Black Belt Online Seminar 2017 Amazon DynamoDB
 
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model  20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
 
20200617 AWS Black Belt Online Seminar Amazon Athena
20200617 AWS Black Belt Online Seminar Amazon Athena20200617 AWS Black Belt Online Seminar Amazon Athena
20200617 AWS Black Belt Online Seminar Amazon Athena
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
 
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
 
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
 
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
 
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
 
20190514 AWS Black Belt Online Seminar Amazon API Gateway
20190514 AWS Black Belt Online Seminar Amazon API Gateway 20190514 AWS Black Belt Online Seminar Amazon API Gateway
20190514 AWS Black Belt Online Seminar Amazon API Gateway
 
AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
AWS Black Belt Online Seminar 2017 AWS Elastic BeanstalkAWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
 
20200721 AWS Black Belt Online Seminar AWS App Mesh
20200721 AWS Black Belt Online Seminar AWS App Mesh20200721 AWS Black Belt Online Seminar AWS App Mesh
20200721 AWS Black Belt Online Seminar AWS App Mesh
 
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
 
Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022
 
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
 
AWS CLIでAssumeRole
AWS CLIでAssumeRoleAWS CLIでAssumeRole
AWS CLIでAssumeRole
 
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
 
AWS Black Belt Online Seminar 2017 Amazon Kinesis
AWS Black Belt Online Seminar 2017 Amazon KinesisAWS Black Belt Online Seminar 2017 Amazon Kinesis
AWS Black Belt Online Seminar 2017 Amazon Kinesis
 
20200722 AWS Black Belt Online Seminar AWSアカウント シングルサインオンの設計と運用
20200722 AWS Black Belt Online Seminar AWSアカウント シングルサインオンの設計と運用20200722 AWS Black Belt Online Seminar AWSアカウント シングルサインオンの設計と運用
20200722 AWS Black Belt Online Seminar AWSアカウント シングルサインオンの設計と運用
 
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
 

Viewers also liked

みんなのTerraformで AWSをテラフォーミングさせるぜ
みんなのTerraformで AWSをテラフォーミングさせるぜみんなのTerraformで AWSをテラフォーミングさせるぜ
みんなのTerraformで AWSをテラフォーミングさせるぜTakamasa Sakai
 
AWSマイスターシリーズReloaded -Amazon Glacier-
AWSマイスターシリーズReloaded -Amazon Glacier-AWSマイスターシリーズReloaded -Amazon Glacier-
AWSマイスターシリーズReloaded -Amazon Glacier-Amazon Web Services Japan
 
Slack Appsでやれる事を確認した。年内日本語化されるんで、急ぎで!
Slack Appsでやれる事を確認した。年内日本語化されるんで、急ぎで!Slack Appsでやれる事を確認した。年内日本語化されるんで、急ぎで!
Slack Appsでやれる事を確認した。年内日本語化されるんで、急ぎで!Yasuyuki Ogawa
 
一年目がWatsonを調べてみた Discovery編
一年目がWatsonを調べてみた Discovery編一年目がWatsonを調べてみた Discovery編
一年目がWatsonを調べてみた Discovery編Jin Hirokawa
 
Watson Build Challengeに参加してみた
Watson Build Challengeに参加してみたWatson Build Challengeに参加してみた
Watson Build Challengeに参加してみたWataru Koyama
 
エクイティ型クラウドファンディングの詳細ルール(初期レビュー)
エクイティ型クラウドファンディングの詳細ルール(初期レビュー)エクイティ型クラウドファンディングの詳細ルール(初期レビュー)
エクイティ型クラウドファンディングの詳細ルール(初期レビュー)Masakazu Masujima
 
20171110 dev festa_vr
20171110 dev festa_vr20171110 dev festa_vr
20171110 dev festa_vrHideki Ojima
 
グローバルスタートアップの法務
グローバルスタートアップの法務グローバルスタートアップの法務
グローバルスタートアップの法務Masakazu Masujima
 
グローバル戦略におけるクラウド活用のポイント - AWS Summit Tokyo 2014 Day 1 : Keynote
グローバル戦略におけるクラウド活用のポイント - AWS Summit Tokyo 2014 Day 1 : Keynoteグローバル戦略におけるクラウド活用のポイント - AWS Summit Tokyo 2014 Day 1 : Keynote
グローバル戦略におけるクラウド活用のポイント - AWS Summit Tokyo 2014 Day 1 : KeynoteTakayuki Enomoto
 
EMS_コミュニティマーケティングのススメ_AWS_20140829
EMS_コミュニティマーケティングのススメ_AWS_20140829EMS_コミュニティマーケティングのススメ_AWS_20140829
EMS_コミュニティマーケティングのススメ_AWS_20140829Hideki Ojima
 
Japan's virtual currency regulation and its recent developments
Japan's virtual currency regulation and its recent developmentsJapan's virtual currency regulation and its recent developments
Japan's virtual currency regulation and its recent developmentsMasakazu Masujima
 
物体認識 IoT サービスを支える技術 〜クラウドアーキテクチャから組込み深層学習まで〜
物体認識 IoT サービスを支える技術 〜クラウドアーキテクチャから組込み深層学習まで〜物体認識 IoT サービスを支える技術 〜クラウドアーキテクチャから組込み深層学習まで〜
物体認識 IoT サービスを支える技術 〜クラウドアーキテクチャから組込み深層学習まで〜Takashi Kaneda
 
デジタルエコノミーに向けた法制度のあり方について
デジタルエコノミーに向けた法制度のあり方についてデジタルエコノミーに向けた法制度のあり方について
デジタルエコノミーに向けた法制度のあり方についてMasakazu Masujima
 
AWS Black Belt Tech シリーズ 2015 - re:Invent 2015 最新アップデート速報
AWS Black Belt Tech シリーズ 2015 - re:Invent 2015 最新アップデート速報AWS Black Belt Tech シリーズ 2015 - re:Invent 2015 最新アップデート速報
AWS Black Belt Tech シリーズ 2015 - re:Invent 2015 最新アップデート速報Amazon Web Services Japan
 
20170915 りゅうぎん コミュニティマーケティングのススメ
20170915 りゅうぎん コミュニティマーケティングのススメ20170915 りゅうぎん コミュニティマーケティングのススメ
20170915 りゅうぎん コミュニティマーケティングのススメHideki Ojima
 
AWS初心者向けWebinar 失敗例を成功に変える AWSアンチパターンのご紹介
AWS初心者向けWebinar 失敗例を成功に変える AWSアンチパターンのご紹介AWS初心者向けWebinar 失敗例を成功に変える AWSアンチパターンのご紹介
AWS初心者向けWebinar 失敗例を成功に変える AWSアンチパターンのご紹介Amazon Web Services Japan
 
Icoトークンセールスの最新事情
Icoトークンセールスの最新事情Icoトークンセールスの最新事情
Icoトークンセールスの最新事情Masakazu Masujima
 

Viewers also liked (20)

IoTLT(失敗編)
IoTLT(失敗編)IoTLT(失敗編)
IoTLT(失敗編)
 
みんなのTerraformで AWSをテラフォーミングさせるぜ
みんなのTerraformで AWSをテラフォーミングさせるぜみんなのTerraformで AWSをテラフォーミングさせるぜ
みんなのTerraformで AWSをテラフォーミングさせるぜ
 
AWSマイスターシリーズReloaded -Amazon Glacier-
AWSマイスターシリーズReloaded -Amazon Glacier-AWSマイスターシリーズReloaded -Amazon Glacier-
AWSマイスターシリーズReloaded -Amazon Glacier-
 
Slack Appsでやれる事を確認した。年内日本語化されるんで、急ぎで!
Slack Appsでやれる事を確認した。年内日本語化されるんで、急ぎで!Slack Appsでやれる事を確認した。年内日本語化されるんで、急ぎで!
Slack Appsでやれる事を確認した。年内日本語化されるんで、急ぎで!
 
一年目がWatsonを調べてみた Discovery編
一年目がWatsonを調べてみた Discovery編一年目がWatsonを調べてみた Discovery編
一年目がWatsonを調べてみた Discovery編
 
Watson Build Challengeに参加してみた
Watson Build Challengeに参加してみたWatson Build Challengeに参加してみた
Watson Build Challengeに参加してみた
 
エクイティ型クラウドファンディングの詳細ルール(初期レビュー)
エクイティ型クラウドファンディングの詳細ルール(初期レビュー)エクイティ型クラウドファンディングの詳細ルール(初期レビュー)
エクイティ型クラウドファンディングの詳細ルール(初期レビュー)
 
20171110 dev festa_vr
20171110 dev festa_vr20171110 dev festa_vr
20171110 dev festa_vr
 
グローバルスタートアップの法務
グローバルスタートアップの法務グローバルスタートアップの法務
グローバルスタートアップの法務
 
グローバル戦略におけるクラウド活用のポイント - AWS Summit Tokyo 2014 Day 1 : Keynote
グローバル戦略におけるクラウド活用のポイント - AWS Summit Tokyo 2014 Day 1 : Keynoteグローバル戦略におけるクラウド活用のポイント - AWS Summit Tokyo 2014 Day 1 : Keynote
グローバル戦略におけるクラウド活用のポイント - AWS Summit Tokyo 2014 Day 1 : Keynote
 
EMS_コミュニティマーケティングのススメ_AWS_20140829
EMS_コミュニティマーケティングのススメ_AWS_20140829EMS_コミュニティマーケティングのススメ_AWS_20140829
EMS_コミュニティマーケティングのススメ_AWS_20140829
 
Japan's virtual currency regulation and its recent developments
Japan's virtual currency regulation and its recent developmentsJapan's virtual currency regulation and its recent developments
Japan's virtual currency regulation and its recent developments
 
特盛!Heroku
特盛!Heroku特盛!Heroku
特盛!Heroku
 
物体認識 IoT サービスを支える技術 〜クラウドアーキテクチャから組込み深層学習まで〜
物体認識 IoT サービスを支える技術 〜クラウドアーキテクチャから組込み深層学習まで〜物体認識 IoT サービスを支える技術 〜クラウドアーキテクチャから組込み深層学習まで〜
物体認識 IoT サービスを支える技術 〜クラウドアーキテクチャから組込み深層学習まで〜
 
デジタルエコノミーに向けた法制度のあり方について
デジタルエコノミーに向けた法制度のあり方についてデジタルエコノミーに向けた法制度のあり方について
デジタルエコノミーに向けた法制度のあり方について
 
AWS Black Belt Tech シリーズ 2015 - re:Invent 2015 最新アップデート速報
AWS Black Belt Tech シリーズ 2015 - re:Invent 2015 最新アップデート速報AWS Black Belt Tech シリーズ 2015 - re:Invent 2015 最新アップデート速報
AWS Black Belt Tech シリーズ 2015 - re:Invent 2015 最新アップデート速報
 
Oracle
OracleOracle
Oracle
 
20170915 りゅうぎん コミュニティマーケティングのススメ
20170915 りゅうぎん コミュニティマーケティングのススメ20170915 りゅうぎん コミュニティマーケティングのススメ
20170915 りゅうぎん コミュニティマーケティングのススメ
 
AWS初心者向けWebinar 失敗例を成功に変える AWSアンチパターンのご紹介
AWS初心者向けWebinar 失敗例を成功に変える AWSアンチパターンのご紹介AWS初心者向けWebinar 失敗例を成功に変える AWSアンチパターンのご紹介
AWS初心者向けWebinar 失敗例を成功に変える AWSアンチパターンのご紹介
 
Icoトークンセールスの最新事情
Icoトークンセールスの最新事情Icoトークンセールスの最新事情
Icoトークンセールスの最新事情
 

Similar to AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介

AWS Black Belt Online Seminar 2018 re:Invent recap IoT and DevOps
AWS Black Belt Online Seminar 2018 re:Invent recap IoT and DevOpsAWS Black Belt Online Seminar 2018 re:Invent recap IoT and DevOps
AWS Black Belt Online Seminar 2018 re:Invent recap IoT and DevOpsAmazon Web Services Japan
 
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用Amazon Web Services Japan
 
AWS Black Belt Online Seminar 2017 AWS Cognito
AWS Black Belt Online Seminar 2017 AWS CognitoAWS Black Belt Online Seminar 2017 AWS Cognito
AWS Black Belt Online Seminar 2017 AWS CognitoAmazon Web Services Japan
 
AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)Keisuke Nishitani
 
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターンAWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターンAmazon Web Services Japan
 
AWS リモートワークソリューション
AWS リモートワークソリューションAWS リモートワークソリューション
AWS リモートワークソリューションKameda Harunobu
 
Scale Your Business without Servers
Scale Your Business without ServersScale Your Business without Servers
Scale Your Business without ServersKeisuke Nishitani
 
PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530
PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530
PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530崇之 清水
 
AWS におけるモニタリングとセキュリティの基本について - "毎日のAWSのための監視、運用、セキュリティ最適化セミナー" -
AWS におけるモニタリングとセキュリティの基本について - "毎日のAWSのための監視、運用、セキュリティ最適化セミナー" -AWS におけるモニタリングとセキュリティの基本について - "毎日のAWSのための監視、運用、セキュリティ最適化セミナー" -
AWS におけるモニタリングとセキュリティの基本について - "毎日のAWSのための監視、運用、セキュリティ最適化セミナー" -Takanori Ohba
 
AWS IoTのい・ろ・は
AWS IoTのい・ろ・はAWS IoTのい・ろ・は
AWS IoTのい・ろ・はDaiki Mori
 
AWSについて @ JAWS-UG 沖縄 CMS祭り!
AWSについて @ JAWS-UG 沖縄 CMS祭り!AWSについて @ JAWS-UG 沖縄 CMS祭り!
AWSについて @ JAWS-UG 沖縄 CMS祭り!Yasuhiro Horiuchi
 
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発Yuki Ando
 
拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -
拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -
拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -Yasuhiro Horiuchi
 
Swaggerで始めるモデルファーストなAPI開発
Swaggerで始めるモデルファーストなAPI開発Swaggerで始めるモデルファーストなAPI開発
Swaggerで始めるモデルファーストなAPI開発Takuro Sasaki
 
AWS Black Belt Online Seminar 2017 AWS Summit Tokyo 2017 まとめ
AWS Black Belt Online Seminar 2017 AWS Summit Tokyo 2017 まとめAWS Black Belt Online Seminar 2017 AWS Summit Tokyo 2017 まとめ
AWS Black Belt Online Seminar 2017 AWS Summit Tokyo 2017 まとめAmazon Web Services Japan
 
AWS Black Belt Online Seminar コストの観点から見るアカウント管理
AWS Black Belt Online Seminar コストの観点から見るアカウント管理AWS Black Belt Online Seminar コストの観点から見るアカウント管理
AWS Black Belt Online Seminar コストの観点から見るアカウント管理Amazon Web Services Japan
 
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 ~メディア露出時のピーク対策編~ 先生:高山 博史・今井 雄太
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 ~メディア露出時のピーク対策編~ 先生:高山 博史・今井 雄太スタートアップならおさえておきたいAWS(Amazon Web Services)入門 ~メディア露出時のピーク対策編~ 先生:高山 博史・今井 雄太
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 ~メディア露出時のピーク対策編~ 先生:高山 博史・今井 雄太schoowebcampus
 

Similar to AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介 (20)

AWS Black Belt Online Seminar 2018 re:Invent recap IoT and DevOps
AWS Black Belt Online Seminar 2018 re:Invent recap IoT and DevOpsAWS Black Belt Online Seminar 2018 re:Invent recap IoT and DevOps
AWS Black Belt Online Seminar 2018 re:Invent recap IoT and DevOps
 
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
 
AWS Black Belt Online Seminar 2017 AWS Cognito
AWS Black Belt Online Seminar 2017 AWS CognitoAWS Black Belt Online Seminar 2017 AWS Cognito
AWS Black Belt Online Seminar 2017 AWS Cognito
 
AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)
 
AWS Black Belt Online Seminar 2016 AWS IoT
AWS Black Belt Online Seminar 2016 AWS IoTAWS Black Belt Online Seminar 2016 AWS IoT
AWS Black Belt Online Seminar 2016 AWS IoT
 
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターンAWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
 
AWS リモートワークソリューション
AWS リモートワークソリューションAWS リモートワークソリューション
AWS リモートワークソリューション
 
はじめてのAWS CLI
はじめてのAWS CLIはじめてのAWS CLI
はじめてのAWS CLI
 
Scale Your Business without Servers
Scale Your Business without ServersScale Your Business without Servers
Scale Your Business without Servers
 
PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530
PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530
PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530
 
AWS におけるモニタリングとセキュリティの基本について - "毎日のAWSのための監視、運用、セキュリティ最適化セミナー" -
AWS におけるモニタリングとセキュリティの基本について - "毎日のAWSのための監視、運用、セキュリティ最適化セミナー" -AWS におけるモニタリングとセキュリティの基本について - "毎日のAWSのための監視、運用、セキュリティ最適化セミナー" -
AWS におけるモニタリングとセキュリティの基本について - "毎日のAWSのための監視、運用、セキュリティ最適化セミナー" -
 
AWS IoTのい・ろ・は
AWS IoTのい・ろ・はAWS IoTのい・ろ・は
AWS IoTのい・ろ・は
 
AWSについて @ JAWS-UG 沖縄 CMS祭り!
AWSについて @ JAWS-UG 沖縄 CMS祭り!AWSについて @ JAWS-UG 沖縄 CMS祭り!
AWSについて @ JAWS-UG 沖縄 CMS祭り!
 
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
 
拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -
拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -
拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -
 
Swaggerで始めるモデルファーストなAPI開発
Swaggerで始めるモデルファーストなAPI開発Swaggerで始めるモデルファーストなAPI開発
Swaggerで始めるモデルファーストなAPI開発
 
AWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Techシリーズ AWS SDKAWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Techシリーズ AWS SDK
 
AWS Black Belt Online Seminar 2017 AWS Summit Tokyo 2017 まとめ
AWS Black Belt Online Seminar 2017 AWS Summit Tokyo 2017 まとめAWS Black Belt Online Seminar 2017 AWS Summit Tokyo 2017 まとめ
AWS Black Belt Online Seminar 2017 AWS Summit Tokyo 2017 まとめ
 
AWS Black Belt Online Seminar コストの観点から見るアカウント管理
AWS Black Belt Online Seminar コストの観点から見るアカウント管理AWS Black Belt Online Seminar コストの観点から見るアカウント管理
AWS Black Belt Online Seminar コストの観点から見るアカウント管理
 
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 ~メディア露出時のピーク対策編~ 先生:高山 博史・今井 雄太
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 ~メディア露出時のピーク対策編~ 先生:高山 博史・今井 雄太スタートアップならおさえておきたいAWS(Amazon Web Services)入門 ~メディア露出時のピーク対策編~ 先生:高山 博史・今井 雄太
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 ~メディア露出時のピーク対策編~ 先生:高山 博史・今井 雄太
 

More from Amazon Web Services Japan

202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)Amazon Web Services Japan
 
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFSAmazon Web Services Japan
 
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device DefenderAmazon Web Services Japan
 
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現Amazon Web Services Japan
 
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...Amazon Web Services Japan
 
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデートAmazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデートAmazon Web Services Japan
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したことAmazon Web Services Japan
 
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用Amazon Web Services Japan
 
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdfAmazon Web Services Japan
 
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介Amazon Web Services Japan
 
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon Web Services Japan
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことAmazon Web Services Japan
 
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチAmazon Web Services Japan
 
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介Amazon Web Services Japan
 
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer ProfilesAmazon Web Services Japan
 
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Web Services Japan
 
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨Amazon Web Services Japan
 
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介Amazon Web Services Japan
 
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介Amazon Web Services Japan
 
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...Amazon Web Services Japan
 

More from Amazon Web Services Japan (20)

202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
 
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
 
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
 
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
 
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
 
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデートAmazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと
 
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
 
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
 
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
 
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDD
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
 
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
 
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
 
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
 
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
 
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
 
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
 
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
 
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
 

Recently uploaded

AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成Hiroshi Tomioka
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 

Recently uploaded (9)

AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 

AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介

  • 1. アマゾン ウェブ サービス ジャパン株式会社 ソリューションアーキテクト 辻 義一 2017.10.10 【AWS Black Belt Online Seminar】 AWSにおけるアプリ認証パターン
  • 2. AWS Black Belt Online Seminar とは AWSJのTechメンバがAWSに関する様々な事を紹介するオンラインセミナーです 【火曜 12:00〜13:00】 主にAWSのソリューションや 業界カットでの使いどころなどを紹介 (例:IoT、金融業界向け etc.) 【水曜 18:00〜19:00】 主にAWSサービスの紹介や アップデートの解説 (例:EC2、RDS、Lambda etc.) ※開催曜日と時間帯は変更となる場合がございます。 最新の情報は下記をご確認下さい。 オンラインセミナーのスケジュール&申し込みサイト https://aws.amazon.com/jp/about-aws/events/webinars/
  • 3. 内容についての注意点 • 本資料では2017年10月10日時点のサービス内容および価格についてご説明しています。最新の 情報はAWS公式ウェブサイト(http://aws.amazon.com)にてご確認ください。 • 資料作成には十分注意しておりますが、資料内の価格とAWS公式ウェブサイト記載の価格に相 違があった場合、AWS公式ウェブサイトの価格を優先とさせていただきます。 • 価格は税抜表記となっています。日本居住者のお客様が東京リージョンを使用する場合、別途 消費税をご請求させていただきます。 • AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to change in accordance with the AWS Customer Agreement available at http://aws.amazon.com/agreement/. Any pricing information included in this document is provided only as an estimate of usage charges for AWS services based on certain information that you have provided. Monthly charges will be based on your actual use of AWS services, and may vary from the estimates provided.
  • 5. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 用語について
  • 6. 用語の確認(1/2) 統一されておらず曖昧な用語もあるが、本ウェビナーでは以下の通りとする。 認証 = Authentication (AuthN) 相手が本当に申告された人であるかを確認すること。 認可 = Authorization (AuthZ) 特定の条件で特定のリソースへのアクセスを許可すること。 認証連携 = Federated Authentication, Federated Identity, ID Federation, Federation サードパーティで行われた認証情報を受け取って、認証を実施する代わりにすること。 アプリにとって認証を委譲していることになる。 別の用語例: 実現方法の例:SAML, OpenID, OpenID Connect 代理アクセス = Delegated Acccess ユーザ合意の上で、サード−パーティがユーザの代わりにリソースへのアクセスを許可すること。 ユーザにとって認可されている一部をサードパーティに委譲することになる。 実現方法の例:OAuth
  • 7. 用語の確認(2/2) 認証情報 = Credential 認証をパスするために必要な情報のこと。 具体例:ユーザ名とパスワード、IAMユーザのアクセスキーとシークレットアクセスキー トークン = Token, Ticket 認証をパスするために必要な情報で、一定期間のみ有効な情報のこと。 具体例:IAMロールで割り当てられるアクセスキーとシークレットアクセスキーとトークン、 SAMLで認証後に発行されるSAML Assertion、JWT (Json Web Token)
  • 8. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 本Webinarでの想定ユースケース 3パターン 勝手に 3分類
  • 10. ① コンシューマ向けWebサイト 初回認証、その後Cookieベース認証のイメージ ID/Passwordでまず認証し、その後の通信ではCookie内のセッションIDを常に確認する。 初回アクセス、ID/Password認証 ブラウザ: HTMLのフォームでID/Passwordを送信する。 Webサーバ: ユーザストアにID/Passwordを確認する Webサーバ: セッションにログイン情報を反映する。 Webサーバ: セッションIDが入ったCookieを含めて HTMLコンテンツを返す。 2回目以降のアクセス、Cookieベースの認証 ブラウザ: セッションIDが入ったCookieを含めてリクエストを送る。 Webサーバ:セッションIDがログイン済みかセッションストアに確認する。 Webサーバ: ログイン済みであればHTMLコンテンツを返す。 ブラウザ Webサーバ user001 ******** login ユーザレポジトリ セッションストア 1 4 5 1 7 2 3 6 2 3 4 5 6 7 Cookie
  • 11. ① コンシューマ向けWebサイト 典型的なWebサイト構成 WebのHTML生成は サーバサイドで実施 初回ユーザ認証後は、 Cookieベースでの認証 ユーザの状態を セッションストアに保持 user001 ******** login ブラウザ □□□ Web + 認証機能 ID/Passwodでの 認証・Cookie発行 Cookieベースでの認証 Cookie ユーザレポジトリ &セッションストア Webサイト バックエンド システムアプリの認証情報 でアクセス API サードパーティ Webサイト a f t g サードパーティとの 認証連携 SAML ○○○ Web セッション ストア 内部や外部への認証連携 サードパーティ Webサイト AWSのマネージドサービス AWSリソースに 直接アクセス 代理アクセスできる トークン発行 OAuth トークンで APIにアクセス API
  • 12. サードパーティ Webサイト サードパーティ Webサイト a f t g サードパーティとの 認証連携 OAuth AWSのマネージドサービス トークンで APIにアクセス 代理アクセスできる トークン発行 バックエンド SAML バックエンド システムアプリの認証情報 でアクセス API 外部への認証連携 AWSリソースに 直接アクセス モバイル アプリ ID/Passwodでの認証・ トークン発行 トークン ベースでの認証 API API トークン シングル ページ アプリケーション ○○○ API □□□ API + 認証機能 ユーザレポジトリ ② モバイルアプリやシングルページアプリケーショ ン サーバサイドはAPIで実現 サーバサイドは ステートレスな構成 モバイルアプリなど クライアントサイドの 画面はJavaScriptで構成 初回ユーザ認証後は、 トークンベースでの認証
  • 13. ② モバイルアプリやシングルページアプリケーショ ン 初回認証、その後トークンベース認証のイメージ ID/Passwordでまず認証し、その後の通信ではトークンを付けてリクエストを行う。 初回アクセス、ID/Password認証 アプリ: ユーザの入力したID/Passwordを取り出し て認証APIに送信する。 APIサーバ: ユーザストアにID/Passwordを確認する。 APIサーバ: トークンを返す。 2回目以降のアクセス、Cookieベースの認証 アプリ: トークンを付けてリクエストを送る。 APIサーバ: トークンを公開鍵暗号方などで検証する。 APIサーバ: リクエストに応じてレスポンスを返す。 APIサーバ ユーザレポジトリ 1 3 4 1 6 2 2 3 4 5 6 モバイル アプリ シングル ページ アプリケーション 5
  • 14. ③ エンタープライズ企業の社内システム SAML user001 ******** login 社員PC Active Directory Federation Service (ADFS, IdP) Acitve Directory Linux/Unix系 Webサーバ インターネット サードパーティ SaaS ユーザ レポジトリ SAML対応 Webサーバ Webサーバ サードパーティ との認証連携 SSO製品 社内での認証連携 Webサーバ ID/Passwodでの認証 統合Windows認証 / Kerberos認証 SSOやパスワード同期を実現 複数パスワード管理の煩雑さ やログインの手間を軽減する PCやサーバにWindowsが多数 使われるため、Windowsの認 証機能を活用 認証連携はSAMLで実現
  • 16. AWS IAM (Identity and Access Management) ユーザやロールに、何を 行ってよいか記載された ポリシーを割り当てて制 御する。 APIにアクセスする際に 使用する認証情報は • アクセスキー • シークレットアクセスキー • トークン(有効期限ありの場合のみ) で構成されている。 AWSのサービスは認証情 報をSigV4という方法で署 名をAPIリクエストに毎回 付けてアクセスする。 AWSのサービスへの認証と認可を管理するサービス EC2 起動、停止 S3 アップロード ダウンロード Management Console ユーザ名・ パスワード AWS管理者・ オペレータ SDK アクセスキー・ シークレット アクセスキー AWS CLI > API IAMユーザ IAMロール ユーザ、 アプリ、 サービスなど アクセスキー・ シークレット アクセスキー・ トークン
  • 17. Amazon Cognito Cognito User Pool アプリケーションにユーザー登録やサイ ンイン機能を追加できる。 • パスワードやMFAを使ったユーザ 認証、フェデレーションして認証 • 認証後に独自のアプリケーションで も検証可能なJWT形式のトークンが 得られる Cognito Federated Identities IDプロバイダと認証連携して、 ロールを使った一時的なAWS認証 情報を得られる。 主にモバイル向けに認証機能を提供するサービス Cognito Sync アプリケーションにデバイス間でユーザ出た の同期を実現できるサービスとライブラリ。
  • 18. Amazon API Gateway REST APIを実現するリバースプロキシとして 動作 OS、キャパシティ等インフラの管理不要 認証・認可をメソッド単位で制御可能 • 標準:AWS認証情報 • カスタム:Lambdaで任意に実装可 APIに必要なスロットリング、キャッシュの 機能を提供 バックエンドとしてLambda、既存Webシステ ムを利用可能 Web APIの作成・保護・運⽤と公開を簡単に モバイル アプリ Webサイト サービス API Gatew ay Lambda API Gateway キャッシュ EC2 / Elastic Beanstalk Webサービス CloudWatch モニタリング Lambda カスタム オーソライザー
  • 19. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS上での実現パターン
  • 20. user001 ******** login ブラウザ □□□ Web + 認証機能ID/Passwodでの 認証・Cookie発行 Cookieベースでの認証 Cookie ユーザレポジトリ &セッションストア Webサイト バックエンド システムアプリの認証情報で アクセス API サードパーティ Webサイト a f t g サードパーティとの認 証連携 SAML ○○○ Web セッション ストア 内部や外部への認証連携 サードパーティ Webサイト AWSのマネージドサービス AWSリソースに 直接アクセス 代理アクセスできる トークン発行 OAuth トークンで APIにアクセス API ① コンシューマ向けWebサイト ID/Passwodでの認証・Cookie発行 Cookieベースでの認証 → user001 ******** login ブラウザ □□□ Web + 認証機能ID/Passwodでの 認証・Cookie発行 Cookieベースでの認証 Cookie ユーザレポジトリ &セッションストア 認証はAWS上でも実装方法に違いは無し。 ユーザレポジトリには以下のものが使用可。 • Amazon DynamoDB • Amazon RDS ユーザレポジトリ &セッションストア
  • 21. user001 ******** login ブラウザ □□□ Web + 認証機能ID/Passwodでの 認証・Cookie発行 Cookieベースでの認証 Cookie ユーザレポジトリ &セッションストア Webサイト バックエンド システムアプリの認証情報で アクセス API サードパーティ Webサイト a f t g サードパーティとの認 証連携 SAML ○○○ Web セッション ストア 内部や外部への認証連携 サードパーティ Webサイト AWSのマネージドサービス AWSリソースに 直接アクセス 代理アクセスできる トークン発行 OAuth トークンで APIにアクセス API ① コンシューマ向けWebサイト ブラウザからAWSリソースへのアクセス → S3とCloudFrontは認証の要否を設定でき、 認証方法の1つとして署名付きURLを利用で きる。 生成されたURLは、長いパラメータが付いて いますが単なるURLのため、HTML内にリン ク先やイメージのURL、ファイルのアップ ロード先に使用できる。 この方法は、Webサーバの負荷軽減、Web サーバのステートレス化に役立つ。 user001 ******** login ブラウザ AWSのマネージドサービス AWSリソースに 直接アクセス 署名付きURLをサーバサイド生成することで直接アクセス • Amazon S3 • Amazon CloudFront 例: https://s3-ap-northeast- 1.amazonaws.com/tsujiy- share/blackbelt.pdf?Signature=3qU6GYLrhaqUsA OZZs3%2BnkqEMFM%3D&Expires=1509937417 &AWSAccessKeyId=AKIAI5WBYZZKWLQO7XVA 署名付きURL をリンク先に
  • 22. ■署名機能の違い ※ダウンロード回数制限や署名URLの失効はできない。URLの有効期限をかなり短くして、都度URLを生成する仕 組みで対応するのがおすすめ。 ① コンシューマ向けWebサイト S3 CloudFront ( + S3) 署名に必要な鍵 AWS認証情報 (IAMユーザ、IAMロール) CloudFrontキーペア 署名時に独自ドメイン名 利用可(HTTPのみ) 利用可(HTTPSも) 署名時に行える制限 有効期限 有効期限、開始日時、IPアドレス 署名時のスケーラビリ ティ キーを適切に分散させればスケーラビリティ が得られる キャッシュによりさらに高いスケーラビリ ティが得られる(認証情報でURLが異なって いてもキャッシュ有効) その他 - Cookieでも認証が可能で特定パス以下全体を 許可するなどが可能
  • 23. user001 ******** login ブラウザ □□□ Web + 認証機能ID/Passwodでの 認証・Cookie発行 Cookieベースでの認証 Cookie ユーザレポジトリ &セッションストア Webサイト バックエンド システムアプリの認証情報で アクセス API サードパーティ Webサイト a f t g サードパーティとの認 証連携 SAML ○○○ Web セッション ストア 内部や外部への認証連携 サードパーティ Webサイト AWSのマネージドサービス AWSリソースに 直接アクセス 代理アクセスできる トークン発行 OAuth トークンで APIにアクセス API ① コンシューマ向けWebサイト アプリの認証情報でアクセス → EC2 インスタンスプロファイルを使うと EC2 インスタンス内で、AWS 認証情報を入手で きる。 パラメータストアでは、パスワードやDB接 続文字列など任意の文字列を入手できる。 アプリケーション プログラムと認証情報を 分離できるため、パスワードなどの流出を防 ぎやすくなる。 アプリと認証情報を分離し、安全に管理 • EC2 インスタンスプロファイル • EC2 Systems Manager パラメータストア バックエンド システムアプリの認証情報で アクセス API AWSのマネージドサービス
  • 24. user001 ******** login ブラウザ □□□ Web + 認証機能ID/Passwodでの 認証・Cookie発行 Cookieベースでの認証 Cookie ユーザレポジトリ &セッションストア Webサイト バックエンド システムアプリの認証情報で アクセス API サードパーティ Webサイト a f t g サードパーティとの認 証連携 SAML ○○○ Web セッション ストア 内部や外部への認証連携 サードパーティ Webサイト AWSのマネージドサービス AWSリソースに 直接アクセス 代理アクセスできる トークン発行 OAuth トークンで APIにアクセス API ① コンシューマ向けWebサイト サードパーティとの認証連携 内部との認証連携 代理アクセス → AWS上でも実装方法に違いは無し。 user001 ******** login ブラウザ サードパーティ Webサイト a f t g サードパーティとの認 証連携 SAML 内部や外部への認証連携 サードパーティ Webサイト 代理アクセスできる トークン発行 OAuth トークンで APIにアクセス API
  • 25. SAML □□□ API + 認証機能 サードパーティ Webサイト a f t g サードパーティとの 認証連携 ID/Passwodでの認証・ トークン発行 ② モバイルアプリやシングルページアプリケーショ ン 代理アクセスできる トークン発行 サードパーティ Webサイト OAuth AWSのマネージドサービス トークンで APIにアクセス AWSリソースに 直接アクセス バックエンド システムアプリの認証情報で アクセス API バックエンド トークン ベースでの認証 API API トークン ○○○ API ユーザレポジトリ モバイル アプリ シングル ページ アプリケーション トークン ベースでの認証 API トークン ○○○ API API AWSのマネージドサービス AWSリソースに 直接アクセス ID/Passwodでの認証・ トークン発行 ID/Passwodでの認証・トークン発行 トークンベースでの認証 ブラウザからAWSリソースへのアクセス → ユーザ認証・ユーザレポジトリ・ トークン発行をサービスで実現 • Amazon Cognito Cognito ID/Passwodでの認証・ トークン発行 認証に関連する内容を一通りサービスで 実現できるため、実装コストや期間を 減らすことができる。 Eメールや携帯電話番号へのSMSを使った MFAも可能。
  • 26. ② モバイルアプリやシングルページアプリケーション Cognito User Poolを使用した場合のユーザ認証のおおまかな流れ 標準ではSecure Remote Passwordプロトコルという仕組み でユーザ名とパスワードが検証される。 アプリ :InitiateAuth APIを呼び出す。 認証フローとしてUSER_SRP_AUTHを指定。 Cognito :チャレンジを返す。 チャレンジの種類としてPASSWORD_VERIFIERを返し、 パスワードの検証を求める。 アプリ :RespondToAuthChallenge APIを呼び出す。 パスワードを使って生成したチャレンジレスポンスを送る。 Cognito :3種類トークンを返す。 ・IDトークン(JWT形式、クレーム情報と認証用) ・アクセストークン(JWT形式、認証用) ・更新トークン(他トークン更新依頼時用) JWTトークン Cognito User PoolAPI (JSON) http://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/amazon-cognito-user-pools-authentication-flow.html 初回アクセス、ID/Password認証 JWT トークン モバイル アプリ シングル ページ アプリケーション user001 ******** login SDK iOS, Android, JavaScript 1 2 3 4 1 2 3 4
  • 27. アプリ :独自のAPIを呼び出す。 Cognitoから受け取ったJWTトークンをAPIサーバへの呼び 出しに含める。 APIサーバ:JWTセットをダウンロードする。 APIサーバ :トークンを検証して、結果を返す。 JWTセットに含まれる公開鍵でユーザから受け取った JWTトークンの署名を検証して、OKであれば、 リクエストされたAPIを処理して結果を返す。 ② モバイルアプリやシングルページアプリケーション Cognito User Poolを使用した場合のユーザ認証のおおまかな流れ API http://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/amazon-cognito-user-pools-using-tokens-with-identity- providers.html#amazon-cognito-identity-user-pools-using-id-and-access-tokens-in-web-api 2回目以降のアクセス、独自APIサーバへのトークンベースの認証 APIサーバ モバイル アプリ シングル ページ アプリケーション user001 ******** login SDK iOS, Android, JavaScript JWT セット JWT トークン Cognito User Pool JWTトークンの検証は 注意して実装 1 4 2 3 1 2 4 3
  • 28. アプリ :API Gatewayを呼び出す。 Cognitoから受け取ったJWTトークンをAPI Gatewayへの呼 び出しに含める。 API Gateway:JWTトークンを検証して、 Lambdaを呼び出す。 API Gateway :結果を返す。 JWTセットに含まれる公開鍵でユーザから受け取った JWTトークンの署名を検証して、OKであれば、 リクエストされたAPIを処理して結果を返す。 ② モバイルアプリやシングルページアプリケーション Cognito User Poolを使用した場合のユーザ認証のおおまかな流れ API http://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html 2回目以降のアクセス、API Gatewayへトークンベースの認証 API Gateway モバイル アプリ シングル ページ アプリケーション user001 ******** login SDK iOS, Android, JavaScript JWT トークン 1 3 1 2 3 2 Lambda
  • 29. ② モバイルアプリやシングルページアプリケーション Cognito User Poolを使用した場合のユーザ認証のおおまかな流れ API http://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-integrating-user-pools-with-identity-pools.html 2回目以降のアクセス、AWSリソースへの認証 AWSの マネージドサービス モバイル アプリ シングル ページ アプリケーション user001 ******** login SDK iOS, Android, JavaScript AWS 認証情報 API JWT トークン アプリ :GetCredentialsForIdentity APIを呼び出す。 Cognito User Poolから受け取ったJWTトークンをCognito Federated Identitiesに渡す。 Cognito :AWS認証情報を返す。 認証情報は一時的なもので、アクセスキー、シークレット アクセスキー、トークンで構成されている。 アプリ :AWS認証情報を使ってAWSの他のサービス にアクセスする。 AWSサービス:結果を返す。 Cognito Federated Identities 1 2 3 4 1 2 3 4
  • 30. □□□ API + 認証機能 サードパーティ Webサイト a f t g サードパーティとの 認証連携 ID/Passwodでの認証・ トークン発行 ② モバイルアプリやシングルページアプリケーショ ン サードパーティとの認証連携 → 代理アクセスできる トークン発行 サードパーティ Webサイト OAuth AWSのマネージドサービス トークンで APIにアクセス AWSリソースに 直接アクセス バックエンド システムアプリの認証情報で アクセス API バックエンド トークン ベースでの認証 API API トークン ○○○ API ユーザレポジトリ モバイル アプリ シングル ページ アプリケーション トークン サードパーティ Webサイト a f t g SAML Amazon, Facebook, Google, SAML との 認証連携をサービスで実現 • Amazon Cognito Cognitoサードパーティとの 認証連携 ユーザ認証に使用できるCognito User Pool で認証連携も行える。 ※Cognito User PoolはOpenID Connect、Twitterには現時点で未対応。 Cognito Federated IdentitiesはOpenID Connect、Twitterに対応しており、 AWS認証情報を得られる。
  • 31. SAML □□□ API + 認証機能 サードパーティ Webサイト a f t g サードパーティとの 認証連携 ID/Passwodでの認証・ トークン発行 ② モバイルアプリやシングルページアプリケーショ ン 代理アクセスできる トークン発行 サードパーティ Webサイト OAuth AWSのマネージドサービス トークンで APIにアクセス AWSリソースに 直接アクセス バックエンド システムアプリの認証情報で アクセス API バックエンド トークン ベースでの認証 API API トークン ○○○ API ユーザレポジトリ モバイル アプリ シングル ページ アプリケーション トークン API AWSのマネージドサービス AWSリソースに 直接アクセス ID/Passwodでの認証・ トークン発行 ID/Passwodでの認証・トークン発行 ブラウザからAWSリソースへのアクセス Cognitoで対応できない方法で実現したい場合 → 以下のような場合、独自で認証を実現する 事が考えられる。 • クライアント証明書認証 • 独自のMFA • 独自ポリシーのパスワード認証 独自に認証してAWSの認証情報を発行 • AWS Security Token Service (STS)
  • 32. □□□ API + 認証機能 サードパーティ Webサイト a f t g サードパーティとの 認証連携 ID/Passwodでの認証・ トークン発行 ② モバイルアプリやシングルページアプリケーショ ン トークンベースの認証 → 代理アクセスできる トークン発行 サードパーティ Webサイト OAuth AWSのマネージドサービス トークンで APIにアクセス AWSリソースに 直接アクセス バックエンド システムアプリの認証情報で アクセス API バックエンド トークン ベースでの認証 API API トークン ○○○ API ユーザレポジトリ モバイル アプリ シングル ページ アプリケーション 標準でAWSの認証情報に対応しており、認 証・認可をパスしたアクセスのみEC2や Lambdaなどに送ることができる。 Custom Authorizerで独自のトークンにも 対応できる。 トークン ベースでの認証 API API AWSの認証情報を使った認証・認可を サービスで実現 • Amazon API Gateway
  • 33. サードパーティ Webサイト a f t g SAML サードパーティとの 認証連携 □□□ API + 認証機能 サードパーティ Webサイト a f t g サードパーティとの 認証連携 ID/Passwodでの認証・ トークン発行 ② モバイルアプリやシングルページアプリケーショ ン 代理アクセス → 代理アクセスできる トークン発行 サードパーティ Webサイト OAuth AWSのマネージドサービス トークンで APIにアクセス AWSリソースに 直接アクセス バックエンド システムアプリの認証情報で アクセス API バックエンド トークン ベースでの認証 API API トークン ○○○ API ユーザレポジトリ モバイル アプリ シングル ページ アプリケーション ユーザ認証に使用できるCognito User Pool で代理アクセスを実現できるOAuthプロコ ルに対応して、トークンをサードパーティ Webサイトに提供も行える。 サードパーティ Webサイト OAuth トークンで APIにアクセス API 代理アクセスできる トークン発行 OAuth を使った代理アクセス機能を実現 • Amazon Cognito Cognito
  • 34. SAML user001 ******** login 社員PC Active Directory Federation Service (ADFS, IdP) Acitve Directory Linux/Unix系 Webサーバ インターネット サードパーティ SaaS ユーザ レポジトリ SAML対応 Webサーバ Webサーバ サードパーティ との認証連携 SSO製品 社内での認証連携 Webサーバ ID/Passwodでの認証 統合Windows認証 / Kerberos認証 Acitve Directory ③ エンタープライズ企業の社内システム Active Directory (AD) → 認証を利用するリソースをAWS上に 配置するなどのユースケースで Directory ServiceのMicrosoft ADを利用で きる。 ただし、既存のADを完全にAWS上に置き 換えたいなどの場合は、移行コストを考え るとEC2上のWindows Serverで実現する方 が良い。 ADの構築運用をサービスで実現 • AWS Directory Service • Amazon EC2 Systems Manager Config user001 ******** login 社員PC Webサーバ統合Windows認証 / Kerberos認証 インスタンス作成時に ドメインの自動参加
  • 35. SAML user001 ******** login 社員PC Active Directory Federation Service (ADFS, IdP) Acitve Directory Linux/Unix系 Webサーバ インターネット サードパーティ SaaS ユーザ レポジトリ SAML対応 Webサーバ Webサーバ サードパーティ との認証連携 SSO製品 社内での認証連携 Webサーバ ID/Passwodでの認証 統合Windows認証 / Kerberos認証 ③ エンタープライズ企業の社内システム ID/Passwordでの認証 社内での認証連携 サードパーティとの認証連携 → AWS上でも実装方法に違いは無し。 SAML user001 ******** login 社員PC Active Directory Federation Service (ADFS, IdP) Linux/Unix系 Webサーバ インターネット サードパーティ SaaS ユーザ レポジトリ SAML対応 Webサーバ サードパーティ との認証連携 SSO製品 社内での認証連携 Webサーバ ID/Passwodでの認証
  • 36. 組み合わせ: API Gateway + CloudFrontの署名Cookie 認証あり静的Webサイトを実現 • Amazon CloudFront + Amazon S3 Cookie Cookieベースでの認証 CloudFront S3 API Gateway Lambda トークンでの認証 ・Cookie発行 トークン ID/Passwodでの認証 ・トークン発行 Cognito user001 ******** login ブラウザ 認証部分のみHTML+JavaScriptでクライア ント部分を実装し、認証後はCookieを元に 単純な静的Webサイトを提供できる。 サードパーティ Webサイト a f t g サードパーティとの 認証連携 SAML
  • 38. 参考URL S3 署名付きURLを使ったダウンロード/アップロード: http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/ShareObjectPreSignedURL.html http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/PresignedUrlUploadObject.html CloudFront署名付きURL/Cookie: http://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-urls.html http://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-cookies.html EC2 インスタンスプロファイル: http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html EC2 Systems Manager パラメータストア: https://aws.amazon.com/jp/ec2/systems-manager/parameter-store/ http://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/systems-manager-paramstore.html AWS re:Invent 2016: Serverless Authentication and Authorization (MBL306) https://www.slideshare.net/AmazonWebServices/aws-reinvent-2016-serverless-authentication-and-authorization-identity- management-for-serverless-architectures-mbl306 AWS re:Invent 2016: Add User Sign-In, User Management, and Security to your Mobile and Web Applications with Amazon Cognito (MBL310) https://www.slideshare.net/AmazonWebServices/aws-reinvent-2016-add-user-signin-user-management-and-security-to- your-mobile-and-web-applications-with-amazon-cognito-mbl310
  • 39. オンラインセミナー資料の配置場所 AWS クラウドサービス活用資料集 • http://aws.amazon.com/jp/aws-jp-introduction/ AWS Solutions Architect ブログ • 最新の情報、セミナー中のQ&A等が掲載されています • http://aws.typepad.com/sajp/
  • 42. AWS Well Architected 個別技術相談会のお知らせ Well Architectedフレームワークに基づく数十個の質問項目を元に、お客 様がAWS上で構築するシステムに潜むリスクやその回避方法をお伝えす る個別相談会 https://pages.awscloud.com/well-architected-consulting-2017Q4-jp.html 参加無料 毎週火曜・木曜開催