問題タブ [ntlm]

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.

0 投票する
2 に答える
1936 参照

iis-7 - NTLM認証は、2k8IIS7リバースプロキシの背後にある2k8アプリケーションサーバーに対するIEでのみ失敗します

Windows / NTLM /WIA/その他の認証を使用しているイントラネットサイト用のASP.NETアプリケーションを開発しています。アプリケーションはWindows2k8サーバーでホストされていますが、別の2k8マシンでIIs7を使用してリバースプロキシ経由でアクセスされます。

認証はFireFox、Chrome、Safariで正常に機能しますが、IE8では失敗します。プロキシを迂回してアプリケーションサーバーに直接アクセスすると、正常に動作するため、プロキシと関係があります。

3台のマシンのいずれのイベントビューアにも、何が起こっているのかを示すものは何もありません。

IE8を使用して接続すると、資格情報を自動的に渡すのではなく、資格情報の入力を求められます。はい、ドメインの信頼を超える明示的な信頼を設定しましたが、プロキシから返される401エラーでエラーが発生します。

これのトラブルシューティングをどこから始めればよいか考えてみてください。

0 投票する
1 に答える
1695 参照

asp.net - ASP.NET でのエンド ツー エンドの kerberos 委任認証

HttpWebRequest を使用して、ユーザーに代わってネットワーク内の別のバックエンド サービスに接続する内部 Web サイトをセットアップしようとしています。バックエンド システムはこのタイプの認証のみをサポートするため、ASP.NET アプリケーションでは統合 Windows 認証を使用する必要があります。

ASP.NET アプリケーションで IWA をセットアップでき、期待どおりに kerberos を使用しています。ただし、認証がバックエンド システムに委任されると、機能しなくなります。これは、バックエンド システムが kerberos IWA のみをサポートしているにもかかわらず、委任が何らかの理由で (着信要求が kerberos 認証されている場合でも)、バックエンド システムに転送する前に認証を NTLM に変換するためです。

kerberos を使用して ID を転送できるようにするために、ASP.NET アプリケーションで何をする必要があるか知っている人はいますか?

次のことを試しましたが、うまくいかないようです

また、現在「ネゴシエート」と表示されている場所に「ケルベロス」を設定しようとしましたが、あまり効果がないようです。

0 投票する
2 に答える
29545 参照

python - Python での NTLM 認証

Pythonを使用してWindows 7からIIS(Windows Server 2003)にNTLM認証を実装しようとしています。LAN Manager 認証レベル: NTLM 応答のみを送信します。
クライアント マシンとサーバーは同じドメインにあります。
ドメイン コントローラー (AD) は別のサーバー (Windows Server 2003 も実行) にあります。

401.1 - Unauthorized: Access is denied due to invalid credentials. というメッセージが表示されます。このコードの何が問題なのかを調べたり、この問題を解決するための他の方法 (NTLM または Kerberos を使用) を教えてください。

sspi.py はこちらから入手できます: https://ironpython.svn.codeplex.com/svn/IronPython_Main/External.LCA_RESTRICTED/Languages/IronPython/27/Lib/site-packages/win32/lib/sspi.py

ありがとう!

0 投票する
2 に答える
11066 参照

java - Apache Axis2 1.5.1 および NTLM 認証

NTLM と Java に関する StackOverflow のすべての議論を閲覧しましたが、答えが見つからないようです。もっと具体的にしようと思います。

NTLM 認証用に構成されている (希望する) クライアント スタブを返すコードを次に示します。

これにより、有効な SerivceStub オブジェクトが返されます。スタブで呼び出しを実行しようとすると、ログに次のように表示されます。

誰でもこの問題の解決策を持っていますか?

0 投票する
2 に答える
5004 参照

windows - Apache/Linux サーバーでの Windows ユーザーの自動認証

ユーザーが Linux サーバー上の apache を実行しているサイトを参照するときに Windows アカウントを AD に対して認証したい場合、通常の容疑者は次のとおりです。  

  • リスト項目
  • mod_ntlm (私が遠い過去に使用したもの) - 2003 年の最終更新
  • mod_auth_ntlm_winbind - 2007 年 4 月の最終更新
  • mod_auth_kerb - 2008 年 12 月の最終更新

最近の完全にパッチが適用された Windows 2000 AD サーバーでそれらのいずれかを動作させることはできません。

うまくいくレシピの手がかりはありますか? 

-ピーター

- アップデート

私の現在のビルド環境はこれです:

  • OS: Ubuntu ルシッド
  • Apache 2.2.14 (リポジトリから)

ソースから再コンパイルした認証モジュール。

0 投票する
1 に答える
1751 参照

python - 独自のNTLM認証を行うDjango(HTTPヘッダーとすべて)

Pythonで記述された内部WebアプリケーションのためにApacheからLighttpdに移行することを検討しています。問題は、私がlibapache2-mod-auth-ntlm-winbind ...に依存していることです。これは、実際には十分にサポートおよび更新されたパッケージではないようです(ただし、実際にうまく機能しているためかもしれません)。

HTTP認証を処理するためにdjango自体を使用するために必要なものについての提案とヒントを探しています。これにより、私はWebサーバーにとらわれず、壮大な学習体験になる可能性があります。

いくつかの話題の懸念:

  1. カスタムアプリケーションに真のHTTP認証を実行させることは合理的ですか?
  2. ユーザーにパスワードの入力を求めずに、Windowsドメインコントローラーに接続されたPythonコードをこの種の認証に接続することは、どの程度関与していますか?
  3. NTLMは、LDAPを介したWindowsドメインコントローラーへのさらに別の接続を介した検索を停止できるように、ユーザーの詳細とグループメンバーシップへのアクセスを提供しますか?

コミュニティと共有できるこのテクニックを簡素化するモジュールを書けるようになりたいです。

0 投票する
3 に答える
8443 参照

authentication - 安全な Web サービス (NTLM) - Jmeter

Jmeter で Web サービスをテストしようとしています。WebService(SOAP) RequestWeb サービスは NTLM 認証 (Windows) で保護されています。サンプラーを使用して WSDL を読み込むことができます。現在、このSO 回答に記載されている BurpSuit でプロキシ サーバーを使用している場合にのみ機能します(SOUP UI の代わりに、BurpSuite で Jmeter を使用しています)。

しかし、プロキシ サーバーを使用する代わりに、NTLM 認証を使用して Jmeter で Web サービスを直接使用したいと考えています。すでにHTTP Authentication Managerntlm 認証を試しました。しかし、それでも401 Authorization Required応答が返ってきます

助けてくれてありがとう。

サンプラ結果。

と応答

0 投票する
3 に答える
326 参照

git - NTLM ファイアウォール内から github にコードを送信するための最良のオプションは何ですか?

コード プロジェクトの一部をより適切に整理するために github を使用することを考えています (c、c#、js、golang、および ruby​​ ですべての主要な暗号化アルゴリズムを実装するという使命がありますが、それは別の話です...) .

しかし、NTLM ファイアウォールの背後で立ち往生しています。コードをチェックインする方法について何か提案はありますか? ファイアウォールを介して動作するように tortoisegit と ntlmaps を設定する必要はありますか? github がそのように機能するとは思いませんが、Web フォームからコードをアップロードすることさえできれば幸いです。

皆さんありがとう

0 投票する
1 に答える
2117 参照

c# - NegotiateStream は、SASL (POP3/IMAP/SMTP) 経由で Kerberos/NTLM/GSSAPI を使用できませんか?

Exchange 2007 アカウント (SMTP/POP3/IMAP) にログインするために、(現在ログインしている Windows ユーザーの既定の資格情報を使用して) 統合 Windows 認証を取得しようとしています。

私はすでにこれの実装を行っていますが、SSPI 関数を使用しているため、管理されていないコードのアクセス許可が必要です (ダメです)。これには NegotiateStream クラスを使用しようとしましたが、機能しません。

POP3/IMAP/SMTP で NegotiateStream を直接使用することはできません。会話全体のすべての要求と応答を base64 でラップし、メール プロトコルのサフィックスなどを含める必要があるためです。そのため、これを行う独自のストリーム クラスを実装しました。 NetworkStream と NegotiateStream の間に挿入しました。ただし、NegotiateStream によって作成された要求とそれが期待する応答は、私が正常に使用してきたもの (および NTLM/GSSAPI の種類の認証が可能な他のメール クライアントによって作成されたもの) とは異なることに気付きました。

特に、NegotiateStream は最初に、他の実装では送信されない 5 バイト長の要求を送信します。このパケットは、「プロトコル エラー」メッセージで Exchange によって拒否されます。

NegotiateStream によって作成された 2 番目の要求は正しいものです (NTLMSSP で始まります)。そこで、base64 エンコードの中間ストリームの最初のパケットを無視し、送信しないことにしました。Exchange が 2 番目のパケットを取得すると、このパケットを正常に消費し、適切な継続応答を返します。ただし、今回は NegotiateStream が 5 バイトの応答を受信する必要があるのに対し、サーバーははるかに大きな応答を返しました。簡単に言えば、NegotiateStream は +1 要求を送信し、必要以上に +1 応答を期待しています。

最初の「冗長な」5 バイト パケットの送信を回避できますが、NegotiateStream が期待する最初の 5 バイト応答パケットを発明することはできません。NegotiateStream が以前に送信しようとしたのと同じパケットをフィードしようとしましたが、もちろんこれは機能しませんでした。

何が起こっているのか、これを修正する方法を知りたいです。Windows XP SP3 および Windows Server 2008 でも同じ動作が発生します。

私は Kerberos/GSSAPI の専門家ではありませんが、ドキュメントで見つけたものから、Kerberos の会話は実際には 5 バイトのパケットで開始する必要があるようです。ただし、他の作業ツールを使用しているときに見たことはなく、Exchange も拒否します。おそらく、GSSAPI が SASL プロトコル (認証のために POP3/IMAP/SMTP で使用される) で使用されている場合、最初のパケットは省略されるべきでしょうか? しかし、これについて NegotiateStream にどのように伝えることができますか、または少なくともサーバーからの 5 バイトの応答を期待するときに何を送信する必要がありますか?

NegotiateStream のさまざまなモードを試しました。また、AUTH NTLM と AUTH GSSAPI の両方を Exchange に発行しましたが、これはすべて違いはありません。また、他の動作中の実装 (GSSAPI と NTLM の両方をサポート) はすべて同じように動作します (GSSAPI パケットと NTLM パケットに大きな違いはありません)。そこにあるすべての着信および発信パケットは、5 バイトをはるかに超えています。

Windows XP で IIS SMTP サービスも試してみましたが、結果は同じでした。SSPI ベースの非 NegotiateStream 実装は機能しますが、NegotiateStream は最初のパケットのために機能しません。送信しないと、NegotiateStream が最初の応答として何を期待しているのかわかりません。

SmtpClient クラスがこれを何らかの方法で管理し、デフォルトの資格情報と NTLM で認証できるため、機能させることができるはずだと思っていました。しかし、SmtpClient は内部で NegotiateStream を使用せず、古いバージョンのソフトウェアと同様に、管理されていない SSPI 呼び出しを行うだけであることがわかりました。

Visual Studio 2010 / .NET 4.0 でも試しました。うまくいきません (そして、NegotiateStream を微調整するための新しいメソッド/プロパティはありません)。

私は完全に迷っています:-(

0 投票する
2 に答える
3597 参照

python - Python を使用して Microsoft Dynamics CRM サーバーに接続するにはどうすればよいですか?

Microsoft Dynamics CRM サービスは NTLM 認証を使用するため、suds を使用して Python プロセスからサービスに接続するのはやや複雑になります。次のようなコード サンプルを探しています。

  1. からの応答を送受信するRetrieveAttributeRequest
  2. Executeリクエストからのレスポンスを送受信します。

これには、Python 3 ではなく、Python 2.6 または Python 2.7 を使用する必要があります。これを行うために curl を使用する実用的な実装が既にありますが、最良の場合でも不安定であり、このツールで行っている他の作業の一部として、それをクリーンアップして、python/suds を使用して実行するのが好きです。