ASP.NET 5 中是否存在与 Request.IsAuthenticated
等效的内容隐藏在某处,或者我们是否希望循环遍历用户的身份并自行确定?
最佳答案
如果您只需要知道 User 对象是否经过身份验证,则此属性应该可以解决问题:
User.Identity.IsAuthenticated
如果您需要防止未经身份验证的用户调用某个操作,那么以下属性类非常有用。
public class BasicAuthAttribute : ActionFilterAttribute, IAuthenticationFilter
{
public void OnAuthentication(AuthenticationContext filterContext)
{
}
public void OnAuthenticationChallenge(AuthenticationChallengeContext filterContext)
{
var user = filterContext.HttpContext.User;
if (user == null || !user.Identity.IsAuthenticated)
{
filterContext.Result = new HttpUnauthorizedResult();
}
}
}
我在我的基本 Controller 类中使用它,如下所示。
[BasicAuth]
public abstract class BaseAuthorizedController : Controller
关于asp.net-core - ASP.NET 5 中的 Request.IsAuthenticated 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30632739/