どっとねっとふぁん

C# Tips And Samples
in 検索

24.実行時ユーザを確認する

最新の投稿は、投稿日時: 06-23-2005, 4:57 午後 投稿者: ono です。スレッドには 0 件の返答があります。
投稿のソート: 前へ 次へ
  •  06-23-2005, 4:57 午後 70

    24.実行時ユーザを確認する

    メーリングリスト等の質問を見ていると、ASP.NETがどのユーザの権限で実行されているかがわからないためにとまどっている人も多いようです。
    また、設定によっても、実行時ユーザは変化しますので、確認するサンプルをつくってみました。

    -------------------------------------------------------
    <%@ Page language="c#" %>
    <%@ Import NameSpace="System.Security.Principal" %>
    <script runat="server">
    public void Page_Load(Object sender, EventArgs e) {
        Label1.Text = "現在の実行ユーザ:<br>";
        Label1.Text += (WindowsIdentity.GetCurrent()).Name;
    }
    </script>
    <html>
    <body>
    <asp:Label id="Label1" runat="server" />
    </body>
    </html>
    
    -------------------------------------------------------

    XPマシンのIIS上でこのサンプルを実行した場合、マシン名\ASPNET というユーザの権限で実行されていることが確認できるはずです。
    Web.Config内に

    -------------------------------------------------------
    <configuration>
       <system.web>
          <identity impersonate="true" />
       </system.web>
    </configuration>
    
    -------------------------------------------------------

    というような感じで設定をすると、実行時ユーザは
    マシン名\IUSR_マシン名
    
    に変わります。

    また、この状態で匿名アクセスを不許可にすると、今度はログオンしているユーザに変わります。
    偽装の設定をすれば、そのユーザに変わることも確認できます。
    こういった形で実行時ユーザを確認すると、必要なユーザに必要な権限を与えることができるかと思います。


    あおい情報システム株式会社
     小野修司(どっとねっとふぁん)
RSS ニュースフィードで参照
SkinName:iroha_CS2
Powered by Community Server, by Telligent Systems