issue #788
https://github.com/weseek/growi/issues/788 external_link
What happens? (症状)
/public (全公開)<br> /team1 (特定グループのみ公開)<br> /team2 (特定グループのみ公開) という運用を想定しています<br> ページの公開設定で /team1、/team2 階層はアクセス制限をかけることができますが<>br グループに所属するしないに関わらず、全てのユーザーが<br> あらゆる階層にページを新規作成することができます<br>
今現在作成するページにパスで制限を書けられない!
再現 グループB所属のBaba視点
babaが勝手に作れる!(しかも閲覧が自由)
What is the expected result? (期待される動作)
管理設定のグループ設定で、グループに対して作成権限階層の設定項目があると<br> グループ毎のコンテンツ管理を明確にすることができると考えています 例えば、"team1" というグループがある場合、グループの作成階層として<br> "/team1" というパスを設定すると、"team1" グループに所属するユーザーは<br> 「作成」ボタンで新規作成できるパスが ”/team1/" 以下に制限され<br> "/hoge" や "/team2/hoge" 等のパスには新規作成ができなくなるという感じです 階層を入れない場合や、グループに所属しないユーザーは現状通りで問題ないと思います。<br> ご検討いただければ幸いです
ホワイトリスト、ブラックリスト両方設定できると尚良い(?)
ユーザーの設定
-
グループAのみ入っている人
Name: Abe
PW: 4IoNVRX6q5A5 -
グループBのみ入ってる人
Name: Baba
PW: 691hoJ8Q5wn_ -
両方入っている人(自分)
-
どちらにも属さない人
Name: Nora
PW: CJEzchRJf3=!
タスクのゴール
- Abeはprojects/groupA と/public 以下にしかページを作成できない。
- Babaはprojects/groupB と/public 以下にしかページを作成できない。
- Noraは /public 以下にしかページを作成できない。
- itizawa はどのパスでも作成できる
制限をかけるタイミングはページの作成時(?)
タスクの進行手順
1 グループの情報がどのように保存され使用されているかの把握
- pageに属する設定
- userに属する設定
公開範囲を設定する時にグループ情報を参照しているはずなので、そこを参考にすると良さそう
ここで制限をかけるのにベストなタイミングを決定する!
2 ユーザーに対して作れないパスの制限
作成しようとしているユーザーと作成しようとしているパスのグループ情報を参照
⇨違った場合作成を拒否
3 ホワイトリストブラックリストの実装
現時点では実装手段が固まってない