VpnChannel.ActivateForeground(String, ValueSet) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在前台激活 VPN 应用。 这通常用于让用户输入凭据。 只能从 IVpnPlugin.Connect 的实现中调用 ActivateForeground。 当应用处于前台时,常规 连接 超时会暂停。
如果在) 有大约 10 分钟的长时间暂停 (, 则 ActivateForeground 调用将被取消。 如果无法启动,插件在理想情况下应支持不需要用户界面 (UI) 的身份验证方法。
旨在支持基于 Web 的身份验证方案,例如安全断言标记语言 (SAML) 和 Azure Active Directory (AAD) 身份验证。
public:
virtual ValueSet ^ ActivateForeground(Platform::String ^ packageRelativeAppId, ValueSet ^ sharedContext) = ActivateForeground;
ValueSet ActivateForeground(winrt::hstring const& packageRelativeAppId, ValueSet const& sharedContext);
public ValueSet ActivateForeground(string packageRelativeAppId, ValueSet sharedContext);
function activateForeground(packageRelativeAppId, sharedContext)
Public Function ActivateForeground (packageRelativeAppId As String, sharedContext As ValueSet) As ValueSet
参数
- packageRelativeAppId
-
String
Platform::String
winrt::hstring
包含要启动的前景应用的 PRAID) (包相对应用程序标识符的字符串。
- sharedContext
- ValueSet
一个 ValueSet 对象,用于将信息传递到前台应用。 前台应用可以从激活事件参数访问这些参数。
返回
一个 ValueSet 对象,其中包含所选Windows 运行时对象,该对象从前台应用传回 VPN 插件,指示前台请求的结果。
Windows 要求
设备系列 |
Windows 11 (在 10.0.22000.0 中引入)
|
API contract |
Windows.Foundation.UniversalApiContract (在 v14.0 中引入)
|
应用功能 |
networkingVpnProvider
|
注解
注意
在 VPN 插件的 IVpnPlugin.Connect 方法实现外部调用此 API 将失败。
使用前台激活机制需要在多个位置处理激活。
在 IVpnPlugin.Connect 方法中,你将使用正确的包相对应用程序标识符 (PRAID) 调用 ActivateForeground ,以及一个 ValueSet ,其中包含要发送到前台应用的所有值。
在前台应用中,需要捕获激活。 前台应用将使用 VpnForeground 的 Windows.ApplicationModel.ActivationKind 值激活。 激活参数的类型为 Windows.Networking.Vpn.VpnForegroundActivatedEventArgs,并将包含三个字段。
- ProfileName (String) 。
- SharedContext (ValueSet) 。
- ActivationOperation (Windows.Networking.Vpn.VpnForegroundActivationOperation。
然后,前台应用可以设置应用的用户界面 (UI) 来处理所需的授权 (或) 所需的任何数据。 完成后,必须调用 ActivationOperation 的 Complete 方法,并传入要返回到 IVpnPlugin.Connect 调用的值的 ValueSet。
返回到 IVpnPlugin.Connect 调用,使用从 ActivateForeground 返回的 ValueSet 来确定身份验证是否成功,并处理任何错误。
适用于
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈