2011-04-27 31 views
1

私はasp.net Webアプリケーションを使用して、スタッフがキャンパス内のどこに行っているのか、そして何をしているのかを追跡しています。Active Directory + HTTP認証

私たちは現在、 "NoSQL"テーブル(これは100%馴染みのないテーブル)を使用するシステムを使用していますが、cgiスクリプトを使用する古いシステムです。だから私はasp.netで書き直しています。近代的なデザインのシステムを最新のものに更新し、アクティブなディレクトリ認証を追加しています。これは、他の場所で使っているADとは別の独自のデータベースを使用しているからです。

enable Active Directory Authenticationからweb.configまでの記事が見つかりましたが、私はフォーム認証を使用する代わりに、これを認証用のHTTPプロンプトに結びつけたいと思います。私は解決策を見つけるためにいくつかのGoogle検索を試みましたが、私は前にこれをしている誰かを見つけることができないようです。

ありがとうございます。

答えて

1

まず第一に、あなたが自分のドメインの資格情報を持つ人々を認証しようとしている場合、あなたはHTTPSを使用するようにしてくださいそれ以外の場合はそのパスワードを使って容易に入手されますので、ネットワークスニファ。

あなたが話しているのは、IIS基本認証を使用するASP.NETのWindows認証モードです。

<configuration> 
    <connectionStrings> 
    <add name="ADConnectionString" connectionString="LDAP://your.ad.fqdn.com/DC=com,DC=fqdn,DC=ad,DC=your"/> 
    </connectionStrings> 
    <system.web> 
    <membership defaultProvider="ADMembershipProvider"> 
     <providers> 
     <add name="ADMembershipProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="ADConnectionString" connectionUsername="MYNTDOMAIN\someuser" connectionPassword="asdf1234"/> 
     </providers> 
    </membership> 
    <authentication mode="Windows"/> 
    </system.web> 
</configuration> 

次は、基本認証用にIISを構成する場合です。 IIS 7.xを実行していると仮定すると、IISマネージャーでアプリケーションのルートフォルダーを探し、[認証]をクリックします。ここで基本認証を有効にできるはずです。 Windows認証を有効にして、IE/Chromeユーザーが自動的にログインできるようにすることもできます:

Basic Authentication in IIS 7

1

通常、Windows認証は透過的です(Windows認証はWindowsにログインしている資格情報で自動的に認証されます)。資格情報を強制的に入力したい場合は、ページが401 HTTPステータスコードを返す必要があります。

1

フォーム認証の代わりにASP.NETアプリケーション内でWindows認証を有効にしたいと思うようです。基本的には、web.configの認証タイプを「フォーム」から「Windows」に変更し、IIS内でユーザー/グループのアクセス許可を設定します。以下のリンクは、それらの変更に関する詳細に入ります。

さらに詳しい情報:

MSDN Article on Windows Authentication in ASP.NET

関連する問題