2012-03-07 32 views
0

ASP.NETにサードパーティによって作成されたWebアプリケーションがあります。ソースコードにアクセスすることはできませんが、実行されているサーバーにアクセスできます。 PHPで私たちのために開発された新しい公開ウェブサイトを作成し、ユーザーがASP> NETアプリケーションにアクセスできるようにホームページにログインを追加する必要があります。これを実現する最良の方法についてのアイデアはありますか?これを行うカスタム認証ハンドラを記述できますか?ASP.NETカスタム認証ハンドラ

+0

(PHP)ウェブサイトから直接ログインできるようにする必要がありますが、これは別のサーバーにあるため機能しません。 PHP開発者は、ASP.NETアプリケーションのログインフォームにユーザーの詳細を直接投稿しようとしていました。 –

+0

ログインフォームに詳細を投稿して、PHPアプリケーションからASP.NETに認証しようとしていますか? – SeanCocteau

+0

はい、それはexcactlyです –

答えて

0

したがって、ASP.NETアプリケーションに対してPOSTリクエストを行うことでPHPから認証されますか?コードにアクセスすることなくAFAIKでは、リクエストをブローカするためにHTTPメソッドを使用することに制限されます。

キーは、POST操作を行い、ASP.NETからの応答を消費し、それをクライアント側に渡しています。私はこのbeforeを試しましたが、これは要求とWinformsアプリケーションから生成されたASPクラシックページを使用していました。プリンシパルは合理的に簡単です、ユーザー名、パスワードおよび関連する詳細のPOST;認証Cookieを書き出します。 ASP.NETフォーム認証では、デフォルト名が「.ASPXAUTH」のCookieが少なくとも1つ生成されます。また、サイトのセッション処理方法に応じてセッションCookie( 'ASP.NET_SessionId')も表示されます。監視の良い方法の1つは、Fiddlerを使用して、何が渡され、前後に返されるかを確認することです。

しかし私が想像することができる問題は、あなたのPHPページがあなたのPHPコードをホストしているドメインのクッキーを書き出していることです。そして、2つのサイトが同じプライマリドメインに存在していなければ、 ASP.NETサイトは別のドメインから作成されたCookieを読み取ることができません。あなたは ''を使って同じサブドメインで実行されているPHPとASP.NETサーバーを手放すことができるかもしれませんが、これは私があまり気にしていないことです。

+0

ありがとう、私は、フィドラーを試してみましょう残念ながら、サーバーは異なるドメインにあります –