AuthenticationLevel
为未调用 CoInitializeSecurity 的应用程序或为调用 CoInitializeSecurity 并指定 AppID 的应用程序设置身份验证级别。
注册表项
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID
{AppID_GUID}
AuthenticationLevel = value
注解
这是一个与 RPC_C_AUTHN_LEVEL 常量等效的 REG_DWORD 值。
值 | 常量 |
---|---|
1 | RPC_C_AUTHN_LEVEL_NONE |
2 | RPC_C_AUTHN_LEVEL_CONNECT |
3 | RPC_C_AUTHN_LEVEL_CALL |
4 | RPC_C_AUTHN_LEVEL_PKT |
5 | RPC_C_AUTHN_LEVEL_PKT_INTEGRITY |
6 | RPC_C_AUTHN_LEVEL_PKT_PRIVACY |
AuthenticationLevel 值类似于 LegacyAuthenticationLevel 值。 如果存在 AuthenticationLevel 值,则使用该值,而不是该 AppID 的 LegacyAuthenticationLevel 值。
如果 AuthenticationLevel 值的类型不正确或超出范围,CoInitializeSecurity 将失败,导致接口封送失败。 这可防止应用程序进行任何调用(跨单元、跨线程、跨进程或跨计算机)。
AuthenticationLevel 和 AccessPermission 值是独立的。 如果不存在一个,则使用默认值。 以下规则列出了 AuthenticationLevel 值与 AccessPermission 值之间的交互:
- 如果 AuthenticationLevel 为 NONE,则会(为该应用程序)忽略 AccessPermission 和 DefaultAccessPermission 值。
- 如果 AuthenticationLevel 不存在,并且 LegacyAuthenticationLevel 为 NONE,则会(为该应用程序)忽略 AccessPermission 和 DefaultAccessPermission 值。
相关主题