Windows应用程序开发入门到精通十二:将安全隐患扼杀在摇篮之中——用Microsoft .NET来保护数据和应用程序的安全.ppt

Windows应用程序开发入门到精通十二:将安全隐患扼杀在摇篮之中——用Microsoft .NET来保护数据和应用程序的安全.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Windows应用程序开发入门到精通十二:将安全隐患扼杀在摇篮之中——用Microsoft .NET来保护数据和应用程序的安全

如何使用Microsoft .NET保护应用程序和数据的安全 Live Meeting 2005新特性 清晰音质——与微软资深讲师的零距离接触 实时讲义下载——轻松获得第一手资料 中文交互——强大的中文提问平台,想问就问, 没有困扰 内容更精彩——开发,集成,架构设计, 项目管理,应有尽有 课程介绍 这次Webcast会给大家介绍如何应用.NET Framework中的特性来保护代码的安全 基础内容 熟悉.NET开发 LEVEL 300 课程安排 身份验证 授权 加密 强命名程序集 代码访问安全 中间层安全 如何避免SQL注入 身份验证 使用Credential来唯一标明一个用户 可以使用Microsoft Windows的集成身份验证,使用用户登录Windows时的用户凭证 编写自己的用户身份验证的程序,应用程序来管理用户凭证。 System.Security.IIdentity接口和 System.Secutity.GenericIdentity类 System.Security.Principal.WindowsIdentity. GetCurrent().Name 演示一 Authentication Authorization 使用基于角色的安全 可以通过编程实现基于角色的授权 角色可以代表商业流程中的工作职责,例如:秘书、经理、管理员、总监等 用角色的方式来管理用户会更加简便 如何使用基于角色的安全 PrincipalPermissionAttrivute和SecurityAction.Demand PrincipalPermission(SecurityAction.Demand, Authenticated:=True, _ Name:=Nothing, Role:=“Administrator”) _ Public Class AdminClass … IPrincipal.isInRole() lblBossMan.Visible = _ Context.User.IsInRole(“BossMan”) tbToBeChangedOnlyByQueenBee.ReadOnly = Not _ Context.User.IsInRole(“QueenBee”) 演示二 Authorization 加密 加密将字节打乱 对称加密与非对称加密 对称加密适用一个相同的密钥进行加密/解密 非对称加密使用一个密钥对进行加密/解密,加密与解密的密钥是不同的(公钥/私钥对) 非对称加密算法更加安全 对称加密算法更加高效 System.Security.Cryptography名称空间 如何进行密钥管理 演示三 加密 Code Access Security 最低权限的策略 Code Group——按照逻辑分类的代码组合 Code Group可以按照多种方式划分 URL,strong name,zone,etc Permission Sets——许可集,用来定义代码能够访问的资源:文件I/O,Isolated Storage独立存储,SQL客户端,等等。 Link demands Demo Four 代码访问安全 强命名应用程序集 使用sn.exe工具来创建强命名公钥/私钥对,并存储在文件当中: sn.exe –k Northwind.snk AssemblyKeyFileAttribute Assembly: AssemblyKeyFile( _ “c:\keys\Northwind.snk”) 优势 可以被装载到GAC当中 Side-by-side部署,支持多个版本的应用程序集 在编译时,.NET的客户端代码使用了强命名应用程序集,在运行时能够有效地防止装入“木马”应用程序集 Delayed Signing 私钥保密性,确保开发团队中的多个组建使用相同的强命名 只导出公钥 sn -p Northwind.snk NorthwindPublicOnly.snk Assembly: AssemblyKeyFile( _ “c:\keys\NorthwindPublicOnly.snk”) Assemble: AssemblyDelaySign(True) Sn -Vr assemblyname:关闭对只拥有公钥的强命名应用程序集进行验证 Sn -R assemblyname keyfilename:在发布之前对应用程序集进行缓签名 Link Demands 连接请求发生在外部的代码对本应用程序集进行调用的时候 System.Security.Permissions名称空间 例如:StrongNameIdentityPermission属性 从某个应用程序集中提取公钥标示(一个十六进制的字符序列) sn -Tp North

文档评论(0)

f8r9t5c + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档