仕事でkintoneを使って予算管理を行えないか!?的な話に巻き込まれた。
kintoneなんて使ったこともないし、今後も使うつもりはないが、一応フィジビリティしたのでメモ。
ユーザ・権限管理とアプリ実装の2本立てでまとめようと思う。
目次
ユーザー・組織管理構成
元にユーザー・組織管理の構成は以下のような感じを目指す。
Active Directoryとか他のアカウント管理との連携とかも気になるが、だるいのでそういうのは今回は無視。
事業部 | 部門 | 役職 | 承認権限 | 参照権限 | 編集権限 | 削除権限 |
---|---|---|---|---|---|---|
事業部 | コンサル部門 | ディレクター | あり | 部門横断で可 | 部門横断で可 | 部門横断で可 |
シニアコンサルタント | なし | 自部門のみ可 | 自部門のみ可 | 自分のもののみ可 | ||
コンサルタント | ||||||
開発部門 | ディレクター | あり | 部門横断で可 | 部門横断で可 | 部門横断で可 | |
シニアエンジニア | なし | 自部門のみ可 | 自部門のみ可 | 自分のもののみ可 | ||
エンジニア |
よって必要なロールは以下の3つ。(デフォルトの「Everyone」入れると4つ。)
ロール | 説明 |
---|---|
Directors | 役職ディレクターに割り当てられるロールで、承認権限など強い権限がある。 |
Consulting Div. | コンサル部門の全員に割り当てられるロールで、”コンサル部門の人の予算申請はコンサル部門の人しか見れない”という制御をするためのもの。 |
Product Div. | 開発部門の全員に割り当てられるロール。用途はコンサルと同様 |
実際の設定
まずkintoneのアカウントを作り、指定したサブドメインでログインする。
そこから「cybozu.com 共通管理」ってとこでユーザーやら組織、権限の権利が行える。
まずユーザーを作る。
次に組織を作る。
そして役職を作る。もはや開発分を作るのがだるいのでコンサル分だけにしてみた。(ディレクターは部門によらず共通)
最後にロールを定義する。その際、必ずロールタイプは「動的」を選択する。
「静的」にするとユーザーへのロール割当てを一人一人やらねばならず運用が回らなくなる。
ここがキモなので少し詳細説明。
各ロールの右の歯車マークを押すと「所属ユーザーの条件の編集」が行えるのでこれで各ユーザーにロールを割り当てる。
例えば以下は「Consulting Div.」のロール。
みて分かる通り、所属組織が「コンサル」の人に自動でロールが割り当てるように設定している。
なお、これも当たり前だがユーザーを組織に所属させることも事前に行っている。
次に「Directors」のロールをみてみる。
こちらは役職が「Directors」の人が自動でロールが割当たるようにしている。
あとはアプリ側でそれぞれのロールに対して適切な権限設定をすればOKだが、それは次回まとめる。