在 Visual Studio 中启用和配置 ClickOnce 安全设置

可以在“项目设计器”的“安全”页中启用和配置 ClickOnce 安全性设置。 本文介绍如何启用安全设置、配置安全区域和配置自定义安全区域。

注意

在 ClickOnce for .NET Core 和 .NET 5 或更高版本中,不支持此任务。 有关详细信息,请参阅适用于 .NET 的 ClickOnce

启用 ClickOnce 安全设置

若要发布应用程序,必须启用 ClickOnce 应用程序的代码访问安全性。 使用发布向导发布应用程序时,会自动执行此操作。

在某些情况下,启用代码访问安全性会影响生成或调试应用程序时的性能;在这些情况下,你可能希望暂时禁用安全设置。

可以在“项目设计器”的“安全”页上启用或禁用 ClickOnce 安全设置。

  1. 在“解决方案资源管理器” 中选择了项目的情况下,在“项目” 菜单上单击“属性” 。

  2. 单击“安全”选项卡。

  3. 选中“启用 ClickOnce 安全设置” 复选框。

    现在可以在“安全”页上为你的应用程序自定义安全设置。

    备注

    每次用“发布”向导发布应用程序时,都将自动选中此复选框。

禁用 ClickOnce 安全设置

  1. 在“解决方案资源管理器” 中选择了项目的情况下,在“项目” 菜单上单击“属性” 。

  2. 单击“安全”选项卡。

  3. 清除“启用 ClickOnce 安全设置”复选框。

    应用程序将以完全信任安全设置运行;“安全”页上的所有设置都将被忽略。

    备注

    每次用“发布”向导发布应用程序时,都将选中此复选框;你必须在每次成功发布后再次将其清除。

设置 ClickOnce 应用程序的安全区域

为 ClickOnce 应用程序设置代码访问安全权限时,需要在“项目设计器” 的“安全” 页上从基本权限集开始。

在大多数情况下,还可以选择包含受限权限集的“Internet” 区域,或选择包含较大权限集的“本地 Intranet” 区域。 如果应用程序需要自定义权限,则可以通过选择“自定义” 安全区域实现该操作。

设置安全区域

  1. 在“解决方案资源管理器” 中选择一个项目,然后在“项目” 菜单上单击“属性” 。

  2. 单击“安全”选项卡。

  3. 选中“启用 ClickOnce 安全设置” 复选框。

  4. 选择“这是部分可信的应用程序” 选项按钮。

    “ClickOnce 安全权限” 部分中的控件已启用。

  5. 在“将要从中安装应用程序的区域” 下拉列表中,选择一个安全区域。

设置 ClickOnce 应用程序的自定义权限

可以部署对 Internet 或本地 Intranet 区域使用默认权限的 ClickOnce 应用程序。 或者,可以为应用程序所需的特定权限创建自定义区域。 可以通过在“项目设计器” 的“安全” 页上自定义安全权限来执行此操作。

自定义权限

  1. 在“解决方案资源管理器” 中选择了项目的情况下,在“项目” 菜单上单击“属性” 。

  2. 单击“安全”选项卡。

  3. 选中“启用 ClickOnce 安全设置” 复选框。

  4. 选择“这是部分可信的应用程序” 选项按钮。

    “ClickOnce 安全权限” 部分中的控件已启用。

  5. 在“将要从中安装应用程序的区域” 下拉列表中,单击“(自定义)”

  6. 单击“编辑权限 XML”

    随即会在“XML 编辑器”中打开 app.manifest 文件

  7. </applicationRequestMinimum> 元素之前,为应用程序所需的权限添加 XML 代码。

    注意

    可以使用权限集的 ToXml 方法为应用程序清单生成 XML 代码。 例如,若要为 EnvironmentPermission 权限集生成 XML,请调用 ToXml 方法。