(二)技能 Y我的新朋友ASP.NET Identity

ASP.NET
Identity他拥有身份验证和授权双重技能,支持第三方账号登录。通过本文你将了解ASP.NET身份验证机制,表单认证的基本流程,角色验证使用

ASP.NET Identity简介

ASP.NET Identity可以满足网站的身份验证和授权功能,支持第三方账号登录。支持角色授权。例如在线英语考试系统,可以满足游客知道免费的试卷,学生(角色)可以在线阅卷答题,老师(角色)可以在线审阅试卷。

如何使用

public class StudentStationController : PteController
{
    // GET: StudentStation
    [Authorize(Roles = "student,admin")]
    public ActionResult Index()
    {
        var model = new BaseViewModel();
        return View(model);
    }


    [Authorize(Roles = "student,admin")]
    public ActionResult Order()
    {
        var model = new BaseViewModel() { };
        return View(model);
    }


    [Authorize(Roles = "student,admin")]
    public ActionResult Requirements()
    {
        var indexUrl = Url.Action("Index", "StudentStation");
        RequirementViewModel model = new RequirementViewModel() { IndexUrl = indexUrl };
        return View(model);
    }

    [Authorize(Roles = "student,admin")]
    public ActionResult QuestionAesse()
    {
        return View(new BaseViewModel());

    }

}

ASP.NET身份验证方式

安全问题一直是ASP.NET的关注点。其中,Windows验证和表单验证(Forms Authentication)就是ASP.NET两种主要的安全机制。

Windows验证:

一般用于局域网应用。使用Windows验证时,用户的Windows安全令牌在用户访问整个网站期间使用HTTP请求,进行消息发送。应用程序会使用这个令牌在本地(或者域)里验证用户账号的有效性,也会评估用户所在角色所具备的权限。当用户验证失败或者未授权时,浏览器就会定向到特定的页面让用户输入自己的安全凭证(用户名和密码)。

Forms验证:

Windows验证的局限性非常明显,一旦用户有超出本地域控制器范围的外网用户访问网站,就会出现问题。ASP.NET表单验证(Forms Authentication)很好的弥补了这一缺陷。使用表单验证,ASP.NET需要验证加密的HTTP cookie或者查询字符串来识别用户的所有请求。cookie与ASP.NET会话机制(session)的关系密切,在会话超时或者用户关闭浏览器之后,会话和cookie就会失效,用户需要重新登录网站建立新的会话。

理解表单认证流程

qq交流群:454318344

博客地址:autoyu1314

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值