java - 跨项目共享 JBoss/WildFly 安全域

标签 java security jboss jboss7.x

这就是问题:

我有一个自定义安全域,可以对 Activity 目录中的用户进行身份验证,但从文件中获取角色(将来从数据库中获取)

每个项目的一切都像一个魅力,但是 session 不会在多个项目之间共享,即使这些项目共享相同的安全域,如果用户在一个项目中进行了身份验证,则必须在另一个项目中再次进行身份验证。

standalone.xml 中的安全域定义

            <security-domain name="custom-form-auth" cache-type="default">
                <authentication>
                    <login-module code="ro.test.login.CustomLoginModule" flag="required" module="ro.test.Process-login">
                        <module-option name="activeDirectory" value="${jboss.server.config.dir}/activeDirectory.properties"/>
                    </login-module>
                </authentication>
            </security-domain>

jboss-web.xml

<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
   <security-domain>custom-form-auth</security-domain>
   <disable-audit>true</disable-audit>
</jboss-web>

最佳答案

对于跨应用程序的共享身份验证,您必须启用单点登录功能。单点登录配置允许对使用不同 Web 上下文的公司站点进行集中登录配置。

要在 JBoss7 中启用 SSO,您需要在 Web 子系统中添加 sso 选项(SSO 是按主机配置的):

   <subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false">  
        <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>  
        <virtual-server name="default-host" enable-welcome-root="true">  
            <alias name="localhost"/>  
            <alias name="example.com"/>  
            <sso reauthenticate="false"/>  
        </virtual-server>  
    </subsystem> 

参见:https://developer.jboss.org/wiki/JBossAS711WebSSONon-Clustered

关于java - 跨项目共享 JBoss/WildFly 安全域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27980747/

相关文章:

java - 使用 Timer/ScheduledThreadPool 来减少频繁更改元素的 CPU 负载

java - Jax-Ws 解码错误

android - 我可以识别应用程序分发吗?

c# - Asp.NET 登录控件 : Dealing with brackets in passwords

java - Shiro session 注销不起作用

java.sql.SQLRecoverableException : Closed Connection; State=08003; ErrorCode=17008

java - 支持桌面和桌面浏览器,但浏览器仍然挂起

java - 生成异常或在 if 中使用 instanceof

java - hibernate6抛出异常 'scale has no meaning for floating point numbers'

c++ - 如何保护系统和数据库之间的密码