获取Java webapp中的所有用户和角色

时间:2015-07-27 04:27:57

标签: java tomcat user-roles servlet-container

问题:

  • 是否存在用户和用户的概念Servlet容器的一般角色?
  • 如果是这样,是否有与容器无关的方式来访问这些用户和角色?
  • 如果没有,有没有办法访问Tomcat Realm用户&角色?

背景:

我想从Java webapp上下文(Servlet容器)获取所有用户及其角色,或者更好的是查询用户及其角色。

我看到有像Apache Directory这样的项目,如果您知道连接字符串,可以让它为LDAP执行此操作。但是,我希望对提供用户和角色的技术不了解。

具体来说,我在Tomcat上,并且在最简单的场景中想要访问用户& a)中的角色tomcat-users.xml b)上下文中任何其他已配置的Realm。但是,我真的在寻找一种不是特定于Tomcat的解决方案,而且它是Realms

1 个答案:

答案 0 :(得分:0)

在tomcat(或任何其他conytainer)中(使用std.Servlet API),无法直接访问用户角色(不使用tomcat /第三方特定机制)。 getUserPrincipal& isUSerInRole是两种方法,不能直接访问角色列表。

由于API不提供此类访问权限,我猜您将不得不依赖其他容器或技术特定的机制。

正如您所指出的,如果配置的领域是JNDI领域并且领域存储是通过LDAP实现的,则可以编写servlet过滤器并从LDAP获取角色并在会话或线程上设置它们本地