1、议程 网络安全基本概念 IIS安全体系架构 IIS进程模型 IIS验证方式 授权 基于ASP.NET应用的验证和授权 IIS 6.0新特性 网络安全基本概念验证 身份识别你是谁?授权和访问控制 访问控制你能访问什么数据和服务?完整性 如何确保数据在传输过程中没有被修改?私密性 如何只让接收者看到数据?IIS体系架构状态机请求IIS 5.0体系架构进程模型 验证场景匿名验证3SQL authenticationSELECT*FROM table21GET dbquery.asp HTTP/1.1 匿名验证 使用匿名帐号(IUSR_)访问资源 进程身份:LocalSystem或IWAM_ 匿名帐号
2、可任意配置 进程身份可通过COM+任意配置 需要平衡折衷安全与性能基本验证基本验证 进程身份:IWAM or LocalSystem 使用验证后的用户身份访问资源 优点 大众化几乎所有的HTTP客户端支持基本验证 支持一跳式委托 缺点 明文密码(Base64编码)通过线路传输保留在服务器中应使用SSL保护数据传输摘要验证摘要验证 优点 不用明码方式传输密码 可通过代理服务器工作 IIS不知道密码 缺点 中等程度的安全措施 需要IE 5 或更高版本浏览器支持 不支持委托 需要使用活动目录 活动目录保存密码(可解密得到)Windows集成验证 基于Security Support Provider
3、(SSPI)技术 NTLM或Kerberos 由IIS询问浏览器支持哪种验证协议 可强制使用特定的验证协议 NTAuthenticationProviders Negotiate NTLM KerberosNTLM验证NTLM验证NTLM验证 优点 默认配置 提供自动登录而无需重新输入口令 缺点 只适用于Intranet无法穿越代理服务器工作(需要keep-alive联接)不支持委托Kerberos验证Kerberos验证Kerberos验证 优点 具有高安全、易扩展、快速等特点 支持委托 缺点 有限的客户端支持需要IE 5以上及Windows 2000 客户端必须能够访问域控制器 委托可能造
4、成安全隐患客户端数字证书验证客户端数字证书验证IIS映射客户端数字证书验证活动目录映射用证书映射账号 IIS证书映射 只作用于特定的Web服务器 1对1映射 通配符映射(多对1)活动目录证书映射 对整个Windows 2000域都可见 由kerberos KDC提供此映射 UPN映射 1对1映射 多对1映射客户端数字证书验证 优点 及安全 灵活 提供完整性及私密性 缺点 PKI管理开销大 易用性不好 可扩展性及性能受约束验证方式对比表推荐解决方案访问控制流程1.客户端IP地址被允许了吗?2.用户账号被允许了吗?合法的账户名/口令 账号限制登录时间,已被锁,口令过期,特权3.IIS被允许访问吗?
5、4.文件(NTFS)被允许访问吗?基于ASP.NET应用的验证和授权 ASP.NET体系架构 ASP.NET中的验证 ASP.NET中的授权ASP.NET请求处理流程验证 ASP.NET是一个ISAPI扩展仅接收对特定文件后缀的HTTP请求 Windows验证(通过 IIS)基本,摘要,NTLM,kerberos,数字证书支持使用操作系统验证机制 基于表单(cookie)的验证应用级别的密码验证 支持微软Passport验证 自定义验证ASP.NET中的授权 Windows安全及访问存取列表(ACL)ACL使用基于Windows的验证 独立于扮演 COM+角色 URL授权 自定义授权.NET
6、Framework授权框架 强制/声明 检查IIS 6.0新特性 PassportPassport用户映射URL授权基于角色可通过商业规则扩展多存储方式支持活动目录XML授限制的委托账户名/口令可从一台服务器传送到另一台服务器Digest Security Support Provider(SSP)密码已经不以可解密方式存储总结 IIS为各种用途提供业界最多的、强大的验证方案 每种验证方案都有各自的优缺点 推荐方案 Internet:匿名,基本验证+SSL Intranet:摘要,NTLM 或 kerberos B2B:数字证书 ASP.NET及IIS 6 提供更丰富的选择如果您有任何问题,请加入微软中文新闻组继续讨论加入微软中文新闻组http:/