ABAC基于属性的访问控制

一、简单介绍    

常用的基于角色的访问控制,最近研究关于基于属性的访问控制,感觉这个东西确实是个好东西,把自己的研究内容拿出来跟大家分享下。先简单了解下

ABAC基于属性的访问控制_第1张图片

 

 用户在携带自身的属性值包括主题属性,资源属性,环境属性,然后向资源发送请求,授权引擎 会根据subject所携带的属性进行判断,然后会给出拒绝或者同意的结果给用户,然后就可以访问资源。

 

二、详细步骤

 ABAC授权的步骤

1、用户访问资源,发送原始请求。

2、请求发送到策略实施点PEP),PEP构建xacml格式请求。

3PEPxacml请求发送到策略决策点PDP)。

4PDP根据xacml请求,查找策略管理点(PAP)中的策略文件。

5PDP策略信息点PIP)查找策略文件中需要的属性值(主体、资源、环境属性)。

6PDP将决策结果(permitdeny、不确定、不适用)返回给PEP

7PEP发送请求到资源,并把资源返回给用户。

ABAC基于属性的访问控制_第2张图片

这个图和步骤就能很清晰的反应据图的步骤 

三、策略文件组成

然后就是策略文件的构成,策略文件是非常重要的文件,所有的决策都是根据策略文件来判断的

ABAC基于属性的访问控制_第3张图片

 策略文件的组成包括几部分,目标、规则。

 

你可能感兴趣的:(java,ABAC,授权)