はじめに
プリザンターをマルチテナントで使う方法を紹介したので、今度は実際にマルチテナント運用をする場合に不足している機能を洗い出しておきます。
不足機能
GUI
- テナントの管理
- 一覧表示
- 新規作成
- 編集画面...標準で生成されるメニューのURLがデフォルトテナント決め打ちになっているため△
- 削除...これは必要ないかもしれない
- 履歴一覧
WebAPI
これはコントローラから全てまるっと存在しない状態
-
/api/tenantnewupdate-
get...選択/全件
スクリプト
$p.tenantId
サーバスクリプト
tenanttenants
権限
コード上は存在するサービスマネージャー権限を持つユーザーのみ自分以外のテナント情報を触れるようにする。
他テナントのユーザ情報については、サービスマネージャー権限で触れるようにするのか、サービスマネージャー権限ではテナント管理だけにとどめて、そこから先は各テナントのテナント管理者に委ねるかは微妙な所。おそらく前者の方が実装的にはスッキリするのと影響範囲的に既存と背反しない。
まとめ
今回は本格的にマルチテナント運用をしようとすると不足しているところを洗い出してみました。もしかしたら将来的にコントリビュータープログラムで実装するかもしれません。