目次
ハイブリッドクラウドコンサルティング部の榊原です。
前回はOktaとIAM Identity Centerの連携について記事にしました。その中でOktaからIAM Identity Centerに対してプロビジョニングを有効にすることで、Okta側でユーザをIAM Identity Centerにアサインした際、自動でAWS側にユーザが作成されるといったことを行いました。
IdPによってはこのプロビジョニング機能が対応していない場合があり、その際はIdP側とAWS Identity Center側とで別個にユーザ追加が必要となります。今回はこのAWS Identity Centerでユーザを一括登録する方法について記します。本記事は下記URLを参考にしています。
前提
動作環境はWindows 11です。
そして今回、AWS IAM Identity Center側 で自動プロビジョニングを有効にします。「IdPがプロビジョニング機能に対応しない場合の対応策を述べるはずなのに、なぜそんなことをするんだ」と疑問に思う方がいらっしゃると思います。これはAWS IAM Identity Centerで自動プロビジョニング機能を有効にしたと発行される、SCIMエンドポイントとアクセストークンが必要だからです。(下画面参照)
もしここまでの設定が分からない方は、前回記事を必要に応じてご参照ください。
手順
csvファイルを作成
「csv-example-users.csv」という名前のファイルを作成します。firstName、lastName、userName、displayName、emailAddressの値を指定します。全て記載がないとIAM Identity Centerにユーザは作成されません。また、userNameとemailAddressの値にスペースを含めることはできません。イメージとしては下のような感じです。オプションでユーザをグループに追加したい際は、memberOfというものがあります。F列のように、グループ名を記載します。複数グループを登録したい際は、間に「;」と入力します。
※C列とE列については、社員のメールアドレスをいれているのでマスクしています。
PowerShellコードを作成
最初に挙げたこちらのURLにPowerShellコードがあるので、以下のように編集を加え「create_users.ps1」という名前で保存します。
・<SCIMENDPOINT>:SCIMエンドポイント
・<BEAREERTOKEN>:アクセストークン
・<CSVLOCATION>:csvファイルのパス
スクリプトの実行
PowerShellコマンドを実行します。
2、3行目のErrorはcsvファイルのF列memberOfに記載されたグループを作成しようとして起こるエラーです。今回既にこれらのグループは存在しているため競合が起こっています。
ここでIAM Identity Centerのコンソール画面を見てみましょう。サイドバーの「ユーザー」を押して、自分が追加したユーザをクリックすると、memberOfで指定したグループに所属できていることを確認できます。
最後に
やむを得ずIdP側とAWS側とでユーザ情報を連携できない場合は、今回ご紹介した情報が役に立つと思います。ここまでお読みいただきありがとうございました。