保护档案属性

你可以使用 ASP.NET 档案特征来存储并获取数据源(比如数据库)中的用户设定。你可以在应用程序的配置文件中指定构成用户档案的属性和分组。在运行时,ASP.NET 会使用配置信息来动态生成每个档案属性的强类型的类访问器。然后这个类通过静态的 Profile 属性而被暴露。档案属性值通过数据源中的一个档案提供者而被存储,既可以保存在纯文本的 XML 中又可以保存在序列化的二进制表单中。

你可以通过下列编码和最佳配置实践来改善应用程序的安全。为你的应用程序 Web 服务器持续保持最近的 Microsoft Windows 安全更新和 Microsoft Internet Information Services(IIS)安全更新同样也是重要的,包括 Microsoft SQL Server 或者其他档案数据源的任何更新。

关于编写安全代码和保护应用程序的最佳实践的更多信息,请参考由 Michael Howard 和 David LeBlanc 共同编著的书籍:[编写安全代码],并且遵循 Microsoft Patterns 和 Practices 中所提供的建议(http://www.microsoft.com/resources/practices/default.mspx)。

保护档案配置

ASP.NET 档案特征在默认时是启用的。虽然默认的配置设定被设置成了最安全的值,但是我们还是建议你禁用用户档案特征,如果这不是你的应用程序所必需的话。关于档案配置设定和它们的默认值的信息,请参考:[profile 元素(ASP.NET 设定结构)]。匿名识别也能够设置档案属性,但是在默认时是禁用的。关于匿名识别配置设定和它们的默认值的更多信息,请参考:[anonymousIdentification 元素](ASP.NET 设定结构)。

保护配置值

在配置文件中存储敏感信息的时候,我们建议你使用已保护的配置来加密敏感值。那些尤其敏感的信息包括有存储在 machineKey 配置元素中的加密关键字和存储在 connectionStrings 配置元素中的数据源连接字符串。关于更多信息,请参考:[使用已保护的配置来加密配置信息]。

保护档案数据源的连接
连接字符串

与所描述的一样,保护存储连接字符串中用来与运行 SQL Server 或者其他数据源的计算机进行通信的敏感信息同样也是重要的。要保持你的数据连接的安全,我们建议你使用已保护的配置来加密配置中的连接字符串信息。关于更多信息,请参考:[使用已保护的配置来加密配置信息]。

使用集成的安全来连接到 SQL Server

我们建议你使用集成的安全来连接到运行了 SQL Server 的计算机,要防止已妥协的连接字符串和任何已暴露的用户 ID 信息和密码信息。在你指定一个使用集成的安全来连接到一个运行 SQL Server 的计算机的连接的时候,档案提供者就会对进程的身份进行回复。我们建议你确保运行 ASP.NET(比如应用程序池)进程的身份是默认的进程帐号或者是被限制的用户帐号。关于更多信息,请参考:[ASP.NET 角色扮演]。

SQL Server 数据库许可

默认时用来存储档案信息(包括用来限制用户访问你的应用程序时所必需的特权的数据库角色和视图)的 SQL Server 数据库。我们建议你给连接到 SQL Server 档案数据库的用户 ID 指派最小的必需特权。关于更多信息,请参考:[应用程序服务数据库中的 SQL Server 角色和视图]。

保护档案数据源中的敏感数据

默认的用户档案提供者没有加密存储在档案数据源中的值。我们建议你对存储到档案数据源之前的任何敏感信息进行加密,如果要避免在数据源被妥协的时候暴露敏感信息。你可以在把值存储到档案属性之前加密敏感数据,或者你也可以扩展 ProfileBase 或者 ProfileProvider 类来提供加密能力。

防止匿名档案数据的跨应用程序共享

如果应用程序和使用了档案属性的应用程序的匿名识别已启用,那么就会存在匿名档案属性值能够暴露给其他应用程序的风险。这种情况会出现在匿名识别 cookiePath 特性被设置成包括多个应用程序的路径并且在一个公共的域中存在有多个应用程序的时候。

在你使用用户档案的匿名识别并且打算分离应用程序中的匿名用户之一的时候,我们建议你为每个应用程序都指定 machineKey 元素中单独的加密关键字,设置特殊应用程序的匿名识别的 Cookie 范围,并且为每个应用程序设置不同的 ApplicationName 属性值。

保护用户档案的 Web 页面

操作存储在档案属性中的敏感数据的应用程序页面应该使用标准的 Web 安全机制进行保护。这包括使用安全套接层(SSL)并且需要用户登入来完成敏感的操作(比如更新用户信息或者删除用户)。另外,还要避免在 Cookies 中存储敏感数据。

保护反向的拒绝服务攻击

ProfileManager 类中用来完成更新或者长期运行搜索操作的方法能够简化你的档案数据源的快速响应,如果方法通过大量的客户端而并发地被调用。如果要简化你的应用程序暴露给拒绝服务攻击,就可以只许可管理员用户访问用于数据库更新或者搜索相关档案的 ASP.NET 页面。

错误消息和事件
异常

要防止敏感信息被暴露,就需要配置你的应用程序不要显示详细的错误消息或者只在应用程序在本地 Web 服务器中运行的时候才显示详细的错误消息。关于更多信息,请参考:[customErrors 配置元素]。

事件日志

ASP.NET 档案特征会使用 ASP.NET 健康状况监视来记录特定条件下的错误信息,默认时会把信息存储到事件日志中。如果你的服务器计算机运行的是 Windows Server 2003,那么你可以通过保护事件日志并且能够设置事件日志的参数(比如尺寸、保持时间,等等)来防止间接的事件日志反向拒绝服务攻击,从而改进应用程序的安全。

追踪信息

你的 Web 服务器能够配置成追踪档案特征的特定动作和存储日志文件中的追踪信息。因为敏感信息(比如用户的名称)能够存储到追踪日志文件中,所以我们建议你只允许管理员才能够启用追踪、配置日志文件的追踪位置,并且访问日志文件追踪。

自定义的档案提供者

在为数据库的访问而创建一个自定义的档案提供者的时候,应该确保你遵循了最佳安全实践来防止各种攻击(比如 SQL 注入攻击)。在使用自定义的档案提供者的时候,还需要确保提供者已经为最佳安全实践而被回顾。

转载于:https://www.cnblogs.com/Laeb/archive/2007/02/20/652925.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
现在用数码相机拍照已经很流行,很多朋友也喜欢把照片共享到网络上和朋友分享,但是照片中除了正常的图像信息,还包含了大量的其他资料,把这样的照片上传的网络,可能会泄露一些个人的隐私,“小威照片隐私保护器”就是为了去除照片中的隐私信息而设计的 【软件特点】 1)免费,不收取任何费用; 2)自动检测隐私信息; 3)支持批量添加照片,支持照片预览,支持批量清除隐私信息; 4)支持拖动添加照片、照片去重; 5)绿色软件,不需要安装,随便放在哪儿运行都行。 现在用数码相机拍照已经很流行,很多朋友也喜欢把照片共享到网络上和朋友分享,但是照片中除了正常的图像信息,还包含了大量的其他资料,他们是以Exif的格式存储的。 Exif是一种图象文件格式,它的数据存储与JPEG格式是完全相同的。实际上Exif格式就是在JPEG格式头部插入了数码照片的信息,包括拍摄时的光圈、快门、白平衡、ISO、焦距、日期时间等各种和拍摄条件以及相机品牌、型号、色彩编码、拍摄时录制的声音以及全球定位系统(GPS)、缩略图等,一些图像编辑软件在处理照片后也会插入软件名称等处理信息。 把这样的照片上传的网络,是不安全的,可能会泄露一些个人的隐私,惹来一些不必要的麻烦。 “小威照片隐私保护器”可以批量的去除照片里面包含的隐私信息,同时也减少了图片的体积。 最重要的一点:在使用软件去除隐私信息之前,请一定做好原照片的备份。 “小威照片隐私保护器”不修改电脑任何配置,不驻留内存,当然更不含任何病毒木马。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值