問題タブ [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.
java - Java Kerberos 認証は機能しているように見えますが、それでも拒否されます
Java クライアント アプリと Java サーバー アプリがあり、Kerberos 経由でサーバーへの認証を試みています。クライアントは基本的に http-components と SPNEGO を使用して HTTP GET 呼び出しを行いますが、常に401 Unauthorized
結果として得られます。
以下の Kerberos ログイン シーケンスでエラーを見つけることができません。
web-services - SPNegoで保護されたサービスのテストにSoapUIを使用することは可能ですか?
SPNegoで保護されたWebサービスがあります(HTTPチャレンジはWWW-Authenticate:Negotiateを返します)。このセキュリティモードは、Windows統合認証とも呼ばれます。SoapUIを使用してこのサービスをテストすることは可能ですか?SoapUI(4.0.0)は、ネゴシエーションアルゴリズムに従うのではなく、チャレンジ401 HTTP応答を取得すると、通信を終了するようです。
c - SPNEGO / Kerberosセッションキーを取得し、HTTP認証を実装する方法:自分のクライアントでネゴシエートする
私は最近、私が知らなかった新しい認証方法にさらされました。少し読んで理解するために調べたところ、SPNEGOと関係があるのか、それとも単なるspnegoなのかがわかりました。
大規模なネットワークでWindowsXPを実行している場合、ブラウザを開くと、ネットワーク内のWebサービスに自動的に接続します。これには認証が必要です。
HTTP / 1.1 401 Unauthorized WWW-Authenticate:Negotiate
その後、私のブラウザは自動的に送信します(もちろんより多くのヘッダーと一緒に):
承認:ネゴシエート(暗号化された文字列)。
このハンドシェイクはSPNEGOプロトコルを使用していると結論付けました。
私がする必要があるのは、自分のクライアントを作成することです(実際には、その認証を必要とするこのWebサービスを使用するボットです)。私はその暗号化された文字列を(おそらく私のブラウザが取得するのとまったく同じように)ユーザーの操作なしで(おそらく私のブラウザとして)取得する必要があります。
問題は、spnegoプロトコルとその実装方法を研究するのに十分な時間がないということです。
私はc/c ++を使用していますが、オプションがない場合はc#でも問題ありません。すぐに実装するのに役立つ関数/クラス/コード、またはおそらく良いチュートリアルはありますか?
java - SpNego: 欠陥のあるトークンが検出されました
WCF サービスに接続する Java クライアントがあります。このサービスは、ホスト上で別のドメイン ユーザーとして (つまり、ローカル サービスやネットワーク サービスとしてではなく) 実行するように構成されています。サービスは、その WSDL で userPrincipalName を発行します。
SpNego トークン交換中に、クライアントで次の例外が発生します
ローカル システム アカウントで実行するように WCF サービスを構成すると、SpNego トークン交換が機能します。ローカル システム アカウントで実行されていないサービスのコードを変更する必要はありますか?
更新-1
C# クライアントを WCF サービスに接続してデバッグを行った後、C# クライアントがMS-SPNGと呼ばれる SpNego プロトコルの修正版を使用していることがわかりました。Java 6 はこれをサポートしていますか? トークンを調べると、サポートされていないメカニズム 1.2.840.113554.1.2.2.3 に関するエラーが表示されます。
apache - Spring-security、Tomcat、および SPNEGO - 最良のアプローチ
Tomcat と Windows でスプリング セキュリティ アプリケーションの SPNEGO/Kerberos ログインを実現するための最良の方法を探しています。私が見た候補者:
- Spring Security Kerberos 拡張機能
- ワッフル
- mod_auth_kerbモジュールを使用した Apache httpd フロント
- mod_auth_sspi モジュールを使用した Apache httpd
私は Waffle にはあまり感銘を受けませんでした。mod_auth_sspi は NTLMv1 しかサポートしていないようです。Apache httpd を前に置くことには価値があるので、これは良いアプローチのように思えます。しかし、それは春のセキュリティとどの程度うまく機能するのでしょうか。誰がこれをしたのですか?最良/最も安定したアプローチはどれですか?
java - チェックサムが失敗しました: Kerberos / Spring / Active Directory (2008)
Spring webapp で Kerberos/AD 認証を機能させるのに問題があります。この問題は、Kerberos チケットの暗号化タイプと Active Directory ドメインの機能レベルに関係していると思います。
基本的なセットアップは次のとおりです。
- トムキャット7
- ジャワ 1.6 (29)
- Windows Server 2008 R2
- 春 3.0
- Spring Security Kerberos/Spnego 拡張 M2 の詳細はこちら: http://blog.springsource.com/2009/09/28/spring-security-kerberos/
Active Directory ドメインの機能レベルが Windows Server 2003 である環境が 1 つあります。クライアントがドメインにログオンしている場合、クライアントは期待どおりに認証され、すべてが正常に動作します。この環境で kerbtray を使用してチケットを調べると、すべてのチケット暗号化タイプとキー暗号化タイプ「RSADSI RC4-HMAC」の両方があることがわかります。
機能レベルが Windows Server 2008 の新しいドメインがありますが、ここで認証が機能しません。チケットを検証しようとしたときに返されるアプリケーション エラーは次のとおりです。
スタック トレースは「ArcfourCrypto.decrypt」を示しているため、おそらく Kerberos チケットを RC4-HMAC として扱っています。再び kerbtray を使用してチケットを調べると、今度はクライアントにドメイン krbtgt/.COM の 2 つのチケットがあります。両方のチケットのキー暗号化タイプは RSADS1 RC4-HMAC で、1 つはチケット暗号化タイプにもこれがありますが、もう 1 つは「Kerberos AES256-CTS-HMAC-SHA1-96」です。
これが問題の原因であるかどうかはわかりませんが、認証例外を説明する可能性のある 2 つの環境で見つけることができた唯一の違いです。AD の暗号化ポリシーを変更してみたり、IE や Firefox を試したり、他に考えられるほとんどすべてのことを試しましたが、何も機能しませんでした。
これに対処するための助けをいただければ幸いです。プロダクションADのセットアップについてあまり指示できないので、Java側で修正することをお勧めします。
kerberos - Safari でのリバース プロキシの問題を伴う Windows 統合認証
私はWindows統合認証を備えたアプリケーションを持っています.インターネットユーザーのために、基本認証を使用して認証し、実際のアプリケーションにリダイレクトされるIISサーバーを持つリバースプロキシを使用しています.IEとFirefoxではすべてが期待どおりに機能しますが、 safari では、2 番目のログイン ダイアログ ボックスが表示されます。
Wireshark を使用してパケット キャプチャを行ったとき、IE と FF では基本認証が IIS サーバーから実際のアプリケーションに転送されることに気付きましたが、Safari ではその間に NTLM ネゴシエーションがあり、このためアプリケーションがもう 1 つのログイン ダイアログを要求します。 . サファリがこのように振る舞う理由を知っている人はいますか?
firefox - Firefox および Google Chrome の SPNEGO 設定
クライアントがログインが必要なドメイン以外のドメインにある場合、WAS7 上の IBM WebSphere Portal 6.1 で SPNEGO/Kerberos を介して動作するように Google Chrome と Firefox を構成しようとしています。 「ユーザー名とパスワードを要求する」ですが、FF と GC でこの設定の類似物を見つけることができません。
私の現在の FF & GC 設定:
FF:
GC:
クライアントがログイン先と同じドメインにある場合にのみ機能します。
unix - UNIX マシンでの JBoss Negotiation の設定
このリンクを使用して、Microsoft Active Directory の UNIX マシンで JBoss Negotiation を設定しようとしています https://community.jboss.org/wiki/ConfiguringJBossNegotiationInAnAllWindowsDomain?_sscc=t
しかし、私はエラーが発生します
UNIX マシンの IP が Active Directory で定義されていることを確認できる人はいますか?
ご協力いただきありがとうございます
tomcat - TOMCAT+SPNEGO 領域を再度制限する方法 ユーザーグループ
私は Tomcat SSO を初めて使用しますが、SPNEGO は自動サインオンで正常に動作しています。しかし、私のアプリはユーザーのグループをチェックする必要があります。SPNEGOはそれを行うことができますか? これらを SPNEGO フィルターの下に置きましたが、自動サインオンが中断されます
ありがとう。