[英]How to secure my Sitecore Controller Action (MVC) only to Sitecore Logged in Users?
我正在使用Sitecore MVC應用程序。 我已經編寫了一個Action方法來呈現Sitecore項目的元信息。 我在Sitecore MVC項目中編寫的操作方法已同時部署到CM和CD。
我想限制CD站點中的“操作”方法,並繼續在CM站點中使用。
使用:Sitecore 7.5,MVC4
dnstommy差不多在那里-對他的實現進行微小的更改就會使您到達那里。 不需要HttpPost
屬性。
public ActionResult MetaData()
{
if (Sitecore.Context.IsLoggedIn == false)
{
return new EmptyResult();
}
// build your model and return to the view
return View();
}
返回EmptyResult()
與在視圖上呈現空字符串相同,因此就好像呈現在頁面上不存在一樣。
如果您想進一步將事情鎖定為特定角色,則可以使用Sitecore.Context.User.IsInRole("ROLE NAME")
進行檢查。
關於Sitecore.Context.ContentDatabase
的注釋- 如果您在shell
網站中,則設置為master
。 也就是說,如果您在內容編輯器中。
如果您正在CM服務器上查看站點或預覽站點,則SiteContext將是您的網站定義,並且如果您設置了content
屬性,它將被啟用,否則它將為null。 因此,檢查您是否在CM服務器上不是安全的檢查。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.