2

我正在尝试在 CAS 服务器上将 CAS 用于 SSO 和 JAAS。用户信息在数据库表上。我为 JAAS 创建了自己的 LoginModule,并在jaas.conf.
下面是jaas.conf文件。

我在下面添加了以下行deployerConfigContext.xml

CAS   {
    com.usol.cas.sample.CasLoginModule required debug=true
    driver="com.mysql.jdbc.Driver"
    url="jdbc:mysql://linux.ssoserver/ssotest"
    user="cas"
    password="cas";
};

我发现JaasAuthenticationHandler不使用我的 CasLoginModule。

<bean class="org.jasig.cas.authentication.handler.support.JaasAuthenticationHandler" />

我在我的 java 源代码中写了System.out.println一行,但没有输出,我在 jaas.conf 文件中错误地更改了我的类名,ClassNotFoundError但没有发生错误。你觉得是什么原因?我无法解决我的问题。

先感谢您。

4

1 回答 1

1

检查我的代码..像魅力一样工作..

   <bean
                class="org.jasig.cas.authentication.principal.HttpBasedServiceCredentialsToPrincipalResolver" />
        </list>
    </property>

    <!--
        | Whereas CredentialsToPrincipalResolvers identify who it is some Credentials might authenticate, 
        | AuthenticationHandlers actually authenticate credentials.  Here we declare the AuthenticationHandlers that
        | authenticate the Principals that the CredentialsToPrincipalResolvers identified.  CAS will try these handlers in turn
        | until it finds one that both supports the Credentials presented and succeeds in authenticating.
        +-->
        <property name="authenticationHandlers">
        <list>

               <bean class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler" p:httpClient-ref="httpClient"></bean>

用户主用户名用户密码

          </list>
        </property>
</bean>


  <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName">
            <value>net.sourceforge.jtds.jdbc.Driver</value>
    </property>

    <property name="url">
            <value>jdbc:jtds:sqlserver://localhost:port/db</value>
    </property>

    <property name="username">
            <value>1234</value>
    </property>

    <property name="password">
        <value>password</value>
    </property>
</bean>
于 2012-12-26T06:44:44.593 回答