1

Java でリポジトリ プログラムを作成しています。リポジトリのユーザーを含むユーザー テーブルと、MYSQL データベースのリポジトリにインポートされたすべてのファイルを含むファイル テーブルがあります。ファイルのアクセス権限をユーザーに設定するにはどうすればよいですか?実際、どのユーザーがリポジトリ内のどのファイルに対してウィッチアクセス権限 (読み取り、書き込み、読み取り、書き込み) を持っているかを判断するにはどうすればよいですか?

ありがとう

4

1 に答える 1

0

ファイル リポジトリを作成している場合は、ファイル アクセス権限を mocel の概念にする必要があります。通常、ファイル リポジトリ プログラムを実行する専用のユーザーがいて、すべてのファイルがそのユーザーの権限を持っていると思いませんか。

次に、ユーザーを承認した後のプログラムは、ユーザーが取得したいファイルに対してどのような権限を持っているかをデータベーステーブルから読み取ります。

ファイルを BLOB オブジェクトとしてデータベースに物理的に格納しているため、これらのファイルに対するユーザー権限を格納する別のテーブルを作成する必要があります。

create table privileges (
    userid bigint,
    fileid bigint,
    read bool,
    write bool,
    PRIMARY KEY (userid,fileid)
)

次に、ユーザーがファイルへの読み取り権限を持っているかどうかを確認したいときはいつでも

select userid, fileid from user u join privileges p on u.id=p.userid join files f on f.id=p.fileid and p.read=1
于 2012-09-05T11:32:50.270 に答える