私はORM(Postgresを使って)としてsequelizeを使って、ある種の許可フレームワークをノードjsに実装しようとしています。数時間の研究の後、既存のnpmモジュールでこれを行うのに最も近いことは、aclを使用して私のスタックをサポートするためにaclを続けることです。関係に基づくノードjsのACL
問題は、aclモジュールがロールを割り当てているように見えます。そのロールでは、特定のリソースのすべてのインスタンスにのアクセス権が与えられます。しかし、そのユーザーの既存の関係に基づいてインスタンスの許可を行う必要があります。
例として、単純なフォーラムの許可システムを考えてみましょう。
// allow guests to view posts
acl.allow("guest", "post", "view");
// allow registered users to view and create posts
acl.allow("registered users", "post", ["view", "create"]);
// allow administrators to perform any action on posts
acl.allow("administrator", "post", "*");
は、私もまた、自分の投稿を編集するには登録ユーザのための機能を追加したいと仮定し、ユーザーは、彼らが作成したすべての記事に関係があります。それは、各役割のためにこれらの権限を与えます。
このモジュール、またはこの種の動作をデータベース/ ORMレベルでサポートできる他のモジュールはありますか?
もしそうでなければ、私はカスタムを実装しなければなりません。このようなものを作成するにはどうすればよいでしょうか。