java / Jboss多个登录模块

时间:2017-02-21 14:16:39

标签: java jboss

我必须建立一个新的安全措施。我已经看到我可以使用多个登录模块而不是多个安全域。但我不知道如何以及何时告诉我的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>

1 个答案:

答案 0 :(得分:0)

从观点来看,您只能配置它使用的安全域的应用程序。 堆叠LoginModules(配置多个登录模块)时,可以在堆栈的上下文中指定此类模块的重要性。

例如:如果您将LDAP LoginModule标记为required并且数据库已标记为sufficient 然后LDAP登录模块必须成功,数据库才能成功,当数据库模块成功时,登录过程就完成了。

下面的列表解释了每个标志的语义:

  • 必需:模块必须成功;登录过程将始终 继续
  • 必备:模块必须成功否则登录进程
  • 足够:模块成功后,登录过程完成
  • 可选:无论结果如何,登录过程都将继续