首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JasperServer默认角色权限

JasperServer默认角色权限
EN

Stack Overflow用户
提问于 2012-04-05 09:38:41
回答 2查看 8.5K关注 0票数 1

在搜寻网络后,这是我的“最后手段”;)

我用映射到ROLE_USER的用户设置了一个ROLE_USER。我的问题是这些用户可能会做各种各样的事情。

My set :安装了JasperServer 4.1的 Virtualbox Windows SP3。

他们需要能够做所有的事情,如果你是一个管理用户登录,你右键点击一个文件夹,并选择添加资源。

我找不到可以更改某些角色的默认文件夹权限的页面。我已经看过WEB文件夹了,但是我不知道该更改什么,也不知道该保留什么.

欢迎任何帮助!

谢谢大家!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-24 20:24:52

您将希望编辑文件WEB/actionModel-search.xml。每个菜单项都由一个<option />标记表示,它们被包装在<condition>标记中,以确定您是否可以看到它们。如果条件标记的测试属性是checkAuthenticationRoles,那么testArgs属性的值将决定哪些角色可以看到这些选项。如果您想要一个以上的角色,请用逗号分隔它们。

票数 3
EN

Stack Overflow用户

发布于 2012-04-26 13:10:05

,这是解决办法。可以随意使用;-)

问题

我所面临的问题是一个巨大的问题。在我正在从事的一个项目中,有人问我们是否可以将JasperServer默认角色权限更改到这样一个程度,即我们的JasperServer上的某些客户可以添加管理员所能提供的所有资源。在无休止地搜索网络之后,我们几乎要放弃了,但是突然间,我们得到了一个提示。这个暗示是成功的。检查上面的文章在堆栈溢出。

解决方案

解决方案之一是需要修改/更改JasperServer XML文件。我已经在浏览所有的XML文件,但是找到正确的文件是一个挑战。您需要修改的XML文件位于JasperServer安装目录的WEB文件夹中。在我的机器上是这个:

代码语言:javascript
复制
C:\Program Files\jasperreports-server-cp-4.5.0-2\apache-tomcat\webapps\jasperserver\WEB-INF

您需要的文件是这个:actionModel-search.xml

警告:不要忘记首先备份原始文件。如果事情进展顺利的话,你不会想重新开始的!

解释

首先,安装JasperServer。我只在社区版的JasperServer上测试过这一点。因此,我想,如果这在社区版本上有效,那么它也适用于付费支持的版本。安装之后,转到您的JasperReports主页并使用以下凭据登录:

代码语言:javascript
复制
URL: http://localhost:8080/jasperserver
User: jasperadmin
Password: jasperadmin

请注意,这只是虚拟机上的测试设置。如果您打算在生产服务器上这样做,出于安全考虑,请更改jasperadmin用户的密码。

一旦您登录,就去创建一个新用户。1.点击“管理”2,点击“用户”3,点击“添加用户”a,给出用户名b,输入密码4,点击“添加用户”。

现在用户已经创建好了,您可以继续创建一个新角色。要做到这一点,请执行以下步骤:

“Manage”

  • Click

  • 在“Roles”

  • Click上单击“添加角色”

  • 填写角色名称

  • 单击“添加角色”

写下新创建的角色名,因为这是我们将要使用的角色,用于“攻击”XML以满足我们的需要。

若要将用户添加到角色中,请执行以下操作:

单击您刚刚在created

  • Click上“Edit”

  • Select上的角色--需要新角色的用户。

  • 单击“保存”。

接下来您需要做的是给角色读+写+删除文件夹的权限。

“Permissions”

  • Select
  1. 右键单击文件夹
  2. ,单击需要此access

的角色旁边的

读取+写+删除

现在,您已经做好了准备,可以“黑”您的XML文件了。

打开actionModel-search.xml文件。别忘了先拿一份文件的副本!

在xml文件的开头,查找如下所示的一行代码。

代码语言:javascript
复制
 <condition test="checkAuthenticationRoles" testArgs="ROLE_USER,ROLE_ADMINISTRATOR">

这是您需要修改的第一行。将您的角色添加到testArgs部分。确保所有角色都用逗号分隔。

代码语言:javascript
复制
 <condition test="checkAuthenticationRoles"> testArgs="ROLE_USER,ROLE_ADMINISTRATOR**,USER_RESOURCES**">

在下一个条件行中,进行相同的更改。保存文件。要使更改处于当前状态,需要重新启动JasperServer。在windows系统上,您可以访问

  • To Stop:=> JasperReports Server…所有程序=>启动或停止服务=>停止服务
  • To Start:=> JasperReports Server…=>启动或停止服务=> Start Service

现在使用您创建的用户登录并右键单击具有正确权限的文件夹。现在您可以添加管理员可以添加的所有资源。

如果您想要的话,您可以使用XML文件来进一步改变行为。例如:您的客户端禁止添加jasper报告中的图像。在这种情况下,您可以修改XML,如下所示。

在此代码周围放置条件测试:

代码语言:javascript
复制
<option labelKey="resourceTypes.image" action="invokeCreate" actionArgs="FileResource@@img" className="up"/>

要像这样的代码:

代码语言:javascript
复制
<condition test=checkAuthenticationRoles” testArgs=”ROLE_ADMINISTRATOR”>
<option labelKey="resourceTypes.image" action="invokeCreate" actionArgs="FileResource@@img" className="up"/></condition>

这样,只有管理员才能向文件夹中添加图像。瞧,你们都准备好去玩JasperReports服务器的副本了。

玩得开心!

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10026206

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档