Security JBoss5上的JAAS web安全
您好,我正在尝试在jboss上执行基于表单的身份验证: 这些是我的配置文件。 login-config.xml:Security JBoss5上的JAAS web安全,security,jsf,jboss,jaas,Security,Jsf,Jboss,Jaas,您好,我正在尝试在jboss上执行基于表单的身份验证: 这些是我的配置文件。 login-config.xml: <application-policy name="MyPolicy"> <authentication> <login-module flag="required" code="org.jboss.security.auth.spi.DatabaseServerLoginModule"> <modul
<application-policy name="MyPolicy">
<authentication>
<login-module flag="required"
code="org.jboss.security.auth.spi.DatabaseServerLoginModule">
<module-option name="dsJndiName">java:/espritDS</module-option>
<module-option name="principalsQuery">SELECT password FROM users WHERE
username=?</module-option>
<module-option name="rolesQuery">SELECT groupname FROM groups WHERE
username=?</module-option>
</login-module>
</authentication>
web.xml:
<!-- Security -->
<security-constraint>
<web-resource-collection>
<web-resource-name>secret</web-resource-name>
<url-pattern>/faces/secret/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>admin</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/faces/login.jsp</form-login-page>
<form-error-page>/faces/loginError.jsp</form-error-page>
</form-login-config>
</login-config>
<security-role>
<role-name>admin</role-name>
</security-role>
和jboss-web.xml:
<jboss-web>
<!-- A security domain that restricts access -->
<security-domain>java:/jaas/MyPolicy</security-domain>
</jboss-web>
我认为我不需要设置用户和角色文件,因为我有一个数据库,我在其中插入了一些用户和角色,但我遇到了这个异常,没有设法处理它:
11:57:26587错误[UsersRolesLoginModule]无法加载用户/密码/角色文件
java.io.IOException:无属性文件:users.properties或defaults:defaultUsers.properties已找到您的角色查询有错误。应该是这样的:
<module-option name="rolesQuery">SELECT groupname, 'Roles' FROM groups WHERE
username=?</module-option>
我没有看到其他错误
您可以在此处阅读有关DatabaseServerLoginModule模块的更多信息:StelmachThanx,这是一个错误,我还忘了重新启动jboss。现在例外情况消失了。但是当我请求机密页面时,我不会被重定向到登录页面。是不是SQL请求中还有其他错误?@boskonovic不客气。我不知道为什么它不起作用。如果您使用SSL,请检查它是否已配置。我想最好再问一个描述恰当的问题。Stelmach好吧,多亏了你,现在一切都好了。实际上,没有其他错误。我甚至设法让ssl工作,但我不需要整个应用程序的ssl。有什么建议吗?我想我得问另一个问题,就像你说的。