簡體   English   中英

在ASP.Net中臨時模擬Windows身份驗證的用戶

[英]Temporarily impersonate the Windows authenticated user in ASP.Net

我只是在閱讀有關在ASP.Net中臨時模擬用戶的信息

http://msdn.microsoft.com/en-us/library/ff647405.aspx

為此,使用以下代碼。

//臨時模擬原始用戶。

WindowsImpersonationContext wic = wi.Impersonate();
try
{
  // Access resources while impersonating.
}
catch
{
  // Prevent exceptions propagating.
}
finally
{
  // Revert impersonation.
  wic.Undo();
}

我正在使用Windows Server 2008,並且有一個應用程序池,只是想確認一下,當我默認不使用上述代碼進行模擬時,該服務將使用我為應用程序池設置的身份。

問題是,我希望對資源進行不同的安全訪問,具體取決於用戶是否通過Windows應用程序登錄或使用過ASP.Net表單身份驗證。謝謝

據我所知,這是正確的。 如果您不冒充主叫用戶,則默認情況下,它應以應用程序池中的默認身份運行。

================================================== =============================

以下是一些不錯的鏈接,您可以通過這些鏈接來了解iis用戶

綜上所述:

  • IIS 5.1(Windows XP)-這是本地ASPNET帳戶
  • IIS 6-默認情況下,應用程序池在網絡服務帳戶下運行,該帳戶是IIS_WPG組的成員
  • IIS 7.0-靜止網絡服務
  • IIS 7 SP2 / 7.5-在名為ApplicationPoolIdentity的臨時名稱下運行,該名稱映射到帳戶IIS APPPOOL \\ ApplicationPool(例如IIS APPPOOL \\ DefaultAppPool)。 該帳戶是IIS_IUSRS用戶組的成員

信息來源:

用戶ASP.NET在IIS / ASP.NET的所有用戶帳戶下運行,它們有何不同?

http://www.bluevisionsoftware.com/WebSite/TipsAndTricksDetails.aspx?Name=AspNetAccount

http://www.iis.net/learn/get-started/planning-for-security/understanding-built-in-user-and-group-accounts-in-iis

http://imar.spaanjaars.com/287/how-do-i-determine-the-security-account-that-iis-uses-to-run-my-web-site

來源:Shekhar- 默認情況下在哪個帳戶中執行ASP.NET 4.0代碼?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM