Rails 4、Postgres、Devise を使用してマルチテナント アプリケーションを構築しています。パーティショニングに使用されているテナントとして機能し、認証のための工夫を行います。私は承認スキームを選択していませんが、Pundit に傾倒しています。
外部ユーザーを許可する機能のリクエストがありましたが、これらのユーザーは別のテナントのメンバーである可能性があります。A 社がドキュメントを作成しているとします。会社 B のユーザーと共同作業を行いたいと考えています。会社 B の特定のユーザーは、共同作業している会社 A 内の特定の 1 つのドキュメントと、会社 B のすべてのものにのみアクセスできる必要があります。
Github は、この種の機能の優れた仕事をしており、優れた権限を持つ aribtray ユーザーをプロジェクトに追加できます。
では、具体的な質問をいくつか。これには、マルチテナント スキームを放棄し、やや複雑な承認スキームを使用する必要がありますか。act_as_tenant がやや不変のデータ パーティションを提供したため、断念しました…</p>
もしそうなら、Punditが推奨されるアプローチ(おそらくCAnCanCan)でしょうか、それとも他に見るべき場所がありますか?