こんにちは、普段はMicrosoft 365エンジニアを担当している会社員です。
Microsoftエコシステム以外のID管理やセキュリティ管理のスキルと経験がなかったため、IDの分野で有名なOktaソリューションを、トライアル契約して知識習得をしようと思い、備忘録として記事にしました。
今回、私が業務でよく利用するMicrosoft Formsでアンケート取得→アンケート結果を参考にPower AutomateまたはLogic Appsで処理する というフローを、Oktaでできるか試しました。
流れとして、Google Formsでアンケート取得→アンケート結果を参考にOkta Workflowsで処理するとなります。
第1章はOkta Workflowsでテンプレートを検索して作成、Parent FlowにてGoogleスプレッドシートへの接続設定を行います。
第2章はHelper FlowでGoogleスプレッドシートの情報を参考にOktaアカウントを作成します。
第3章は作成したワークフローで実際にOktaアカウントが作成されるか動作検証を行います。
*第1章
1-1.Okta Workflowsでテンプレートを利用します。
Okta Workflowsのページで[New Flow]-[From template]をクリックします

1-2.テンプレートを検索します。
テンプレート名:Importing Users from Google Sheetsを検索してクリックし、[Add template]でテンプレートを追加します。

1-3.Flowに[Importing Users from Google Sheets]が作成されます。
ScheduleとHelper、2つのタイプのフローが作成されています。まずは[Import Users - Parent Flow]をクリックします。
1-4.Google スプレッドシートへの接続設定をします。
Google Sheetsのカードの[Choose Connection]をクリックし、[Create]でシートを作成します。




1-5.Googleスプレッドシートとの接続が完了します。
Spreadsheetで[Enter Spreadsheet ID]を選択し、Spreadsheet IDにGoolgeスプレッドシートのIDを入力します。
※スプレッドシートのIDは、GoogleスプレッドシートのURLから確認することができます
スプレッドシートID入力後、Worksheetsが選択できるようになるため、データ入力に利用するシートを選択します。
1-6.Worksheetsを選択すると、スプレッドシートの項目が表示されます。
ここで表示される項目が、スプレッドシートと一致しているか確認して問題なければ[Save]をクリックします。
※今回作成したスプレッドシートはこちらです。Oktaのカードに表示されている項目と一致していました

ここまでで第1章は終了です。お疲れさまでした。
第2章ではスプレッドシートを作成した後はHelper Flowの編集を行います。
第2章へ移る前に、Okta Workflowsの良と思った特徴を記載します。
カード上での接続設定が容易であることと、フローのつながりがヴィジュアル的に確認できる点だと思いました。
※スプレッドシートの値が引き継がれていることが導線で分かります
*第2章
2-1.Helper Flow をクリックして、Helper flowを開きます。
2-2.スプレッドシートの情報を一致させます。歯車アイコンをクリックし[Edit card]をクリックします。

2-3.編集アイコンをクリックし、Object名を編集します。
※今回Columns.0 を Columns.1 のように、1つずつ数字を動かしていることにご注意ください
2-4.これでスプレッドシートの情報が扱えるようになりました。ではここから実装したOktaアカウントの処理について説明します。
設定した結果の画像と比較して参照していただけますと幸いです。
①Create User - Oktaアカウントを作成します。今回、アカウント作成時はアカウントを無効化としました
②Add User to Group - Group IDを指定して作成したOktaアカウントをグループへ追加します
③Activate User - Oktaアカウントを有効化します ※Create UserでもActivateできますが、今回はWorkflowsの処理としてActivateできるか確認するために追加しました
④Update Row - スプレッドシートへアカウント作成日時を追記する処理をします。Nowで日付を事前に取得しておきます。
これで準備が整いました。実際にアカウント作成・グループ追加・スプレッドシートへのアカウント作成日時追記ができるかテストします。
*第3章
3-1.スプレッドシートへ、アカウント情報を入力します。
Google Formでアカウント情報を入力できるようにしました。
Google Formsで入力し、スプレッドシートへ作成された情報がこちらです。
パスワードを指定する場合、Okta Admin Consoleで事前にパスワード要件を確認する必要がありますのでご注意ください。
また、今回記載しているような推測しやすいパスワードの利用は非推奨のため、実際にご利用される方はパスワード複雑性の事前チェックをお願い致します。

3-2.ではワークフローを動かしてみましょう。
ワークフローを有効化します。ON/OFFの部分をクリックしてワークフローを有効化します。
3-3.Parent Flowで[Run]をクリックします。
Oktaアカウントの作成、グループ追加、アカウントの有効化に成功していました。


今回、Microsoftソリューションで実装できていたことがOktaソリューションでも実装できることが確認できました。
ID発行の自動化・効率化検討へ、少しでもお役に立てていただければ幸いです。


















