問題タブ [spnego]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
internet-explorer - IE が Kerberos チケット情報を Linux 上の JBoss に送信しないのはなぜですか?
Windows クライアントと JBoss を使用して SSO を実装しようとしています。私の開発用 PC を所有しています。JBoss は Windows 7 で実行され、開発サーバーでは (Red Hat) Linux で実行されます。
Negiation ヘッダーが正しく到着しているかどうかを確認できるJBoss Negotiation Toolkitがあります。
BasicNegotiation
を使用して自分の PC で JBoss を実行している限り、テストは正常に機能しますlocalhost
。送信されたヘッダーは
Authorization: Negotiate YHgGBisGAQUFAqBuMGygMDAuBgorBgEEAYI3AgIKB...
(さらにいくつかのバイト)
テストの応答は、
Negotiation Toolkit Basic Negotiation WWW-Authenticate - Negotiate YHgGBisGAQUFAqBuMGygMDAuBgorBgEEAYI3AgIK...
NegTokenInit Message Oid - SPNEGO Mech Types - {NTLM} {Kerberos V5 Legacy} {Kerberos V5} {1.3.6.1.4.1.311.2.2.30} Req Flags - Mech Token -TlRMTVNTUAABAAAAl7II4gQABAAyAAAACgAKACgAAAAGAbAdAAAAD0lQSUVWMTAwMjVJUElF Mech List Mic -
しかし、Linux サーバーでは、同じテストは機能しません。基本的な理由 (推測) は、ヘッダーが異なって見えることです。
Authorization: Negotiate TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAAAAAAAAAAAAGAbAdAAAADw==
そして、JBoss Negotiation Toolkit は NTML 認証にフォールバックしますが、これは望ましくなく、webapp の出力にエラーとして表示されます。
ネゴシエーション ツールキット NTLM ネゴシエーション WWW-認証 - ネゴシエート TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAAAAAAAAAAAAGAbAdAAAADw==
NTLM - Negotiate_Message 警告、これは NTLM です。SPNEGO のみがサポートされています! ネゴシエート フラグ - (encryption56Bit)(explicitKeyExchange)(sessionKeyExchange128Bit)negoteVersion)(ntlm2)(alwaysSign)(ntlm)(lmKey)(sign)(requestTarget)(oem)(unicode) ドメイン名 = null - {length=0}{maxLength =0}{offset=0} ワークステーション名 = null - {length=0}{maxLength=0}{offset=0} バージョン - ?
Negotiation ヘッダーを送信するように Internet Explorer と Firefox の両方を構成しましたが、どちらも Linux サーバーで失敗します。
私は何を間違っていますか?
ところで、Windows は常にローカル マシンで Kerberos ネゴシエーション ヘッダーを送信するとどこかで読みましたが、本当ですか?
java - クライアントとサーバーが同じマシン上にある場合、Kerberos 認証が実行されない
jboss サーバーが実行されているのと同じマシンからアプリケーションにアクセスしようとすると、次のエラーが発生します。
クライアントとサーバーの両方が同じマシンにコードを入力しているときにそれを機能させる方法はありますか? Win7 で IE9 を使用していますが、トークンが kerberos ではなく NTLM であることを確認する方法を教えてください。
java - Kerberos SSO : 高レベルのフローと LDAP アクセス
全体の流れを把握するのに少し問題があります。認証ユーザー情報がウィンドウから直接選択される、すべての強力な kerberos SSO 統合を達成しようとしています。
私は使用しています:
- IWA からユーザー名を取得するための Tomcat 7 の Spnego フィルター
- ジャバ1.6
- バックエンドの Windows Server 2003 / テスト用のクライアント マシンとしての Windows XP
フロー全体についての私の理解は、次のような高レベルにあります。
- spnego を使用して、その tomcat フィルターを介してユーザー名を取得できます (この部分は既に機能しています)。
- LDAP(Kerberosで認証する)を介して別の呼び出しを行い、ログインしているユーザーについて必要な情報(所属するグループなど)を取得します
LDAP 部分の検索に apacheds 2 を使用しようとしています。
質問 (1): 私の理解は正しいですか? これは通常、別の方法で行われますか? (たぶん spnego を使用して、必要なすべての情報を直接取得しますか?)
今、次のように、ユーザー情報を取得するために、Apache を使用して、Kerberos 経由で LDAP にバックエンドでログインしようとしています。
このエラーが発生します:
私の質問は次のとおりです。
Q2: ldap+kerberos はよく使われる組み合わせだと思います。また、apacheds はこの目的で一般的に使用されるライブラリだと思います (そうでない場合、何を使用していますか?)。ただし、試してみてください。LDAP にアクセスするための Apache を介した Kerberos のサンプル コードは実際には見つかりません。Apache 経由で LDAP クライアントに関する大量の情報を見つけましたが、kerberos 認証では見つかりませんでした。これは通常、私が何か間違ったことをしている、またはこのスティックの間違った端をつかんだ (間違った方向に歩いている) ことを示しています。ここにアイデアはありますか?
Q3: SaslGssApiRequest は、ケルベロスを介して LDAP にアクセスするために LdapNetworkConnection が使用される正確な方法のようです (つまり、Apache に関して)。ただし、このクラスの名前のみを Google ですばやく検索しても、有用な情報はまったく表示されません (使用方法に関するドキュメントなど)。SaslGssApiRequest を使用せずに apacheds (つまりクライアント側) を使用して、私の目標を達成するための別のより簡単な方法はありますか?
Q4: 上記のコードが機能しないのはなぜですか? ユーザーまたはパスを無効なものに変更すると (現在、LDAP へのログインに通常の XP ユーザー ユーザー/パスを使用しています)、まったく同じエラーが発生することに注意してください。LDAP のサービス プリンシパル名をどこかに指定する必要はありますか (既にホスト/ポートを指定していても) ? もしそうなら、どこですか?
PS私のlogin.confとkrb5.iniファイルは、すでに動作しているspnegoの例で使用しているものとまったく同じなので、正しいはずです。
spring-mvc - kerberos/spnego 認証を使用した春のセキュリティ
ケルベロス認証を使用した春のセキュリティが正常に機能しています。しかし、春のフレームワークはロールを取得するために KerberosServiceAuthenticationProvider.userDetailsService を呼び出しているようです。セッションが無効になるまで、ロールを一度だけ取得すると思っていました。私の設定は次のようになります
したがって、安全なページが要求されるたびに DummyUserDetailsService.loadUserByUsername(Styring username) が呼び出されます。データベースからユーザーの役割をロードしていますが、要求が行われるたびにクエリを実行したくありません。必要な構成はありますか?これを防ぐには?
aes - jaaslounge spnego/kerberos チケット復号化 aes-256
jaas ラウンジと aes256-cts でこれを行った人はいますか? jaaslounge KerberosEncData には、このタイプの暗号化の実装がないようです。
aes256-cts-hmac-sha1-96 の有効な復号化ツールを一緒にハッキングした人はいますか?
spring-security - kerberos チケットの有効期限が切れるとどうなりますか?
Active Directory サービスからユーザーを認証するために、春のセキュリティで kerberos/spnego 認証を使用しています。クライアントは Windows 7 です。kerberos チケットの更新プロセスに懸念があります。チケットが 10 時間有効であることを理解しています。ユーザーが起動し、kerboros チケットを使用するアプリケーションがマシンに存在するチケットの有効期限が切れた場合、ブラウザーは AD サーバーに新しいチケットを自動的に要求しますか、それとも認証に失敗しますか?
java - SPNEGO を使用した Java SSO
私はこのトピックの初心者です。Tomcat 6.0.29 で Web アプリケーションの認証 Java SSO を実装するのに助けが必要です。SPNEGO について読んで、 http: //spnego.sourceforge.net/ の helloKDC.java と hello_spnego.jsp の例がうまく機能することを証明しましたが、ソリューションを実装するために従わなければならない手順がわかりません。つまり、リモートユーザーの名前を取得するのに十分ですか? または、その身元を保証し、現在のユーザーのセッションを維持するために何か他のことをしなければなりませんか?.
wcf - WCF 相互運用性 Kerberos SPNego 対応 Web サービス
テスト用の Windows Server 2012 ドメインがあります。このドメインのメンバーである 2 台のコンピューターがあります。
1 台のコンピューターは Oracle Corporation によって開発されており、仮想マシン上で Linux のバージョンを実行しています。このマシンは、おそらく IBM WebSphere によってホストされている SPNego Kerberos 認証 Web サービスをホストしています。
もう 1 台のコンピュータは、Microsoft 仮想マシンでホストされている Windows XP クライアントです。
Kerberos を使用してユーザーを認証するために、Active Directory 内に SPN を作成しました。
次に、ブラウザを使用して Web サービスをテストしました。WSDL アドレスにより、SOAP データが完全に復元されました。
クライアント プロキシ コードを WCF 4.0 クライアントに組み込み、認証をテストするために再度有効にできるように、Kerberos を無効にしました。
ただし、Client Proxy で提供されているメソッドを使用して Web サービスに接続しようとすると、あらゆる種類のセキュリティ関連のエラーが発生します。
以下は、Web サービスへの接続に使用されるクライアント側の App.config ファイルです。
ネットワーク資格情報の提供もコードで行われました。しかし、残念ながら、役に立ちませんでした。
ありがとうございました。
swing - kerberos/spnego を使用して Swing クライアントのサーバー側でユーザーを認証する
Java Swing アプリケーションのユーザー認証に kerberos プロトコルを使用しています。クライアント側では正常に認証できますが、サーバー側でユーザー資格情報とロールを取得するときに問題が発生し、それらの ejb を作成するために特定のロールを必要とする ejb を取得しました。
jboss-app.xml は次のようになります
Subject.doAs(s, lv); を呼び出すクライアント クラス。lv は PrivilegedExceptionAction を拡張したクラスです。
サーバー側で、jboss サーバーの login-config.xml は次の設定を取得しました
次のエラーが発生します: