如何:配置 ClickOnce 信任提示行为
转载链接:https://technet.microsoft.com/zh-cn/magazine/ee308453
可以配置 ClickOnce 信任提示以控制是否允许最终用户选择安装 ClickOnce 应用程序,如 Windows Forms 应用程序、Windows Presentation Foundation 应用程序、控制台应用程序、WPF 浏览器应用程序和 Office 解决方案。 可以通过在每个最终用户的计算机上设置注册表项来配置信任提示。
下表显示了可应用于五个区域(即 Internet、UntrustedSites、MyComputer、LocalIntranet 和 TrustedSites)中的每个区域的配置选项。
选项 |
注册表设置值 |
说明 |
---|---|---|
启用信任提示。 |
Enabled |
显示 ClickOnce 信任提示以便最终用户能够向 ClickOnce 应用程序授予信任。 |
限制信任提示。 |
AuthenticodeRequired |
ClickOnce 信任提示仅在已用标识发行者的证书对 ClickOnce 应用程序进行签名的情况下显示。 |
禁用信任提示。 |
禁用 |
对于未用显式信任证书进行签名的任何 ClickOnce 应用程序,不显示 ClickOnce 信任提示。 |
下表显示了每个区域的默认行为。 “应用程序”列指的是 Windows Forms 应用程序、Windows Presentation Foundation 应用程序、WPF 浏览器应用程序和控制台应用程序。
区域 |
应用程序 |
Office 解决方案 |
---|---|---|
MyComputer |
Enabled |
Enabled |
LocalIntranet |
Enabled |
Enabled |
TrustedSites |
Enabled |
Enabled |
Internet |
Enabled |
AuthenticodeRequired |
UntrustedSites |
禁用 |
禁用 |
通过启用、限制或禁用 ClickOnce 信任提示,可以重写这些设置。
如果想要向最终用户呈现选项,使他们可以选择安装和运行来自某个区域的任何 ClickOnce 应用程序,请为该区域启用信任提示。
使用注册表编辑器启用 ClickOnce 信任提示
打开注册表编辑器:
单击“开始”,然后单击“运行”。
在“打开”框中,键入 regedit32,然后单击“确定”。
查找以下注册表项:
\HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel
如果该项不存在,请创建它。
按下表所示,以“字符串值”的形式添加以下子项(如果这些子项尚不存在)及关联的值。
字符串值子项
值
Internet
Enabled
UntrustedSites
禁用
MyComputer
Enabled
LocalIntranet
Enabled
TrustedSites
Enabled
对于 Office 解决方案,Internet 的默认值为 AuthenticodeRequired,而 UntrustedSites 的默认值为 Disabled。 对于所有其他应用程序,Internet 的默认值为Enabled。
以编程方式启用 ClickOnce 信任提示
在 Visual Studio 中创建一个 Visual Basic 或 Visual C# 控制台应用程序。
打开 Program.vb 或 Program.cs 文件进行编辑,并添加以下代码。
Dim key As Microsoft.Win32.RegistryKey
key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel")
key.SetValue("MyComputer", "Enabled")
key.SetValue("LocalIntranet", "Enabled")
key.SetValue("Internet", "Enabled")
key.SetValue("TrustedSites", "Enabled")
key.SetValue("UntrustedSites", "Disabled")
key.Close()Microsoft.Win32.RegistryKey key;
key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\MICROSOFT\\.NETFramework\\Security\\TrustManager\\PromptingLevel");
key.SetValue("MyComputer", "Enabled");
key.SetValue("LocalIntranet", "Enabled");
key.SetValue("Internet", "AuthenticodeRequired");
key.SetValue("TrustedSites", "Enabled");
key.SetValue("UntrustedSites", "Disabled");
key.Close();生成并运行应用程序。
对信任提示进行限制,这样,在提示用户做出信任决定之前,必须使用具有已知标识的 Authenticode 证书对解决方案进行签名。
使用注册表编辑器限制 ClickOnce 信任提示
打开注册表编辑器:
单击“开始”,然后单击“运行”。
在“打开”框中,键入 regedit,然后单击“确定”。
查找以下注册表项:
\HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel
如果该项不存在,请创建它。
按下表所示,以“字符串值”的形式添加以下子项(如果这些子项尚不存在)及关联的值。
字符串值子项
值
UntrustedSites
禁用
Internet
AuthenticodeRequired
MyComputer
AuthenticodeRequired
LocalIntranet
AuthenticodeRequired
TrustedSites
AuthenticodeRequired
以编程方式限制 ClickOnce 信任提示
在 Visual Studio 中创建一个 Visual Basic 或 Visual C# 控制台应用程序。
打开 Program.vb 或 Program.cs 文件进行编辑,并添加以下代码。
Dim key As Microsoft.Win32.RegistryKey
key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel")
key.SetValue("MyComputer", "AuthenticodeRequired")
key.SetValue("LocalIntranet", "AuthenticodeRequired")
key.SetValue("Internet", "AuthenticodeRequired")
key.SetValue("TrustedSites", "AuthenticodeRequired")
key.SetValue("UntrustedSites", "Disabled")
key.Close()Microsoft.Win32.RegistryKey key;
key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\MICROSOFT\\.NETFramework\\Security\\TrustManager\\PromptingLevel");
key.SetValue("MyComputer", "AuthenticodeRequired");
key.SetValue("LocalIntranet", "AuthenticodeRequired");
key.SetValue("Internet", "AuthenticodeRequired");
key.SetValue("TrustedSites", "AuthenticodeRequired");
key.SetValue("UntrustedSites", "Disabled");
key.Close();生成并运行应用程序。
可以禁用信任提示,使最终用户无法选择安装其安全策略已不信任的解决方案。
使用注册表编辑器禁用 ClickOnce 信任提示
打开注册表编辑器:
单击“开始”,然后单击“运行”。
在“打开”框中,键入 regedit,然后单击“确定”。
查找以下注册表项:
\HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel
如果该项不存在,请创建它。
按下表所示,以“字符串值”的形式添加以下子项(如果这些子项尚不存在)及关联的值。
字符串值子项
值
UntrustedSites
禁用
Internet
禁用
MyComputer
禁用
LocalIntranet
禁用
TrustedSites
禁用
以编程方式禁用 ClickOnce 信任提示
在 Visual Studio 中创建一个 Visual Basic 或 Visual C# 控制台应用程序。
打开 Program.vb 或 Program.cs 文件进行编辑,并添加以下代码。
Dim key As Microsoft.Win32.RegistryKey
key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel")
key.SetValue("MyComputer", "Disabled")
key.SetValue("LocalIntranet", "Disabled")
key.SetValue("Internet", "Disabled")
key.SetValue("TrustedSites", "Disabled")
key.SetValue("UntrustedSites", "Disabled")
key.Close()Microsoft.Win32.RegistryKey key;
key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\MICROSOFT\\.NETFramework\\Security\\TrustManager\\PromptingLevel");
key.SetValue("MyComputer", "Disabled");
key.SetValue("LocalIntranet", "Disabled");
key.SetValue("Internet", "Disabled");
key.SetValue("TrustedSites", "Disabled");
key.SetValue("UntrustedSites", "Disabled");
key.Close();
生成并运行应用程序。
如何:配置 ClickOnce 信任提示行为的更多相关文章
- ibatis动态sql配置启动时提示:The content of elements must consist of well-formed character data...
ibatis动态sql配置启动时提示:The content of elements must consist of well-formed character data... 2012-07-18 ...
- TFS 2013 配置的时候,提示TF255466错误
TFS 2010 配置的时候,提示TF255466错误 花舞花落泪 2013-11-08 10:19:37 在验证是否可以安装 SharePoint 时的提示,Error [ System Chec ...
- TFS 2010 配置的时候,提示TF255466错误
TFS 2010 配置的时候,提示TF255466错误 Error [ System Checks ] TF255466: The configuration process for Team Fou ...
- vb6-很简单的配置密码验证提示
'很简单的配置密码验证提示 Dim add As String add = Trim(InputBox("请输入配置密码", "报表配置")) If add = ...
- ADFS 2.0 配置简介 PartⅡ – 配置 ADFS 信任关系
ADFS 与应用程序间的各种验证是基于信任关系的,在 ADFS 服务器配置好要信赖的应用程序(以 URL 为标识)后,应用程序再通过指定认证服务器来将用户引导至 ADFS 登录页,登录完成后再将用户的 ...
- JDBC Connection Configuration配置正确,提示Error preloading the connection pool
JDBC Connection Configuration配置正确,提示Error preloading the connection pool JDBC 请求报错,提示: 因为之前执行是正确的,这次 ...
- Spring配置XML本地提示
Spring配置XML本地提示:点击eclipse属性-->选择XML Catalog 这里有一点要注意:要选择schema location
- SublimeText配置NodeJS代码提示
IDE选择 最近开始研究node.js.在网上资料显示使用WebStorm开发好像是最理想的选择,但由于其需要收费.笔者选择使用Sublime Text开发.至于破解方法网络有一大堆资料,笔者此处就略 ...
- struts2 配置 struts.xml 提示
1.这个提示通常是在 连网络的时候才可以看到 2.当没有网路的时候我们该如何配置呢? window -->preferences -->xml catelog -->user.... ...
随机推荐
- Linux 下装逼技巧
``` 1.下载cmatrix-1.2a.tar.gz文件 [root@localhost ~]# wget https://jaist.dl.sourceforge.net/project/cmat ...
- js中检测数据类型的几种方式
1.typeof 一元运算符,用来检测数据类型.只可以检测number,string,boolean,object,function,undefined. 对于基本数据类型是没有问题的,但是遇到引用数 ...
- oracle杀掉连接
相关sql --查看当前连接 select count(*) from v$process --数据库允许的最大连接数 select value from v$parameter where name ...
- Retrofit提交Json
1.APIService为自定义接口类, 定义@Headers @Headers({"Content-Type: application/json","Accept: a ...
- Java8新特性_接口中的默认方法
默认方法由来猜想 1. Collection接口.Collections公共类. 同是操作集合,为啥要搞俩?没必要.在接口中搞一些默认实现,一个接口即搞定了. 2. Java8支持Lambda表达式 ...
- 七、文件IO——I/O处理方式和文件锁
7.1 I/O 处理方式 7.1.1 I/O处理的五种模型 阻塞I/O模型 若所调用的 I/O 函数没有完成相关的功能就会使进程挂起,直到相关数据到达才会返回.如 终端.网络设备的访问. 非阻塞模型 ...
- 【python小练】0011题
第 0011 题: 敏感词文本文件 filtered_words.txt,里面的内容为以下内容,当用户输入敏感词语时,则打印出 Freedom,否则打印出 Human Rights. #word.tx ...
- HttpWebResponse 解压gzip、deflate压缩
需要使用到两个Stream的子类:GZipStream.DeflateStream,代码如下: public string GetResponseBody(HttpWebResponse respon ...
- 【报错】java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[
报错 java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleExce ...
- 异步Async
1.c#异步介绍 异步必须基于委托,有委托才有异步 新建一个window Form程序MyAsync,添加一个按钮,(name)=btnAsync 后台代码如下: using System;using ...