asp.net身份验证探索

观其大略:
1.
Asp.net是依存于 IIS的一个服务,说到 Asp.net的安全相关的话题当然要有一个整体上的思路: IIS接收 —》 IIS验证 —》 IIS授权 ---》 ASP.net验证 ---》 Asp.net授权 ---》资源返回给用户

IIS从网络上接收到一个 HTTP WEB请求可以使用 SSL技术来保证服务器的身份,此外 SSL也可以提供一个安全通道来保护客户端和服务器端的机密数据的传送。 IIS使用基本 摘要式 或者其它的方式验证用户,如果网站中的大部分内容不需要验证就可以设定为匿名验证。验证之后是授权,通过授权 IIS来允许或者禁止用户访问某资源。 IIS可以使用 ACL定义的 NTFS权限或者针对 IP地址的客户端授权。

IIS把 Windows存取令牌传送到 Asp.net,如果 IIS使用的是匿名验证则为匿名 Internet使用者的存取令牌( IUSER_MYMACHINE)。
ASP.net验证访问者(有三种方式)。 Asp.net授权所需要的资源或者操作(有两种授权方法)。

Asp.net中程序的代码使用特别的身份来存取本机或者远程资源。

2.
身份验证 :身份验证就是一个解决谁有权力进入系统的问题,通常的做法就是跟系统维护的用户名单进行核对,这样转化为一个实际的技术问题:如果有效的判断一个用户是不是系统的有效用户。这个过程就是 —Authentication(身份验证 )
专业说法:接收用户凭据,并根据指定的颁发机构来验证凭据的过程成为身份验证
3.
Asp.net 提供三种身份验证方式: Windows验证 、 Forms验证 、 Passport验证
身份验证的使用是通过配置 Web.config文件的 < Authentication >配置节来实现的。
4.
授权 :授权就是确认用户拥有足够的权限来访问请求的资源
5.
Asp.net 提供两类授权服务:文件授权服务 、 URL授权服务


说点细节
1.
< Authentication >配置节 mode可用的参数: None Windows Forms Passport
2.
Windows:IIS 根据程序的设置执行身份的验证 (基本 简要 或者集成 Windows)
注意使用这种验证方式 IIS中必须要禁用匿名访问。
3.
Windows 验证适用于受控环境中,比如企业的 Intranet
4.
Foms 这种验证使用 Cookie保存用户凭证,并将未将验证的用户重定向到登录页。通常这是的 IIS配置为匿名访问
5.
Forms 适合部署于互联网的网站应用
6.
Passport 验证是通过微软的集中身份验证服务执行的,它为成员站点提供单点登录和配置文件服务
7.
Passport 适用于跨站点应用,一旦用户注销所有的护照信息就会清除,可以在公共场所使用它。
8.
ACL 面向的是文件, IIS提供通过验证的用户,通过比较 ACL调用标记完成授权
9.
URL 授权 检查的根据是 URL本身而不是 URL对应的文件, URL授权可以是应用程序像基于窗体的身份验证或者 Passport的身份集成验证,因为这些验证中的用户和计算机或者域中的账户并不对应。还控制对虚拟资源的访问。
10.
URL 授权的配置: 授权指令: allow deny 对应操作对象是 roles users 还可以使用 Verb属性区别不同的 HTTP行为( POST /GET)
11.
通常情况下用户访问一个网站都是使用匿名访问,匿名访问的用户都会转化为操作系统上的一个帐号来访问服务器
<authentication mode="windows">
<identity impersonate="true">
12.
Windows验证用户通过了验证之后, Asp.net会触发 Global.asax文件中的 WindowsAuthentication_OnAuthenticate事件,可以在这里添加代码把用户信息附加到请求上。
13.
Passport验证的问题是有多少网站愿意把自己的用户数据放在微软的数据库中?
14.
Asp.net使用基于角色的安全:把用户映射到一个角色组里面,这个角色组对应一定的权限,这样就实现了对一个群体的权限管理。所以角色应该是对一组具有相同权限用户的抽象。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/cnkiminzhuhu/archive/2009/08/21/4469272.aspx

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值