4. 内容についての注意点
✤ 本資料では2016年5⽉18⽇時点のサービス内容および価格についてご
説明しています。最新の情報は 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.
18. Amazon Cognito Sync
User Data
Storage and
Sync
Any Platform
iOS/Android/FireOS
ユーザのデータ、設定や情報を保存
アプリとデバイスのデータをクラウドに保存でき、ロ
グイン後にマージ
クロスデバイス/クロス OS な同期
数⾏のコードでデバイスやプラットフォームをま
たがってユーザのデータや設定を同期
オフライン動作
データは常にローカルの SQLite にまず保存され
るので電波が不安定もしくは不通であってもシー
ムレスに動作
k/v data
Identity pool
バックエンド不要
スケーラブルで信頼性の⾼いデータ同期基盤
をシンプルなクライアント SDK を組み込む
だけで利⽤可能
19. Amazon
API Gateway
Sign in with
Facebook
Or
Username
Password
Sign In
Or
Start as a guest
Amazon Cognito Identity
統合的なアイデンティティと AWS サービスへの
セキュアなアクセス
サードパーティのアイ
デンティティプロバイ
ダによる認証
Amazon Cognito Identity
ゲストアクセス
独⾃の認証システムに
よる認証
AWS リソースへセキュ
アにアクセスするため
の⼀時的な認証情報を
提供
Amazon
DynamoDB
Amazon S3
20. ID プロバイダ
ゲストアクセス
独⾃認証システム
ユニーク ID
Joe Anna Bob
デバイス
プラットフォーム
AWS サービス
複数の ID プロバイダをサポート
ID プロバイダと簡単に連携して認証
Amazon, Facebook, Twitter, Google,
OpenID Connect などに対応
ユニークなアイデンティティ
認証済ユーザに対してユニークIDを割り当て、
デバイスやプラットフォームをまたがって認
識と管理
Amazon Cognito Identity
Mobile
Analytics
S3 DynamoDB Kinesis
容易なセキュリティのベストプラクティ
ス実装
モバイルデバイスから AWS リソースへのセ
キュアなアクセスのためのやり取りをIAMと
連携して簡略化
21. Amazon Cognitoの認証フロー
Amazon Cognito ID
(Temp Credentials)
Amazon
DynamoDB
End Users
Developer
App with AWS
Mobile SDK
Access
to AWS Services
Amazon Cognito
Identity Broker
User Name
Password
Amazon Cognito ID,
Temp Credentials
Amazon S3
Amazon Mobile
Analytics
Amazon Cognito
Sync Store
AWS
Management
Console
Token
Pool ID
Role ARNs
User Authentication
System
(Running on AWS or not)
Token
22. 未認証ユーザのゲストアクセス
(Unauthenticated Identities)
✤ ID プロバイダで認証をしていないユーザをゲスト
ユーザとしてユニーク ID の付与と管理
✤ 未認証の場合、ID はデバイスと紐づくので同⼀デバイスから
のアクセスの場合に同⼀ユーザとして認識される
✤ 未認証によるアクセスを許可しない設定も可能
✤ アプリや AWS リソースへのアクセスにアカウントの
作成や認証が不要
✤ アクセス権限は未認証ユーザに対して割り当てた IAM Role の
ポリシーに基づく
✤ センサーデバイス等のスクリーンや⼊⼒装置のないデバイス
に対してもユニーク ID の付与と管理が可能
✤ データはクラウド上に保存され後からログインした場
合は⾃動でマージ
Visitor
Preferences
Cognito
Store
Guest
EC2 S3 DynamoDB Kinesis
25. Developer Authenticated Identity
Username
And Password
独⾃認証システム
パブリック ID プロバイダの併⽤
Cognito の ID を元にパブリックな ID プロバ
イダと独⾃認証を併⽤して管理することも可
能
認証基盤の実装が必要
GetOpenIdTokenForDeveloperIdentity() を実
装する
既存の認証基盤を使う場合、改修が必要
独⾃認証システムの利⽤
パブリックなIDプロバイダではなく独⾃の
Username と Password を使って認証
26. Amazon Cognitoの認証フロー
(Developer Authenticated Identities)
Amazon Cognito ID
(Temp Credentials)
Amazon
DynamoDB
End Users
Developer
App with AWS
Mobile SDK
Access
to AWS Services
Amazon Cognito
Identity Broker
Get OpenID Token
User Name
Password
Amazon Cognito ID,
Temp Credentials
Amazon S3
Amazon Mobile
Analytics
Amazon Cognito
Sync Store
AWS
Management
Console
OIDC Token
Pool ID
Role ARNs
独⾃認証システム
(AWS上で稼働していなくてもOK)
OIDC Token
OIDC Token
39. AWS Lambda を使ったカスタマイズ
AWS Lambda フック 例
Pre user sign-up
サインアップリクエストを許可/拒否するた
めのカスタムバリデーション
Custom message
検証メッセージのカスタマイズとローカラ
イズ
Pre user sign-in
サインインリクエストの拒否/許可するため
のカスタムバリデーション
Post user sign-in カスタム分析のためのイベントロギング
Post user confirmation
ウェルカムメッセージやカスタム分析のた
めのイベントロギング
40. Pricing
✤ MAU(Monthly Active User)に基いて課⾦
✤ サインアップ、サインイン、トークンの更新またはパスワードの変更などの操
作が発⽣したユーザ
✤ 50000 MAUの無料利⽤枠
MAU MAUあたりの料⾦
最初の 50,000 MAU まで 無料
次の 50,000 MAU まで 0.00550 USD
次の 900,000 MAU まで 0.00460 USD
次の 9,000,000 MAU まで 0.00325 USD
10,000,000 MAU を超える分 0.00250 USD