我需要预防 调度 </跨度> 普通用户在JasperServer中报告,甚至修改以前的用户 时间表 </跨度> 由ROLE_ADMINISTRATOR制作。只有可以 调度 </跨度> ROLE_ADMINISTRATOR。
我按照本指南 http://community.jaspersoft.com/wiki/how-customize-navigation-resource-menu-right-click-resource和这一个控件 调度 </跨度> 在JasperReports Server中防止使用 调度 </跨度> 行动,它只有
我找到了遵循这个指南的解决方案: http://community.jaspersoft.com/documentation/jasperreports-server-ultimate-guide/v561/restricting-access-role
我在页面中使用了“按角色限制JSP文件的一部分”:
“... / WEB-INF / JSP /模块/ reportScheduling / main.jsp中”
要将按钮(“创建计划”,“立即运行”和“刷新列表”)限制为ROLE_USERS,需要使用标记封装此代码 的 AuthZ的:授权 强>
<li class="node open"> <ul class="list buttonSet"> <li class="leaf"> <button class="button capsule text first up scheduleJob"> <span class="wrap"><spring:message code="report.scheduling.list.button.new"/></span> <span class="icon"></span> </button> </li> <li class="leaf"> <button class="button capsule text last up runJob"> <span class="wrap"><spring:message code="report.scheduling.list.button.now"/></span> <span class="icon"></span> </button> </li> </ul> </li> <li class="node open"> <ul class="list buttonSet"> <li class="leaf"> <button class="button capsule text up refreshList"> <span class="wrap"><spring:message code="report.scheduling.list.button.refresh"/></span> <span class="icon"></span> </button> </li> </ul> </li>
这条路:
<authz:authorize ifAllGranted="ROLE_ADMINISTRATOR"> <li class="node open"> ... </li> </authz:authorize>
最后,限制作业的计划结果列表:
<!-- body of jobs list --> <authz:authorize ifAllGranted="ROLE_ADMINISTRATOR"> <div id="resultsContainer" class="body"> <ul id="resultsList" class="list collapsible tabular jobs sixColumn"></ul> </div> </authz:authorize> <!-- end of body of jobs list -->