スタック オーバーフローには、編集できる内容やシステムに新しいタグを追加する機能など、サイト上の多くのことを決定するポイント ベースの権限システムがあります。
特にアーキテクチャの実装に関して、そのようなシステムを設計している人にどのようなアドバイスをしますか? アクセス許可はどこに保存しますか? これらの権限をどのように使用して、ビューで編集可能に表示されるフィールドを決定しますか? 研究に役立つオープンソースのコード例はありますか?
質問やドキュメントなどのオブジェクト モデルの所有権または共有に関して、所有者への参照をそのオブジェクトのモデルに格納することと、そのオブジェクトへの参照をアカウント モデルに格納することの長所と短所は何ですか? 例えば
document = { id: 21234,
owner_id: 4d3ca9f1c067,
shared_with: [a50d1e000138, 4d3ca9f1c067a, 50d1e000138] }
対。
user = { id: 4d3ca9f1c067,
documents_owned: [21234, 31452, 12312],
collaborates_on: [23432, 43642, 12314, 23453] }