Project Description
This module allows you to add ability of HTTP authentiocation (supports both of Basic and Digest auth) on your ASP.NET Web Applications, independent Windows machine or Active Directory users accounts.

You can choose credentials source from following.
a) user entry in httpAuth/credentials section
b) user entry in system.web/authentication/forms/credentials section
c) ASP.NET MembershipProvider.

概要
このモジュールは、Windows マシンアカウントないしは Active Diretory に依存することなく、HTTP認証機能 ( 基本認証とダイジェスト認証のいずれも対応 ) を提供します。

認証情報のソースは、以下のいずれかから選べます。
a) httpAuth/credentials セクションに書かれた user エントリを参照
b) Forms 認証用のために system.web/authentication/forms/credentials セクションに書かれた user エントリを流用して参照
c) ASP.NET の MembershipProvider にユーザー名とパスワードを問い合わせ

Quick Start
Install this module into your ASP.NET Web Application project by NuGet package manager.
And, edit the httpAuth section of web.config file on your web application project.

クイックスタート
NuGet パッケージマネージャ経由で、このモジュールをインストールしてください。
その後、web.config の httpAuth セクションを編集して下さい。

httpAuth section reference
httpAuth セクション リファレンス

<httpAuth mode="{None|Basic|Digest}" realm="Realm">
<credentials source="{Inline|FormsAuthentication|MembershipProvider}" passwordFormat="{Clear|SHA1|MD5|MD5Digest}">
[
<user name="user name" password="password" />
[<user name="..." password="..."/>[...]]
]
</credentials>
</httpAuth>

Notice for using Digest Auth.
You can specify the source of credentials to only "Inline", and passwordFormat to only MD5Digest when using Digest Auth.
You should specify the password is the hashed value ( hex, lower case format ) of "user name:realm:plain password" by MD5 algorithm.

ダイジェスト認証利用時の注意点
mode に "Digest" を指定した場合は、credentials の source には Inline、passwordFormat には "MD5Digest" の指定が必須です。
そのときの password には、"user name:realm:plain password" を MD5 アルゴリズムでハッシュした値(英小文字の16進数表記)で指定します。

example)
例)
realm = Secret
user name = taro
plain password = guest
MD5 of "taro:Secret:guest" = 3fafce212f4d9fbda004db1c10f97c5a
->
<httpAuth mode="Digest" realm="Secret">
<credentials passwordFormat="MD5Digest">
<user name="taro" password="3fafce212f4d9fbda004db1c10f97c5a" />
</credentials>
</httpAuth>

Last edited Feb 20, 2012 at 2:08 PM by jsakamoto, version 5