任何人都可以给我一个很好的教程的链接,它可以让我知道如何使用策略文件中的 openSAML2 api 构建 XACMLObject 吗?谢谢
问问题
356 次
2 回答
1
我没有为此目的使用 OpenSAML 库。但我已经用于其他一些涉及 XACML 请求和响应的目的。以下可能会帮助您获得一个想法。它正在从字符串创建 XACMLRequest。
private String extractXACMLRequest(String decisionQuery) throws Exception {
RequestType xacmlRequest = null;
doBootstrap();
String queryString = null;
XACMLAuthzDecisionQueryType xacmlAuthzDecisionQuery;
try {
xacmlAuthzDecisionQuery = (XACMLAuthzDecisionQueryType) unmarshall(decisionQuery);
//Access the XACML request only if Issuer and the Signature are valid.
if (validateIssuer(xacmlAuthzDecisionQuery.getIssuer())) {
if (validateSignature(xacmlAuthzDecisionQuery.getSignature())) {
xacmlRequest = xacmlAuthzDecisionQuery.getRequest();
} else {
log.debug("The submitted signature is not valid!");
}
} else {
log.debug("The submitted issuer is not valid!");
}
if (xacmlRequest != null) {
queryString = marshall(xacmlRequest);
queryString = queryString.replace("<?xml version=\"1.0\" encoding=\"UTF-8\"?>", "").replace("\n", "");
}
return queryString;
} catch (Exception e) {
log.error("Error unmarshalling the XACMLAuthzDecisionQuery.", e);
throw new Exception("Error unmarshalling the XACMLAuthzDecisionQuery.", e);
}
}
于 2013-11-12T09:16:26.650 回答
0
您想使用 sunXACML 或 JAXB 来编组/解组 XACML 策略而不是 openSAML2。
于 2013-09-19T19:10:44.160 回答