2013-03-14 30 views
0

我想添加一個頁面到我的Umbraco網站,只有登錄到Umbraco後端的用戶才能訪問,但我一直無法弄清楚Umbraco是如何進行認證的。Umbraco如何確保它是內部CMS頁面?

我從調試中得出的結論是,在登錄到Umbraco後,我檢查了HttpContext.Current.User.Identity.IsAuthenticated,它是錯誤的,所以它沒有以這種方式進行身份驗證。

有沒有人知道我在哪裏可以找到代碼,Umbraco是否進行身份驗證檢查,並在用戶未登錄時將用戶發回登錄屏幕?我需要掛鉤並將其擴展到我的新頁面。

ANSWER

檢查umbraco.BusinessLogic.User.GetCurrent()來獲得當前登錄到一把umbraco後端的用戶。

回答

2

找到了答案。您只需檢查umbraco.BusinessLogic.User.GetCurrent()以查看用戶是否登錄到Umbraco後端。

2

查看Umbraco的Public Access。這是Umbraco用來保護頁面的機制。 Umbraco爲Umbraco用戶(後端)和Umbraco成員(前端)使用單獨的成員表,因此如果您希望用戶訪問特定頁面,則必須兩次添加用戶。

您需要創建一個登錄頁面,其上有一些登錄控件。您還需要一個「錯誤頁面」,這基本上是用戶在未被授權查看請求的頁面時將被髮送到的頁面。 Morten BockSørensen對於如何在blog post中進行設置給出了很好的解答。

或者,您可以將您希望保護的內容放置在後端的dashboard中。您甚至可以將用戶控件掛接到儀表板,該儀表板可以從節點動態獲取內容。

相關問題