文件资源访问控制方案
2018-04-02 15:53:09 9 举报
基于DFS分布式文件系统,需要对部分文件进行访问控制的各种方案分析
作者其他创作
大纲/内容
成功响应
请求资源文件(根据获取到的资源地址)
获取业务数据
返回业务数据(附带文件资源地址)
获取已加密资源文件
返回文件资源
5
用户上传文件时,业务系统将用户、文件相关的用户身份信息拼接成与或规则,写入文件头。用户拿链接地址过来访问文件资源时,验证当前用户的身份是否符合对应资源文件投中的访问规则。 方案特点: 优点:用户就算拿到连接也不一定能获取资源文件。 缺点:1. 有一定代码侵入性, 针对需要控制访问的不同资源设定不同的规则; 2. 资源文件的访问可能存在很多相关方,导致规则可能会很复杂(以及衍生出此方案是否具有通用性问题)
文件加密(根据资源类型进行加密)
请求资源文件(根据获取到的已加密资源地址)
根据业务数据关联关系以及用户的业务数据的访问权限获取文件资源ID
2
DFS
获取相关业务数据
相应成功
业务数访问据权限控制
请求上传文件
用户无法拿到资源文件的任何信息,当需要获取某个业务的相关资源文件时,客户端先请求业务系统并传入业务信息标识,业务系统根据已经持久化过的业务记录跟资源文件的对应关系,找到对应的资源文件标识(可以是ID,也可以是路径),并请求DFS获取文件资源。 方案特点: 优点:客户端从始至终都不会获得资源文件的任何信息(几乎绝对安全)。 缺点:1. 针对需要控制访问的资源需要多一层http请求; 2. 有一定的代码侵入性,需要专门针对需要控制访问的每一类资源在业务系统中进行编码。
返回业务数据(附带资源地址)
依据业务ID请求文件资源
3
4
业务数据权限控制
文件解密
PMS
响应成功
业务数据访问控制
返回业务数据
上传文件(附带访问规则)
Client
验证:在业务系统中的用户是否拥有该资源文件的访问权限
设置文件访问规则(基于身份(用户,机构,角色)的简单访问规则)
根据获取到的文件ID请求文件资源
访问资源
1.资源链接即访问权限
返回业务相关文件资源
验证通过,返回文件资源
用户通过资源文件的链接地址向DFS获取文件时,DFS需要先请求业务系统,查验当前用户是否拥有该文件的访问权限。后DFS再决定是否要给用户返回文件。 方案特点: 优点:DFS的验证实现逻辑相对不复杂 缺点:1. 有一定代码侵入性, 针对需要控制访问的不同资源编写不同的验证逻辑; 2. 导致DFS依赖了业务系统。
业务系统先针对特定的文件资源做加密处理后,上传DFS。用户相对容易的拿到资源链接地址,但是并不能使用文件。需要走业务系统验证解密环节才能正常使用文件。 方案特点: 优点:1. DFS端较轻量,不用理会跟文件存储获取无关的事情。 2. 加密规则可统一设定。 缺点:增加额外的加密解密逻辑
业务系统验证通过
返回已解密文件资源
返回资源
用户能拿到资源链接地址(不管是以何种途径拿到的),即有权限访问该资源。 方案特点: 优点:控制简单,无侵入。 缺点:资源链接地址可能会被其他不相关人员知晓,从而不相关人员亦可访问该资源文件
返回已加密文件资源
根据规则、身份信息验证访问是否被允许
上传文件
收藏
0 条评论
下一页
为你推荐
查看更多