LoginSignup
15
16

More than 5 years have passed since last update.

AWS Cognitoについて調べてみた

Posted at

Cognitoとは

認証・認可周りを担当するサービス。
大別して三つの機能があり、それぞれ名前のついたサービスに分かれている

機能 サービス
ユーザの管理と認証 User Pools
AWSの各リソースへの認可 Federated Identities
同一ユーザのデバイス間同期 Sync

AWS Black Belt

Cognito User Pools

  • ユーザの管理
    • メールアドレスなどを利用したユーザ登録
    • メールアドレスや電話番号の検証
    • パスワード再発行
    • CSVなどを利用したインポート・エクスポート
  • ユーザの認証
    • ID/Passwordでの認証
    • OpenID Connectに準拠したTokenの発行

Cognito Federated Identities

  • Identityの発行
    • 認証サービスを利用しているユーザを名寄せし、統合したIDを発行
  • AWSリソースへの認可
    • Cognito User Poolのユーザの認可
    • 未認証ユーザの認可
    • 以下の外部認証サービスのユーザの認可
      • Amazon
      • Facebook
      • Google
      • Twitter
      • OpenID Connectプロバイダー
      • SAMLプロバイダー
      • 独自に実装したプロバイダー

Cognito Sync

  • データの保存
    • key-valueの形式でデータを保存
    • オフライン状態でも動作
  • 同一ユーザ間の同期
    • 同じユーザの複数デバイス間でデータを同期

動作

AWS Black Belt

  1. UserPoolにログインしてTokenを取得
  2. 取得したTokenをFederated Identitiesに渡す
  3. Federated IdentitiesがTokenを検証
  4. 検証が完了したらSTSから一時クレデンシャルを取得
  5. ユーザに一時クレデンシャルと統合IDを返す
  6. 統合IDと一時クレデンシャルを利用してAWSリソースにアクセス

参考

15
16
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
16