0

I've got an Intranet that I manage, and we've just purchased some vendor's system that has no out-of-the-box LDAP/AD support. I think it's an ASP.Net application (there's a form on the login.aspx [hint1] that has id="aspnetForm" [hint2]), and I thought, in my perfectly-run imagination, that all I had to do was pass users credential in as parameters to the login page (I've injected their usernames into the vendor's database, and I can manually log in fine with those), and it just worked. Not so.

Uri looks something like this ; http://[apps_domain]/Controls/CtlLogin.aspx

I have no access to this ASP.Net environment, I can only access it through URI's, however I've got full access to another server on the environment on which I could run various scripts, preferably PHP (as we run a few other apps in PHP, and we've got people with those skills).

Is there some default way that ASP.Net delivers simple login to their apps? I'm using NTLM and AD elsewhere to validate the credentials, I just need to inject these into the ASP.Net app. I expected this to be simpler ... :)

4

1 に答える 1

0

どのように実装しますか。既存のフォームベースのログオンを希望しますが、ユーザーが AD 資格情報をフォームに入力できるようにするか (Outlook Web Access のように)、アプリケーションで IIS/Windows NTLM または HTTP ヘッダーを介して行われる Kerberos 認証を使用するようにしますか (これは、ユーザーがユーザー名/パスワードを入力する必要がないため、より安全です)。

あなたが購入したこのアプリケーションについての詳細を知らなければ、何とも言えません。ASP.NET は認証用にいくつかのバックエンドを提供しますが、このアプリケーションは独自にロールバックする可能性があります。アプリケーションが標準の「メンバーシップ」または web.config で定義された認証およびメンバーシップ システムを使用する場合、 web.configファイルを変更して、独自のプロバイダーではなく ActiveDirectory/Ldap/Kerberos プロバイダーを使用することが可能です。ほとんどの ASP.NET アプリケーション (些細な Hello、World の例を除く) を経験すると、メンバーシップ システムを予約どおりに使用できます。これが機能するとは思わないでください。ASP.NET のメンバーシップ システムに関する深い知識が必要です。前述したように、これはすべて、アプリケーションが最初にメンバーシップを使用するという前提に基づいています。

PHP スクリプトをどのように動作させるつもりですか? 認証は、クライアントがフォームを送信し、サーバーが Cookie で応答することによって機能します。これらのタスクを委任することはできません - 私の推測では、プロキシする必要があると思いますが、そうすると大変なことになります。

要するに、ベンダーに連絡して、既存のシステムとの統合を可能にするための変更を依頼するか、払い戻しを受けます。

于 2012-07-30T03:55:39.807 に答える