为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

幼儿园蒙氏数学教案——比多少

2017-09-29 15页 doc 38KB 271阅读

用户头像

is_882336

暂无简介

举报
幼儿园蒙氏数学教案——比多少幼儿园蒙氏数学教案——比多少 Microsoft Windows SharePoint Services 与代码访问安全 Maurice J. Prather Suraj Poozhiyil Andrew M. Miller Microsoft Corporation 2003 年 7 月 适用于: Microsoft? Windows? SharePoint? Services Microsoft Office SharePoint Portal Server 2003 公共语言运行库 摘要:本文介绍如何...
幼儿园蒙氏数学教案——比多少
幼儿园蒙氏数学——比多少 Microsoft Windows SharePoint Services 与代码访问安全 Maurice J. Prather Suraj Poozhiyil Andrew M. Miller Microsoft Corporation 2003 年 7 月 适用于: Microsoft? Windows? SharePoint? Services Microsoft Office SharePoint Portal Server 2003 公共语言运行库 摘要:本文介绍如何实现 Microsoft SharePoint 产品和技术的代码访问安全策略,以及如何自定义 Microsoft Windows SharePoint Services 的默认安全设置。本文还回答了有关代码访问安全以及它在 Windows SharePoint Services 中的适用性的一些常见问题。(本文包含一些指向英文站点的链接。) 目录 简介 Windows SharePoint Services 中的默认安全权限 ASP.NET 与 SharePoint 安全策略 为虚拟服务器设置信任级别 常见问题 小结 简介 Microsoft? ASP.NET v1.1 在安全方面的一项主要改进就是可以在部分受信任的环境中运行 Web 应用程序。有关详细信息,请参阅 What's New in the .NET Framework v1.1。这是在 ASP.NET v1.0 基础上的一项改进。在 ASP.NET v1.0 中,要求所有的 Web 应用程序必须是完全受信任的。由于 ASP.NET v1.1 启用了代码访问安全,因此,Windows SharePoint Services 就利用此功能使服务器管理员能够根据需要灵活地设置程序集的执行权限。 在 Windows SharePoint Services 平台上创建 Web 部件或自定义解决的开发人员,应该熟悉 Windows SharePoint Services 是如何实现自定义安全权限和策略文件的。Windows SharePoint Services 实现使开发人员可以为部分受信任的环境自定义应用程序。 Windows SharePoint Services 中的默认安全权限 Windows SharePoint Services 定义了两种默认安全权限,它们是 Microsoft.SharePoint.Security.dll 中 Microsoft.SharePoint.Security 命名空间的一部分,每种权限包括以下一种或多种属性: SharePointPermission:控制对 Windows SharePoint Services 所使用的资源的访问权限。 属性 说明 设置为 TRUE 时使用 ObjectModel Microsoft.SharePoint 对象模型 设置为 TRUE 时保存 HTTP-GET 请求的数UnsafeSaveOnGet 据 设置为 TRUE 时启用与此权限关联的所有权Unrestricted 限。 WebPartPermission:控制对 Web 部件资源的访问权限 属性 说明 设置为 TRUE 时参与 Web 部件对 Web 部Connections 件的通信 设置为 TRUE 时启用与此权限关联的所有权Unrestricted 限。 ASP.NET 与 SharePoint 安全策略 对于 ASP.NET 应用程序的预定义权限集,您可以指定一个与之对应的信任级别。默认情况下,ASP.NET 定义了以下信任级别: , 完全 , 高 , 中 , 低 , 最低 除了“完全”信任级别以外,其他所有信任级别都仅向虚拟服务器实例的应用程序文件夹授予部分信任权限。有关 ASP.NET 信任级别的详细信息,请参阅 ASP.NET Code Access Security。 另外,Windows SharePoint Services 自己定义了两种信任级别: , WSS_Minimal , WSS_Medium 这两种信任级别为 Windows SharePoint Services 拓展了 ASP.NET 的“最低”和“中”信任级别。安全策略文件 wss_minimaltrust.config 和 wss_mediumtrust.config 中定义了这两种级别。默认情况下,Windows SharePoint Services 将这些文件存储到以下位置: local_drive:\Program Files\Common Files\Microsoft Shared\web server extensions\60\config 默认情况下,当您使用 Windows SharePoint Services 扩展虚拟服务器时,Windows SharePoint Services 会将信任级别设置为 WSS_Minimal。这提供了一种安全信任级别,在这种级别中,程序集被授予执行代码所需的最小权限集。 下表列出了使用 Windows SharePoint Services 附带的自定义安全策略文件授予的一些特定权限。 权限 WSS_Medium 信任级别 WSS_Minimal 信任级别 中 最低 AspNetHostingPermission 读取:TEMP、TMP、OS、 USERNAME、Environment COMPUTERNAME 读取、写入、追加、FileIO PathDiscovery:应用程序目录 AssemblyIsolationByUser、IsolatedStorage Unrestricted UserQuota Reflection Registry Execution、Assertion、 ControlPrincipal、Security Execution ControlThread、 RemotingConfiguration Socket 连接到原主机(如果进行了配置) WebPermission 不受限制 DNS 默认打印 Printing OleDBPermission SqlClientPermission AllowBlankPassword=false EventLog Message Queue Service Controller Performance Counters Directory Service SharePointPermission ObjectModel = true WebPartPermission Connections = true Connections = true 注意:默认情况下,Windows SharePoint Services 不会授予 Microsoft SharePoint 对象模型的访问权限。要授予访问权限,必须通过某种提高相关联的信任级别。下一节将讨论有关方法。 为虚拟服务器设置信任级别 通过 web.config 文件中 标记的 level 属性值,可以确定虚拟服务器的信任级别。默认情况下,Windows SharePoint Services 将信任级别设置为 WSS_Minimal。在使用 Windows SharePoint Services 扩展的虚拟服务器的 web.config 文件中,可以找到以下 : 默认情况下,您可以使用上一节中列出的七种预定义信任级别中的任意一种。 注意:更改虚拟服务器的信任级别后,必须重设 Web 服务(可以使用 iisreset)。 在 web.config 文件中指定信任级别将产生以下结果: , 在 web.config 文件中指定的信任级别将应用到指定的虚拟服务器所使用的所 有程序集。 , 与指定的虚拟服务器相关联的所有 SharePoint 站点都采用相同的信任级别。 常见问题 以下是有关代码访问安全以及 Windows SharePoint Services 的一系列问题。 部分信任对 Web 部件开发人员有什么意义, 如果将程序集安装到 BIN 目录中,则必须确保在不具有所需权限的情况下,您的代码可以进行错误处理。否则,未处理的安全异常可能会导致 Web 部件失败,并可能影响显示 Web 部件的页面的显示。 以下是安全异常的一个典型示例: 请求 Microsoft.SharePoint.Security.SharePointPermission, Microsoft.SharePoint.Security, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c 类型的权限已失败 正如前面所提到的那样,对于应用程序的 BIN 目录中的程序集,WSS_Minimal 信任级别不会向其授予 SharePointPermission.ObjectModel 的访问权限。因此,如果代码试图使用 Microsoft SharePoint 对象模型,则公共语言运行库 (CLR) 将引发异常。 因为最小权限集提供的是执行代码所需的最小的一组权限,所以很可能出现其他的安全异常。 建议:尝试捕捉关键区域以处理那些没有所需权限来完成指定目标的情况。 如果我的程序集安装到 GAC 中怎么办, 默认情况下,安装在全局程序集缓存 (GAC) 中的程序集运行时具有“完全”信任级别。虽然可以将 Web 部件程序集安装在 GAC 中,但是为了实现更安全的部署,还是建议将它们安装在 BIN 目录中。 我怎样才能提高安装在 BIN 目录中的程序集的信任级别, Windows SharePoint Services 可以使用 ASP.NET 和 CLR 提供的以下三种方法中的任意一种,来为安装在 BIN 目录中的程序集提供足够的权限。下表列出了每种方法的相关描述及要求。 方法 优点 缺点 此方法的安全性最差。 易于实现。 会影响虚拟服务器使用的 在开发环境中,提高信任级别使您提高整个虚拟服务器的信任级所有程序集。 可以通过提高信任权限来测试程别。有关详细信息,请参阅“为虚 不能保证目的服务器拥有序集,并允许您将程序集直接编译拟服务器设置信任级别”。 所需的信任级别。因此,到 BIN 目录中,而不需要重设 Web 部件被安装到目的IIS。 服务器后,可能无法工作。 推荐使用此方法。 此方法的安全性最好。 为程序集创建自定义策略文件。可以使用满足程序集最小权限要在三种方法中,此方法需要有关详细信息,请参阅“如何创建求的唯一策略来运行程序集。 进行的配置最多。 自定义策略文件,” 通过创建自定义安全策略,可以确 保目的服务器能够运行 Web 部 件。 此方法的安全性较低。 运行 Windows 易于实现。 SharePoint Services 的 服务器上的所有虚拟服务此方法向程序集授予完全信任权将程序集安装到 GAC 中 器和应用程序都可以使用限,且不影响安装在 BIN 目录中安装在 GAC 中的程序的程序集的信任级别。 集。这存在潜在的安全风 险,因为它为大量程序集潜 在地授予了比所需权限级 别更高的权限。 在开发环境中,每次重新编 译程序集后,都必须重设 IIS。 程序集的全局可用性还会 引起问题。 我更改了 web.config 文件中的信任级别 - 现在我的整个站点都无法显示。我该怎么办, 如果在 web.config 文件中更改了信任级别,Windows SharePoint Services 可能无法按后续请求进行显示。以下是一个典型错误的示例: 程序集 安全权限授予集在 Appdomain 之间 不兼容。 要解决冲突的信任设置,可以使用 iisreset 来重设 Internet 信息服务 (IIS)。 注意:这是一个大家所熟悉的、与 ASP.NET 和 .NET Framework 体系结构有关的问题。 如何创建自定义策略文件, 要自定义一个内置策略文件,建议先制作一个副本,然后对此副本进行更改,以确保需要时还可以使用原始文件。 以下过程描述了如何向特定的程序集授予 Microsoft SharePoint 对象模型的访问权限。 要向程序集授予访问权限 1. 复制 wss_minimaltrust.config 文件。 2. 重命名 new_file_name.config 文件。 3. 使用文本编辑器(例如记事本)打开 new_file_name.config。 4. 在 元素中,添加 SharePointPermission 类的引 用,如下所示: 5. 6. 7. 11. 12. 搜索 name 属性等于 ASP.Net 的 标记。 13. 复制整个标记及其子标记,然后将副本粘贴到被复制内容紧邻的下方。 14. 将新 PermissionSet 元素的名称从 ASP.Net 改为 New_File_Name: 示例(更改前) 示例(更改后) 15. 将以下 节点添加到 name 属性等于 New_File_Name 的 元素中: 16. 这样,生成的自定义 如下: 19. 定义完自定义的元素后,必须创建一个代码组来指定 CLR 何时应用权限集。 重要信息:默认情况下,AllCode 代码组是 ASP.NET 策略文件中的 FirstMatchCodeGroup。因此,在某个代码组符合首选代码组后,CLR 将停 止为程序集指定权限。要应用自定义权限,必须将用于为程序集指定自定义权 限的某个代码组声明为 AllCode 组中的首选代码组。这确保了 CLR 指定 MyCustomPermissions 权限集,并确保 CLR 停止指定权限,而不会继续进 行直到默认的 $AppDirUrl$/* 代码组(此代码组用于根据程序集是否位于 BIN 目录中来指定权限)。 在以下示例中,新代码组的成员身份条件基于严格命名的成员身份: 注意:要检索程序集的公钥 blob,请使用 secutil.exe 工具,如下所 示: secutil.exe -hex -s MyAssemblyName.dll 有关 secutil.exe 的详细信息,请参阅 Secutil Tool。 20. 保存并关闭文件。现在可以使用策略文件了。 21. 打开使用 Windows SharePoint Services 扩展的虚拟服务器的 web.config 文件,然后将以下 标记添加到 SecurityPolicy 元素中: 22. 在 web.config 文件中,更改 标记,使其引用新定义的信任级别。 24. 保存并关闭 web.config 文件。 25. 可以使用 iisreset 重设 IIS,将自定义策略应用到指定的虚拟服务器。 如果没有严格命名程序集怎么办,如何更改代码组, 您可以通过多种方法为代码组指定成员身份条件。可以使用 UrlMembershipCondition 来指定条件,如下所示: 我的程序集引用库程序集。当程序集安装在 GAC 中时,一切正常,但是一旦安装在 BIN 目录中时就出错。这是怎么回事, 如果您已向程序集授予了所需的权限,则程序集无法运行的原因可能与库程序集的构建方式有关。默认情况下,严格命名的程序集仅允许被授予完全信任权限的程序来调用。因此,CLR 将阻止部分受信任的程序集调用仅允许完全信任的程序才可以调用的程序集。 您可以选择以下几种可行的解决方案,其中有两种方案需要考虑安全问题: 1. 当编译程序集时,可以将 AllowPartiallyTrustedCallersAttribute 属性添加 到指定的库程序集中。 重要信息:您只能将该属性添加到源代码。如果使用的是第三方程序集,没有 访问源代码的权限时,不能选择此方法。如果选择此方法,将允许部分受信任 的程序执行库中的代码。这存在潜在的安全风险,因为它允许其他拥有部分信 任权限的程序使用指定的库程序集。 2. 可以通过将程序集安装到 GAC 中来为其授予完全信任权限。 重要信息:运行 Windows SharePoint Services 的服务器上的所有虚拟服 务器和应用程序都可以使用安装在 GAC 中的程序集。这存在潜在的安全风险, 因为它为大量程序集潜在地授予了比所需权限级别更高的权限。 3. 您可以按照上一节的描述,通过创建自定义策略文件向程序集授予完全信任权 限。 重要信息:建议选择此方法,因为使用它您可以明确地将所需的最小权限级别 授予程序集,而不会扩大访问的范围,也不会将访问权限授予更多的程序。 我试图使用 Web 部件来访问 Web 服务。但每次都会出现如下所示的安全性异常: 请求 System.Net.WebPermission, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 类型的权限已失败。 默认情况下,BIN 目录中的程序集不具有所需的权限 System.Net.WebPermission 来访问 Web 服务。要授予此权限,需要将以下内容添加到相应策略文件的 IPermission 元素中: 我想通过 Web 部件访问 Web 服务。但每次都会出现如下所示的 InvalidOperationException: 由 XmlSerializer 引用的一个或多个程序集无法由部分 受信任的代码调用。 当创建指向 Web 服务的引用时,Microsoft Visual Studio?.NET 会在程序集中创建并放置一个或多个对象,以存储传递给 Web 服务中方法的参数数据。当调用 Web 服务中的一个或多个方法时,会使用 XmlSerializer 类序列化这些对象。默认情况下,如果严格命名了程序集,并将其安装在 BIN 目录中,拥有部分信任权限的程序是无法访问该程序集中的对象的。当调用 Web 服务方法时,XmlSerializer 会到拥有部分信任权限的程序调用 callstack(即程序集),并且会阻止发生序列化,即使对象位于同一个程序集中。 您可以选择以下几种可行的解决方案,其中有两种方案需要考虑安全问题: 1. 可以将 AllowPartiallyTrustedCallersAttribute 属性添加到指定的库程序集 中。 重要信息:您只能将该属性添加到源代码。如果使用的是第三方程序集,没有 访问源代码的权限时,不能选择此方法。如果选择此方法,将允许部分受信任 的程序执行库中的代码。这存在潜在的安全风险,因为它允许其他拥有部分信 任权限的程序使用指定的库程序集。 2. 可以通过将程序集安装到 GAC 中来为其授予完全信任权限。 重要信息:运行 Windows SharePoint Services 的服务器上的所有虚拟服 务器和应用程序都可以使用安装在 GAC 中的程序集。这存在潜在的安全风险, 因为它为大量程序集潜在地授予了比所需权限级别更高的权限。 3. 您可以按照上一节的描述,通过创建自定义策略文件向程序集授予完全信任权 限。 重要信息:建议选择此方法,因为使用它您可以明确地将所需的最小权限级别 授予程序集,而不会扩大访问的范围,也不会将访问权限授予更多的程序。 何处能了解到代码访问安全的详细信息, 有关代码访问安全的详细信息,请参阅以下内容: , Introduction to Code Access Security , AllowPartiallyTrustedCallersAttribute , Security Optimizations , Code Access Permissions 小结 Windows SharePoint Services 使用自定义的 ASP.NET 策略并根据您的需要向程序集授予部分信任或完全信任权限。在使用 Windows SharePoint Services 创建自定义安全策略以确保运行自定义程序集的环境更加安全的过程中,开发人员和管理员可以使用现有的 ASP.NET 和代码访问安全知识。
/
本文档为【幼儿园蒙氏数学教案——比多少】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索