[英]on measuring XACML PDP performance exactly time taken to evaluate an access control request
[英]Where to double-check attributes of the XACML-request against Attribute-Providers at the PDP?
我正在评估PDP引擎,现在我试试AuthzForce Core 。 到目前为止,PDP对请求的评估运行非常可靠:
//My request and pdp configuration files
File confLocation = new File("D:/docs/XACML/AuthZForce/IIA001/pdp.xml");//pdp.xml tells the pdp where the policies xml files are
File requestFile = new File("D:/docs/XACML/AuthZForce/IIA001/Request.xml");
//I instantiate the pdp engine and the xacml parser
final PdpEngineConfiguration pdpEngineConf = PdpEngineConfiguration.getInstance(confLocation, null, null);
PdpEngineInoutAdapter<Request, Response> pdp = PdpEngineAdapters.newXacmlJaxbInoutAdapter(pdpEngineConf);
XmlUtils.XmlnsFilteringParser xacmlParserFactory = XacmlJaxbParsingUtils.getXacmlParserFactory(false).getInstance();
//I parse the request file
Object request = xacmlParserFactory.parse(requestFile.toURI().toURL());
if (request instanceof Request) {
//At this point I could access all request attributes or alter them
//I let the PDP evaluate the request
Response response = pdp.evaluate((Request) request);
//I check the results inside the response
for (Result result : response.getResults()) {
if (result.getDecision() == DecisionType.PERMIT) {
//it's permitted!
} else {
//denied!
}
}
}
现在,根据像[1]这样的文献,我不应该信任给定request-xacml文件中的属性。 只要有可能,我必须检查属性提供者(例如患者数据库),如果给定的属性(例如患者出生日期)实际上属于患者,以防止发作。
否则,攻击者可以使请求中的患者更年轻,以便作为父母监护人访问患者的记录。
问题
Response response = pdp.evaluate((Request) request);
之前自己检查提供的Response response = pdp.evaluate((Request) request);
? pdp.xml
文件)了解属性提供程序。 您需要两个其他文件(XML目录和架构),具体取决于您要使用的属性提供程序。 这在AuthzForce Core的wiki的Using Attribute Providers部分中有记录 。 除了@ cdan的出色响应之外,还有以下几点:
检查针对属性提供程序的请求是PDP或其他权限的任务吗?
无论是来自PEP还是来自PIP,PDP始终信任它接收的信息(属性)。 因此,PDP不需要通过检查PIP来验证它从PEP接收的值。 这是适得其反的低效率。 如果你不能相信PEP发送正确的价值,你怎么能相信它来执行正确的决定呢?
OASIS是否具体说明了该问题的具体内容? 例如配置文件的工作流程或语法
我们没有。 PIP行为超出了XACML规范的范围。
有没有办法让我的pdp引擎知道属性提供者? 我应该在响应响应= pdp.evaluate((请求)请求之前自己检查提供的请求);?
PDP应配置PIP。 PDP将使用它可以使用的所有PIP。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.