0

JBoss7でシングルサインオンを構成しようとしています。

スタンドアロン.xmlのsecurity-domain:

<security-domain name="my_auth">
   <authentication>
      <login-module code="Database" flag="required">
         <module-option name="dsJndiName" value="java:/comp/env/myDS"/>
         <module-option name="principalsQuery" 
            value="select password from usertable where login_id=?"/>
         <module-option name="rolesQuery" 
            value="select user_role from usertable where login_id=?"/>
         <module-option name="hashAlgorithm" value="MD5"/>
         <module-option name="hashEncoding" value="hex"/>
       </login-module>
   </authentication>
</security-domain>

必ずしもstandalone.xmlの仮想サーバー

<virtual-server name="default-host" enable-welcome-root="true">
   <alias name="localhost"/>
   <sso/>
</virtual-server>

私のwebapp1とwebapp2のjboss-web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<jboss-web>
  <security-domain>my_auth</security-domain>
</jboss-web>

構成後は正常に動作します。しかし、少し問題があります。

サーバーを起動して初めてwebapp1またはwebapp2にログインすると、別のwebappはログインしません。最初のWebアプリからログアウトし、再度ログインすると、正常に動作します。

属性reauthenticate="false"をに追加しようとしましたが、それでも同じ問題が発生します。

私はこの問題について知りません、誰か提案がありますか?

4

1 に答える 1

0

jboss-web.xml にも SSO バルブを追加する必要があると思います。

以下は私のために働いた(JBoss 7.1.1)

スタンドアロン.xml

<security-domain name="my_auth">
   <authentication>
      <login-module code="Database" flag="required">
         <module-option name="dsJndiName" value="java:/comp/env/myDS"/>
         <module-option name="principalsQuery" 
            value="select password from usertable where login_id=?"/>
         <module-option name="rolesQuery" 
            value="select user_role from usertable where login_id=?"/>
         <module-option name="hashAlgorithm" value="MD5"/>
         <module-option name="hashEncoding" value="hex"/>
       </login-module>
   </authentication>
 </security-domain>

 ...
  <virtual-server name="default-host" enable-welcome-root="false">
      ...
      <sso reauthenticate="false"/>
  </virtual-server>

jboss-web.xml:

<jboss-web>

    <security-domain flushOnSessionInvalidation="true">java:/jaas/my_auth</security-domain>
    <valve>
        <class-name>org.apache.catalina.authenticator.SingleSignOn</class-name>
    </valve>

</jboss-web>
于 2014-02-11T10:21:39.067 に答える