如何检查用户是否从视图(.cshtml(登录到umbraco?
我也会知道如何检查用户角色。
User.Identity.IsAuthenticated
总是返回 false。
if( User has role = "someRole" )
{
do stuff
}
我使用本布拉科版本:7.8.1
我发现这段代码适用于我的应用程序:
var auth = new HttpContextWrapper(HttpContext.Current).GetUmbracoAuthTicket();
if (auth != null)
{ <p>Name: @auth.Name</p>
<p>ID: @auth.UserData</p>
}
资源:"Umbraco.Web.UmbracoContext.Current.Security.CurrentUser"为前端请求返回"null">
User.Identity.IsAuthenticated
为假,则在成功验证用户后,您可能没有调用FormsAuthentication.SetAuthCookie(username, true);
。
要检查身份验证和角色,请使用:
var userIsAuthenticated = Request.IsAuthenticated;
var userIsAdmin = User.IsInRole(role: "admin");
要检查 Umbraco 用户是否在前端登录,我正在使用这个:
var isLoggedInUmbraco = userTicket.GetUmbracoAuthTicket()!=null;
//To add a Umbraco edit link on a page:
if(isLoggedInUmbraco){
<a href="/umbraco/#/content/content/edit/@Model.Content.Id">Edit Page</a>
}