こんにちは、ネクストモード株式会社テクニカルサポート担当です。
Okta Workflowsではこれまでフローをフォルダごとに整理できましたが、アクセス制御は大味になりがちでした。今回、フォルダ単位のRBAC(Role-Based Access Control) がリリースされ、フォルダごとにユーザー/グループへ細かな権限付与ができるようになりました。
本記事では、できるようになったこと、設定手順、そしてハマりどころを解説します。
まず、今回のアップデートについて主要なポイントを確認します。
フォルダロールは名前だけだとイメージしづらいので、用途をざっくり整理します(細かな内容については公式ドキュメントもあわせて確認してください)。
| ロール | できること(要約) | 想定する担当 |
|---|---|---|
| Folder Reader | 閲覧のみ | 参照だけしたいメンバー |
| Folder Runner | 閲覧+実行+実行履歴の閲覧 | 運用担当(実行が主) |
| Folder Editor | フォルダ内リソースの編集 | flowの作成・改修担当 |
| Folder Manager | 編集+ロール割り当て管理 | フォルダ管理者(委任先) |
| Integration Builder | Connector Builder のプロジェクト管理 | コネクタ開発担当(必要な場合のみ) |
既存割り当ては、設定アイコンから Edit role assignment / Remove role assignment で変更・削除が可能です。
フォルダ単位のRBACを有効にすると、Connectionsはトップレベルフォルダに自動では紐づきません。そのため、フォルダ内のflowが特定のConnectionを使う場合は、フォルダ側で明示的に追加する必要があります。
もしくはNew Connection から新規Connection作成も可能です。
ここが一番ハマりやすいポイントです。UI上のボタン名はどちらも New Connection ですが、どこから作成したかでConnectionのスコープ(LEVEL)が変わります。
※本記事では、混乱を避けるため次のように呼び分けます。
このうち、フォルダ内で New Connection した場合に作成されるのが FolderレベルのConnection で、作成したフォルダに紐づき、他のフォルダからは利用できません。
そのため、複数のフォルダで同じConnectionを使い回したい場合は、FolderレベルではなくOrganizationレベルのConnection を上部メニューの Connections からあらかじめ作成しておく必要があります。
以下の画像では、OktaはLEVEL が「Organization」となっていますが、API Connectorは LEVEL が「Folder」 になっていることが確認できます。
サブフォルダでは、Role assignment や Connections のタブが表示されません。権限とConnectionsは トップレベルフォルダに対して設定し、サブフォルダはそれを継承 します。
サブフォルダ側で権限やConnectionsを分けられないため、基本方針としては「分離したい単位=トップレベルフォルダ」に寄せるのがシンプルだと思います。
最後に、実際に作業進めていく上で起こりそうなトラブルと対処方法を考えてみました。
トラブル:flowを別のフォルダへ移動したら認証エラーが発生!
対処方法:対象フォルダの Connections タブで、必要なConnectionが追加されているかを確認
本記事では、Okta Workflowsで新たに利用できるようになったフォルダ単位RBACについて、できること・設定手順・運用上の注意点を整理しました。トップレベルフォルダを境界に権限(Role assignment)とConnectionsを設計することで、チームごとの分離や本番/検証の切り分けを安全に運用できます。逆に、フォルダ設計や「Connectionsは自動で使えない」点の理解が曖昧なまま進めると、認証エラーや権限継承の見落としが起きやすくなります。導入前にトップレベルフォルダの方針を決め、運用ルールを共有したうえで適用するのがよいでしょう。