【AWS】aws cli でCognito ユーザープールのユーザー情報を編集する方法

【AWS】aws cli でCognito ユーザープールのユーザー情報を編集する方法


# aws # cognito

あまりサンプル充実していなかったので備忘として残しておきます。

環境

aws-cli/2.1.37

Python/3.8.8

やりたいこと

Cognitoユーザープールの画面からユーザー登録をしたものの、画面から属性情報の編集が出来なかったので簡易的にユーザーの属性情報を編集できる方法が欲しかった。

公式ドキュメントやサンプルを書いているような記事もあるのですが、引っかかる点がいくつかありました。

やり方

上部にバージョン情報が書いてあるのでお分かりだとは思いますが、aws cli を使います。

#コマンド例
aws cognito-idp admin-update-user-attributes --user-pool-id {{pool id}} --username {{username}} --user-attributes Name="--username {{属性名}}",Value="{値}}" Name="{{属性名}}",Value="{{}}"

ポイントはいくつかあります。

  • ユーザープール名は「ap-northeast-1_xxxxxxx」のようなもの。ユーザープール名とIDは別物なので注意
  • 属性名は「given_name」のようにsnake caseで記載する。Amplify上ではCamelCaseになっていたりなどするが、aws cliではスネークケースのみ受付可能。
  • 一度に複数の属性を更新することが出来る。
  • 省略記法があるらしいのですが、うまく行かなかったので誰か教えて下さい

公式ドキュメント

https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cognito-idp/admin-update-user-attributes.html