1. 今回の作業概要

目的

Amazon Cognitoでログインしたユーザーと、PostgreSQLに保存されているユーザー情報を連携する処理を実装した。

これまでは、分析APIを利用する際にDBユーザーを確認・作成する処理が実装されていた。

しかし、通常ログイン時にはDBユーザーを確認する処理が存在していなかった。

そのため、今回の実装では以下の処理を追加した。

これにより、分析機能を利用する前でも、ログインした時点でDBユーザーを管理できるようになった。


2. なぜ今回の処理が必要だったのか

今回の作業で最も重要なのは、Cognitoによる認証とPostgreSQLによるユーザー情報の管理が、それぞれ異なる役割を持っていること。

2-1. CognitoとPostgreSQLの役割の違い

アサーションCheckでは、ユーザー情報を扱うために2つのサービスを利用している。

サービス 役割
Amazon Cognito ユーザー認証
PostgreSQL アプリケーションのユーザー情報や分析履歴の管理

Amazon Cognitoの役割

Cognitoは、主にユーザーが誰なのかを確認するためのサービス。

例えば、以下の処理を担当する。