簡體   English   中英

ASP.NET站點在開發期間自動登錄

[英]ASP.NET site auto-login during development

在開發ASP.NET站點時,是否可以設置自動登錄?

例如,每次我構建網站並運行它時,我都必須再次登錄。 我不想完全禁用安全性,但我希望在我在網站上工作時自動登錄。

在Visual Studio中修改和/或重新編譯后,只需保持瀏覽器打開並按Ctrl + F5 這將保留身份驗證cookie。

另一種可能性是設置一個自動登錄頁面,您可以在其中測試您是否處於調試模式並使用FormsAuthentication.RedirectFromLoginPage("someusername", false);強制登錄FormsAuthentication.RedirectFromLoginPage("someusername", false); 然后,您可以指示Visual Studio始終在此URL運行網站:

protected void Page_Load(object sender, EventArgs e)
{
    #if DEBUG
    FormsAuthentication.RedirectFromLoginPage("someusername", false);
    #endif
}

理想情況下,此頁面應從構建過程中排除,並且永遠不會發送。


正如@Mufasa在評論部分中所指出的,如果您的站點使用Session,則可能需要使用進程外模式(StateServer或SqlServer)而不是InProc因為重新編譯應用程序域時將重新加載,並且存儲在內存中的所有內容都將丟失。

使用Windows集成身份驗證進行調試,並使用表單身份驗證進行生產代碼?

如果這是一個選項,您可以為不同的環境提供多個web.config文件 - 請參閱問題如何處理多個環境的多個web.config文件?

我們還在研究為不同的環境提供多個web.config。 我們有一個想法(我們沒有詳細研究)它使用T4代碼生成(Visual Studio的一部分)來生成web.config作為構建過程的一部分。

考慮到您的安全要求是多么復雜,這可能會或可能不會起作用,但您可能有一個使用集成(NTLM或Kerberos)身份驗證的備用登錄頁面,並讓您的Windows憑據自動流向該站點。

暫無
暫無

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

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