背景
すでに作ってある Cognito UserPool に OAuthによる認証機能を提供したいという要望があって、App Client と Hosted UIを追加した。
動作を確認するために、AWS Amplify のチュートリアルで Webアプリを作った。
https://docs.amplify.aws/lib/auth/social/q/platform/js#full-react-sample
Amplify が 使う 設定ファイル aws-exports.js を作る必要があるので、
amplify add auth
コマンドで 一旦 aws-exports.js を作り、すでにある UserPool と IdentityPool の情報で書き換えた。
実行してみると、Auth モジュールの中でつくられるはずのセッションが作られてない。
調査してみると、http://cognito-identity.us-east-1.amazonaws.com/ へのリクエストが失敗していることがわかる(添付)
GitHub にも同じような issue が立っていた。
https://github.com/aws-amplify/amplify-js/issues/4269
設定
IdentityProviderの Authorization Provider にも Clientの設定を追加する必要があった。
余談
AmplifyのDocumentには、すでにある UserPool を使う情報が見つけられなかったので、ここに書いておくことにしました。
(前はあった気がしたのだけれど、あったとしてこの話題の記載はなかったような。。)
まあ、解決したのでよしとする。