0

認証に Kerberos を使用して tomcat JNDIRealm を実行しようとしています (authentication="GSSAPI")。

しかし、私はこれを得ています:

SEVERE: Catalina.start:
LifecycleException: ディレクトリ サーバー接続を開くときに例外が発生しました:  
javax.naming.AuthenticationException: GSSAPI
[ルート例外は javax.security.sasl.SaslException: GSS の開始に失敗しました
 [GSSException が原因: 有効な資格情報が提供されていません
 (メカニズム レベル: 新しい INITIATE 資格情報を取得しようとして失敗しました! (null))
]]

私はこれをserver.xmlに持っています:

<Realm className="org.apache.catalina.realm.JNDIRealm"
                        authentication="GSSAPI"
                        connectionName="CN=XXX ユーザー、OU=XXXGenericAccounts、\
                                                   DC=xxx,DC=com"
                        connectionPassword="何とか"
                        connectionURL="ldap://blah.xxx.com:389"
                        alternateURL="ldap://blah.xxx.com:389"
                        roleBase="OU=XXXGroups,DC=xxx,DC=com"
                        roleName="cn"
                        roleSearch="member={0}"
                        roleSubtree="true"
                        userBase="OU=XXXUsers,DC=xxx,DC=com"
                        userSearch="sAMAccountName={0}"
                        userSubtree="true"/>

ここで何が欠けているのか分かりますか?

4

3 に答える 3

1

システム プロパティを介して渡す必要があります。

  • krb5.conf/ini へのパス
  • login.conf へのパスには、クレデンシャルの取得方法が構成された Krb5Module を持つデフォルトの Sun 名があります。
于 2011-06-29T11:45:05.937 に答える
1

このエラーは、Kerberos が正しくセットアップされていないことを示しています。

-D または を使用して、次の JVM パラメータを設定する必要がありますSystem.setProperty()

java.security.krb5.realm : Default realm, like EXAMPLE.COM
java.security.krb5.kdc : KDC hostname, like ad.example.com
于 2009-09-17T04:01:04.040 に答える
1

ジョレル:

レルム/KDC を定義する最初の問題に加えて、発生している NamingException がエラー メッセージに記載されています --- LDAP サーバー「blah.xxx.com」では匿名バインドが許可されておらず、Tomcat が試行中ですバインドせずに検索を実行します。

ユーザーの資格情報を使用して LDAP を検索する場合、問題は資格情報を LDAP に転送していないことです。これが Java 内でどのように機能するかについてはまだよくわかりませんが、考えられる原因がいくつかあります。

  1. Tomcat は、転送/委任できるチケットを要求していません。
  2. クライアントはそのようなチケットを提供していません。関連するブラウザー構成については、 http : //publib.boulder.ibm.com/infocenter/ltscnnct/v2r0/index.jsp?topic= /com.ibm.connections.25.help/t_install_kerb_edit_browsers.html を参照してください。
  3. Tomcat は、適切に要求/指定されたチケットを使用して、LDAP サーバーへの SASL バインドを実行しようとしていません。

connectionName DN を bindDN として使用して検索しようとしている場合は、LDAP サーバーでの失敗、つまり「無効な資格情報」(ユーザー/パスが正しくない) または ACL の問題を確認してください。

于 2010-01-04T22:40:03.770 に答える