本文整理汇总了Java中org.herasaf.xacml.core.context.impl.ResultType类的典型用法代码示例。如果您正苦于以下问题:Java ResultType类的具体用法?Java ResultType怎么用?Java ResultType使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ResultType类属于org.herasaf.xacml.core.context.impl包,在下文中一共展示了ResultType类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: evaluateRequest
import org.herasaf.xacml.core.context.impl.ResultType; //导入依赖的package包/类
private XacmlResponseDto evaluateRequest(PDP simplePDP, RequestType request) {
//final XacmlResponseDto xacmlResponse = new XacmlResponseDto();
List<String> pdpObligations = new ArrayList<>();
final XacmlResponseDto xacmlResponse = XacmlResponseDto.builder().pdpDecision("DENY").pdpObligations
(pdpObligations).build();
final ResponseType response = simplePDP.evaluate(request);
for (final ResultType r : response.getResults()) {
log.debug("PDP Decision: " + r.getDecision().toString());
xacmlResponse.setPdpDecision(r.getDecision().toString());
if (r.getObligations() != null) {
final List<String> obligations = new LinkedList<>();
for (final ObligationType o : r.getObligations()
.getObligations()) {
for (final AttributeAssignmentType a : o
.getAttributeAssignments()) {
for (final Object c : a.getContent()) {
log.debug("With Obligation: " + c);
obligations.add(c.toString());
}
}
}
xacmlResponse.setPdpObligations(obligations);
}
}
log.debug("xacmlResponse.pdpDecision: "
+ xacmlResponse.getPdpDecision());
log.debug("xacmlResponse is ready!");
return xacmlResponse;
}
示例2: enforce
import org.herasaf.xacml.core.context.impl.ResultType; //导入依赖的package包/类
/**
* Enforces policy given in <code>preferencePath</code> against request
* stored in <code>request</code>.
*
* @param preferencePath preference policy path (in resources)
* @param domain data controller id
* @param resource resource attribute type
* @return policy enforcement result
* @throws SyntaxException
* @throws WritingException
* @throws org.herasaf.xacml.core.SyntaxException
* @throws JAXBException
*/
private DecisionType enforce(String preferencePath, String domain,
String resource) throws SyntaxException, WritingException,
org.herasaf.xacml.core.SyntaxException, JAXBException {
SimplePDPFactory.useDefaultInitializers();
PDP simplePDP = SimplePDPFactory.getSimplePDP();
PolicyRepository repo = simplePDP.getPolicyRepository();
PolicyType policy = (PolicyType) unmarshallerPrime.unmarshal(
getClass().getResourceAsStream(preferencePath));
repo.deploy(ConverterFunctions.convertToHerasPolicy(policy));
RequestCtx request = createRequestContext(domain, resource);
ResponseCtx responseCtx = simplePDP.evaluate(request);
List<ResultType> results = responseCtx.getResponse().getResults();
return results.get(0).getDecision();
}