的jboss-web.xml中
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
<security-domain flushOnSessionInvalidation="true">my-aktion
</security-domain>
<valve>
<class-name>utils.MyAuthenticator</class-name>
</valve>
</jboss-web>
Run Code Online (Sandbox Code Playgroud)
standalone.xml
<security-domain name="my-aktion" cache-type="default">
<authentication>
<login-module code="utils.MyAuthenticator" flag="required">
<module-option name="dsJndiName" value="java:jboss/datasources/MySQLDS"/>
<module-option name="principalsQuery" value="SELECT password FROM user WHERE username=?"/>
<module-option name="rolesQuery" value="SELECT r.role, 'Roles' FROM Role r INNER JOIN user u ON u.role_id = r.id WHERE u.username=?"/>
<module-option name="hashAlgorithm" value="SHA-256"/>
<module-option name="hashEncoding" value="base64"/>
</login-module>
</authentication>
</security-domain>
Run Code Online (Sandbox Code Playgroud)
web.xml(摘录)
<security-constraint>
<web-resource-collection>
<web-resource-name></web-resource-name>
<url-pattern>/Profile/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>User</role-name>
<role-name>Manager</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<realm-name>my-aktion</realm-name>
<form-login-config>
<form-login-page>/Login/login.xhtml</form-login-page>
<form-error-page>/Login/error.xhtml</form-error-page>
</form-login-config>
</login-config> …Run Code Online (Sandbox Code Playgroud)