我必须建立一个新的安全措施。我已经看到我可以使用多个登录模块而不是多个安全域。但我不知道如何以及何时告诉我的java应用程序我应该使用哪个登录模块? 这是我使用的登录模块类型:
<login-module code="Database" flag="required">
<module-option name="dsJndiName" value="java:/jdbc/hrdb"/>
<module-option name="principalsQuery" value="select TRIM(CDPASS) from"/>
<module-option name="rolesQuery" value="select TRIM(ROLES),'Roles' from/>
<module-option name="unauthenticatedIdentity" value="guest"/>
</login-module>
答案 0 :(得分:0)
从观点来看,您只能配置它使用的安全域的应用程序。
堆叠LoginModules
(配置多个登录模块)时,可以在堆栈的上下文中指定此类模块的重要性。
例如:如果您将LDAP LoginModule
标记为required
并且数据库已标记为sufficient
然后LDAP登录模块必须成功,数据库才能成功,当数据库模块成功时,登录过程就完成了。
下面的列表解释了每个标志的语义: