WIN1@Codename

Codename

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

アプリケーションプールのセキュリティーアカウントとASP.NET偽装(その2)

以前「アプリケーションプールのセキュリティーアカウントとASP.NET偽装」の記事を書きましたが、追加の覚え書きとして(その2)です。

まず、現在の実行アカウントを知りたい場合は、
Response.Write(System.Security.Principal.WindowsIdentity.GetCurrent().Name)
で取得できます。

匿名認証のみ有効にした場合だと、 IIS APPPOOL\<サイト名> となります。
20105916090414

次に、基本認証のみ有効にした場合は、認証ダイアログが表示されるものの、匿名認証のみと同様に IIS APPPOOL\<サイト名> となります。
20100016100456
感覚的には、認証ダイアログで入力したアカウントが表示されるような気がするのですが、あくまでもアプリケーションプールの実行アカウントがサイトを動かしているということなので、こちらが正しい表示となります。

そこで、ASP.NET偽造を有効にすると、思惑通り認証に使用したアカウントが表示されます。
 20101016100437

では、こんな場合は?
匿名認証・ASP.NET偽装を有効にして、ASP.NET偽装の特定のユーザーを指定した場合。
この場合は、指定した特定ユーザーとなります。
 20101416100406

ではでは、これは??
基本認証・ASP.NET偽装を有効にして、ASP.NET偽装の特定のユーザーを指定した場合。
認証ダイアログにはASP.NET偽装の特定のユーザーに使用したアカウントとは別のものを使用します。
こちらは、ASP.NET偽装の特定のユーザーとなりました。
20102316100422 20102216100403

 

ちなみに、ASP.NET偽装の特定のユーザー の設定内容は web.config の
<identity impersonate="true" userName="" password="" />
セクションに連動しているので、IISマネージャーの設定内容により自動的にweb.configが書きかえれれます。

スポンサーサイト

IIS7.5のWebDavの公開・設定方法

Windows Server 2008R2のIIS7.5からは標準でWebDavが実装されるようになりました。
そこでWevDavの公開方法と設定方法をまとめてみました。

新たにサイトをIISにサイトを作成します。
このとき、コンテンツフォルダにはWebDavで使用するアカウントに「変更」以上のアクセス権を設定します。
今回は "Administraiotor" をWevDavユーザーに指定しますので、フルコントロールを設定しました。
 20095408100926[2]

IISマネージャーより、「WebDavオーサリング規則」を選択します。
20093908100947[2]

「オーサリング規則の追加」を選択し、 WebDavのアクセス設定を行います。(ファイルアクセス権とは別です)
今回はAdministratorにすべての権限を付与します。
20094008100903[2]

次に、IISマネージャーより「認証」を選択します。
20094008100918[2]

インターネット経由で接続するので、「基本認証」 を選択します。
また、ここがポイントですが、「匿名認証」は無効とします。(詳細後述)
セキュリティーを重視するのであれば、WebDavに公開するサイトはSSLを使用した接続をお勧めします。
20094308100926[2]

これで、サーバー側のWebDav設定は完了です。

 

WebDavを使用するクライアント側の設定方法です。
IE8からはWebDavをブラウザ経由でアクセスすることができなくなってしまいましたので、ネットワークフォルダとして利用します。
エクスプローラーから「ツール」-「ネットワークドライブの割り当て」を選択します。
表示されたダイアログの一番下にある「ドキュメントと画像の保存に使用できるWebサイトに接続します。」を選択します。
20090308110911[2]

ネットワークウィザードが開始されますので、指示に従いネットワークの場所を設定します。
「インターネットまたはネットワークアドレス」は先ほど作成したWebDavサイトのURLとなります。
例: http://webdav.test.com
20090908110958[2]

これで完了です。
以降はエクスプローラーからWebDavフォルダが使用可能です。

IE7以前のバージョンではIEよりWebDavに接続可能です。
IEのファイルメニューより、「開く」を選択します。
WebDavのURLを入力し「Webフォルダとして開く」にチェックを入れれば完了です。
20091408110902[2]

 

  さて、先ほど、WebDavのIIS側の設定にて認証方法で「匿名認証」を無効としました。
「匿名認証」が有効の場合、特定のユーザーにWebDavを使用させることができなくなります。
しかし、Webサイトを通常のコンテンツ公開サイトとして使用するには「匿名認証」を有効にしなければなりません。
WebDavをWebサイトのコンテンツアップロードを行うために使用し、なおかつ通常のWebサイトとして使用するにはIIS上で2つのサイトを作成する必要があります。

ひとつはWebDav専用サイトとして、「匿名認証」を無効としたもの、
もうひとつは、WebDavサイトと同じコンテンツフォルダを参照した、「匿名認証」を有効にした通常のWebサイトを作成します。
ここでは省略しますが、ホストヘッダーで分ける方法や、IPアドレスで分ける方法などありますので使用環境により使い分けてサイトを作成してください。
20092308110911[2]

以上で、IIS7.5にてWebDavが使用可能となります。

 

追記:
WebDavに接続する場合に、クライアント側でWebDavサーバーに接続できないといったエラーが出る場合があります。
20094909080938[2]

この場合の回避方法は、まずIISのWebDavのサイトの認証設定に、「Windows認証」を追加します。
 20095309080929[2]

そして次に、クライアント側で「WebClient」サービスを再起動します。
20095909080940[2]

この設定を行った後、再度WebDavフォルダの追加を行います。
これでようやく、WebDavフォルダを使用することができるようになります。 

クライアントは同じWindows7を使用しているのですが、WebDavフォルダにアクセスできるものと、できないものがありました。
この接続エラーの原因は不明ですが、おそらく認証方法が問題となっていると思われます。
http://support.microsoft.com/?kbid=841215

にしても、なかなか手ごわいです・・・。


アプリケーションプールのセキュリティーアカウントとASP.NET偽装

IIS6ではアプリケーションプールを実行するアカウントを、任意のアカウントに変更することができました。
この設定で、たとえばブラウザ経由でサーバー上のローカルファイルの操作などを行うときに強い権限を持ったユーザーを指定することで可能にすることができます。

この設定方法は、「アプリケーションプール」のプロパティーより「識別」から行うことができます。
20093406120952[2]

これど同様の設定をIIS7で実現しようと思ったのですが、IIS7のアプリケーションプールには同様の項目がみあたりません。
IIS7では各サイトの「認証」より「ASP.NET偽装」の「特定ユーザー」を指定し有効にすることで同様の設定が可能です。
20094406120938[2]


Windows Server 2008R2 の IIS に FrontPage Server Extension をインストールできません。

IIS6 までは標準で実装されていたFrontPage Server Extention(FPSE) ですが、IIS7 からは標準で実装されていません。
Visual Studio を使用してaspxのコンテンツをアップする場合はFPSEがIISにインストールされていると非常に便利です。
FPSEをIISで利用するには、別途ダウンロードして、インストールする必要があります。

http://technet.microsoft.com/ja-jp/library/dd939078.aspx こちらを参照すると

FrontPage 2002 Server Extensions for IIS 7.0 は
http://www.iis.net/downloads/default.aspx?tabid=34&g=6&i=1630
よりダウンロードできます。

Windows Server 2008 では実際にインストールして使用していたので、今回も同様に
ダウンロードしたファイルを実行してインストールすると・・・
 20092202090950[2]

ん? 完了画面が表示されません。
本来であれば、IISにFPSEの管理サイトが作成されるはずですが、見当たりません。
管理ツールの中にもそれらしき物が見当たりません。
20093402100959[2]

owsadm.exe を使用してコマンドでFPSEの設定を試みてもエラーとなってしまいます。

と、気になる記事を発見
http://forums.iis.net/p/1160144/1913961.aspx
http://forum.dotnetpanel.com/forums/t/5938.aspx

"Windows 7 and the FrontPage Server Extensions

    *Windows 7 is NOT presently a FrontPage Server Extension supported platform.  The FrontPage Server Extensions are intended for Windows Server 2008 and most Vista operating systems.

      At this time there is no plan to support the FrontPage Server Extensions on the Windows 7 operating system."

え・・・。

とういうことは IIS7.5 の 2008R2 もダメということですよね。

うーむ。困りました。


II7の匿名認証アカウントがIIS6と異なる件に関して

IIS6では IUSR_<サーバー名> というアカウントがIISの匿名認証時に使用されていました。
このアカウントはIISインストール時に自動的に作成されます。
IIS7ではこのアカウントは作成されず IUSR というセキュリティープリシパル と呼ばれるものに変更されました。
20090102060917[2]
 

20095602050950[2]

グループ名をみてみると IIS_IUSRS といういかにもな名前のユーザーグループが存在しますが、こちらはIIS6までの IIS_WPG グループに相当するもので、w3wp.exe を稼動するグループアカウントとなりますのでお間違えのないように。
20090202060945[2]


FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。