如何:配置包含列表安全性 (2007 System)
更新:2007 年 11 月
适用对象 |
---|
本主题中的信息仅适用于指定的 Visual Studio Tools for Office 项目和 Microsoft Office 版本。 项目类型
Microsoft Office 版本
有关更多信息,请参见按应用程序和项目类型提供的功能。 |
如果有管理员权限,可以通过将信任决定保存到包含列表中来配置 ClickOnce 信任提示,以控制是否允许最终用户选择安装 Visual Studio Tools for Office 解决方案。有关包含列表的信息,请参见通过使用包含列表信任 Office 解决方案 (2007 System)。
对于位于五个区域每个区域中的解决方案,您可以设置以下选项:
启用 ClickOnce 信任提示密钥和包含列表。可以允许最终用户向用任何证书签名的 Office 解决方案授予信任。
限制 ClickOnce 信任提示密钥和包含列表。可以允许最终用户安装用标识发布者的证书(但不是已信任的证书)签名的 Office 解决方案。
禁用 ClickOnce 信任提示密钥和包含列表。可以防止最终用户安装未用显式信任的证书签名的 Office 解决方案。
启用包含列表
如果想要向最终用户呈现安装和运行来自某个区域的任何 Visual Studio Tools for Office 解决方案的选项,请为该区域启用包含列表。
使用注册表编辑器启用包含列表
打开注册表编辑器:
单击“开始”,然后单击“运行”。
在“打开”框中,键入 regedt32.exe,然后单击“确定”。
查找以下注册表项:
\HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel
如果该项不存在,请创建它。
以“字符串值”的形式添加具有关联值的以下子项(如果这些子项尚不存在)。
字符串值子项
Value
Internet
AuthenticodeRequired
UntrustedSites
Disabled
MyComputer
Enabled
LocalIntranet
Enabled
TrustedSites
Enabled
默认情况下,Internet 的值为 AuthenticodeRequired,并且 UntrustedSites 的值为 Disabled。
以编程方式启用包含列表
在 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", "AuthenticodeRequired") 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 证书对解决方案进行签名。
限制包含列表
打开注册表编辑器:
单击“开始”,然后单击“运行”。
在“打开”框中,键入 regedt32.exe,然后单击“确定”。
查找以下注册表项:
\HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel
如果该项不存在,请创建它。
以“字符串值”的形式添加具有关联值的以下子项(如果这些子项尚不存在)。
字符串值子项
Value
UntrustedSites
已禁用
Internet
AuthenticodeRequired
MyComputer
AuthenticodeRequired
LocalIntranet
AuthenticodeRequired
TrustedSites
AuthenticodeRequired
默认情况下,Internet 的值为 AuthenticodeRequired,并且 UntrustedSites 的值为 Disabled。
以编程方式限制包含列表
在 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();
生成并运行应用程序。
禁用包含列表
您可以禁用包含列表,以使最终用户只能安装用受信任的已知证书签名的解决方案。
禁用包含列表
打开注册表编辑器:
单击“开始”,然后单击“运行”。
在“打开”框中,键入 regedt32.exe,然后单击“确定”。
如果以下注册表项尚不存在,请创建该注册表项:
\HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel
以“字符串值”的形式添加具有关联值的以下子项(如果这些子项尚不存在)。
字符串值子项
值
UntrustedSites
已禁用
Internet
Disabled
MyComputer
Disabled
LocalIntranet
Disabled
TrustedSites
Disabled
以编程方式禁用包含列表
在 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();
生成并运行应用程序。