aws cognitoを利用したコードを試してみた(javascript)
aws cognitoを利用した認証を使ってみたく、コードを書いて試しているところです。
ほぼ参考のURLの記事でできます。
機能のイメージ
- ユーザープール = 設定とユーザー管理
- IDプール = ユーザーのIDの管理設定
機能を使う流れとして、
- ユーザープールを作成し、管理するデータの設定(パラメータやセキュリティ)を作成する。
- IDプールにて、一意のアカウントの判断をするサービスを設定する(Aws cognitoやgoogleやtwitterなど)
- 実際のユーザーを作成する(javascriptなどAPIから作成)
- ユーザープールにてユーザー管理が可能
機能が二つに別れているイメージがよくわかりませんでしたが、ユーザー管理とID管理で分けられている。と理解できてからは機能の理解度が上がったと思います。
コード
認証はaws consoleで行う想定でいます。
悩んでいるところ
- statusが「CONFIRMED」になっていればsignin可能
- aws consoleからユーザー作成するとstatusが「FORCE_CHANGE_PASSWORD」になる
- 「FORCE_CHANGE_PASSWORD」から変更方法がcliからになる
- ログイン後の認証処理が不明瞭
- phpでサーバーでの認証の場合を試していない
個人的に使うケースはサーバーサイドで動いているプログラムに合わせたいため、サーバーのsessionで認証管理する場合が多くなりそう。
早めにコード試してみよう。
感想
設定はaws consoleの「ユーザープール」でほとんど行う感じ。
必須項目やメールでの認証など、ユーザープール設定画面で行います。IDプールは使うサービスを設定したら、ほとんど触らずにできそうです。
ユーザープールの設定が多いため、迷いましたが古いサービスのため情報がありますね。
javascriptの場合はsecret client設定をはずす必要があるので、注意です。
調べていると「AWS Amplify」の文字やドキュメントページに行くため、こちらを一度試した方がよさそうです。