0

そのため、jQuery Mobileを使用してモバイルWebアプリで作業しており、アプリからリモートサーバーにデータを要求する必要があります。C#SOAP Webサービスから、またはIHttpHandlerJSONを返すからデータを取得します。データが返される前に、どういうわけかWebサービス/ハンドラーで認証する必要があります。ActiveDirectoryを使用したいと思っていたのですが、どういうわけか、AJAXリクエストを介してユーザー名とハッシュ化されたパスワードをサーバーに渡しました。問題は、ActiveDirectoryを使用したC#での認証の例では、プレーンテキストのユーザー名とパスワードをに渡す必要があることPrincipalContext.ValidateCredentialsです。プレーンテキストのパスワードを知らなくても、C#サービスにクレデンシャルを安全に渡してADで認証する方法はありますか?

編集:クライアント側でパスワードをハッシュしてサーバーに渡し、サーバーに要求されたユーザーのADパスワードを取得させ、同じ方法でハッシュしてから比較できると考えましたが、ADパスワードを取得することはできません

編集:aSSLを見てください。

4

1 に答える 1

1

jquery ui を使用してモバイル Web を開発している場合、それはデバイス上に存在せず、Web サーバー (Web アプリケーションの場合は iis) に存在します。アプリケーションは、照会する必要があるサービスに対して Windows 認証を使用して認証できますが、アプリケーションの実行に使用されたユーザー/側で使用されている偽装によって異なります。
問題は、アプリケーションとこのサービスがサーバーとインターネットの間でどのように通信するかです。サービスがインターネットにアクセスできない場合、トランスポートの安全性についてどの程度心配する必要があるかわかりません.
また、ad fs / ad fs 2 ベースのセキュリティ ソリューションや、ここで説明されているような wcf 統合オプションを確認することもできます。
これらのソリューションは、あなたが話している概念を実装します.AD FSは、渡された資格情報を認証/検証し、アプリケーション/サービスにトークンを返すサービスです。通常、AD FS との通信は ssl を使用してトランスポート レイヤーを保護し、メッセージは署名されているため、途中で誰かが混乱することはありません。
もちろん、そのようなメカニズムを自分で実装することもできます。Active Directory からパスワードを取得する必要はありません。ここで提供されているコード サンプルを使用して、渡された資格情報 (ユーザー名/パスワード) を検証できるかどうかを確認するだけで済みます。

于 2012-06-08T16:00:04.860 に答える