春JAAS認証プロバイダのための読み取りエラー設定ファイル

StackOverflow https://stackoverflow.com/questions/1065684

  •  21-08-2019
  •  | 
  •  

質問

本当にこの1に私の髪をリッピング。私は私の春のWebアプリケーション用に構成されたJAAS認証プロバイダを持っています。次のように私はそれのためのBean定義を作成しました。

 <beans:bean id="jaasAuthenticationProvider"
     class="org.springframework.security.providers.jaas.JaasAuthenticationProvider">
    <custom-authentication-provider />
    <beans:property name="loginConfig" value="file:webapps/mywebapp/WEB-INF/login.conf"/>
    <beans:property name="loginContextName" value="myWebapp"/>
    <beans:property name="callbackHandlers">
       <beans:list>
          <beans:bean class="org.springframework.security.providers.jaas.JaasNameCallbackHandler"/>
          <beans:bean class="org.springframework.security.providers.jaas.JaasPasswordCallbackHandler"/>
       </beans:list>
    </beans:property>
 </beans:bean>

JAASのための私はlogin.confファイルます:

myWebapp {
    com.sun.security.auth.module.Krb5LoginModule 
    required  
    doNotPrompt=false
    useTicketCache=true
    debug=true;
};

com.sun.security.jgss.initiate {
    com.sun.security.auth.module.Krb5LoginModule 
    required;
};
春の初期化時に

、それは正しくBeanを構成します。私は私のWebアプリケーションにログインしようとすると、しかし、私は次のエラーを取得する:

DEBUG webapp.AuthenticationProcessingFilter - Authentication request failed: org.springframework.security.AuthenticationServiceException: I/O error while reading configuration file.; nested exception is javax.security.auth.login.LoginException: I/O error while reading configuration file.

私はどこにも春のソースコードでこのエラーメッセージを見つけることができない、とエラーメッセージ自体は全く役に立ちません。これを引き起こしている可能性がどのような任意のアイデア?

役に立ちましたか?

解決 2

答えを見つけました。 JAASは、実際には正しく設定ファイルをロードしましたが、私は私の地元のJDKでkrb5.confファイルがありませんでした。このファイルが住んでいる必要があります:

$JAVA_HOME/lib/security

例:

[libdefaults]
  default_realm = DOMAIN.NET
  dns_lookup_kdc = true

[domain_realm]
  .domain.net = DOMAIN.NET

ここでdomain.netはKerberosドメインの名前であり、そしてDOMAIN.NETは大文字に同じである。

他のヒント

WEB-INFディレクトリからそれを読み取ろうというし、クラスパス上のファイルを置きます。 - /webapps/myapp/WEB-INF/classes/login.confは、あなたの春の設定で行を次のように変更します。

    <beans:property name="loginConfig" value="classpath:login.conf"/>

私はあなたが春のエラーを取得しますが、ファイルシステム/ Javaエラーを取得しているとは思わない、あなたはディレクトリWEB-INFから読み取ることができません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top