Windows.Networking.Vpn
Windows.Networking.Vpn
Windows.Networking.Vpn
Windows.Networking.Vpn
Namespace
This API enables you to create, edit and manage Virtual Private Network (VPN) connections, and to write plugins for controlling a VPN connection using the Windows VPN Platform.
To use this API, you must specify the networkingVpnProvider capability in your application manifest. To manually add this capability, copy the following line into your manifest, inside the <Capabilities> tag.
<rescap:Capability Name="networkingVpnProvider" />
If your app is using this API and you wish to publish your app to the Microsoft Store, special permissions must be provisioned for your Microsoft developer account, or the VPN calls will fail at runtime. This permission is not needed if the application is side-loaded or installed through a different method.
To request permission to release your VPN app through the Microsoft Store, go to the Windows Developer Support page and choose Submit an Incident. Indicate your request to publish your VPN Plug-In through the Microsoft Store.
Classes
| VpnAppId VpnAppId VpnAppId VpnAppId |
Represents an application identifier, which can be a file path, a package family name, or a fully qualified binary name (FQBN) string. |
| VpnChannel VpnChannel VpnChannel VpnChannel |
Provides methods to create and destroy a VPN channel, and methods to perform buffer management. A VPN channel is the object in the system that links the network traffic data flow between the VPN plug-in's VPN server socket and the client machine network stack. |
| VpnChannelActivityEventArgs VpnChannelActivityEventArgs VpnChannelActivityEventArgs VpnChannelActivityEventArgs |
VpnChannelActivityEventArgs is not supported and may be altered or unavailable in the future. Instead, use VpnChannelActivityStateChangedArgs. |
| VpnChannelActivityStateChangedArgs VpnChannelActivityStateChangedArgs VpnChannelActivityStateChangedArgs VpnChannelActivityStateChangedArgs |
Represents the ActivityStateChanged event specifying the new VPN channel state (idle or active). |
| VpnChannelConfiguration VpnChannelConfiguration VpnChannelConfiguration VpnChannelConfiguration |
The configuration of the VpnChannel, which dictates how to establish the communication with the VPN server. |
| VpnCredential VpnCredential VpnCredential VpnCredential |
Represents the credentials requested and provided by the platform. This class holds username, password, PIN, OTP, and any additional PIN or certificate to which access has been granted. |
| VpnCustomCheckBox VpnCustomCheckBox VpnCustomCheckBox VpnCustomCheckBox |
VpnCustomCheckBox is not supported and may be altered or unavailable in the future. Instead, use VpnCustomPromptBooleanInput. |
| VpnCustomComboBox VpnCustomComboBox VpnCustomComboBox VpnCustomComboBox |
VpnCustomComboBox is not supported and may be altered or unavailable in the future. Instead, use VpnCustomPromptOptionSelector. |
| VpnCustomEditBox VpnCustomEditBox VpnCustomEditBox VpnCustomEditBox |
VpnCustomEditBox is not supported and may be altered or unavailable in the future. Instead, use VpnCustomPromptTextInput. |
| VpnCustomErrorBox VpnCustomErrorBox VpnCustomErrorBox VpnCustomErrorBox |
VpnCustomErrorBox is not supported and may be altered or unavailable in the future. Instead, use VpnCustomPromptText. |
| VpnCustomPromptBooleanInput VpnCustomPromptBooleanInput VpnCustomPromptBooleanInput VpnCustomPromptBooleanInput |
Represents a Boolean type of UI control prompt required from the user. This is typically a checkbox. This is used in the construction of custom prompts used in the VpnChannel.RequestCustomPromptAsync method. |
| VpnCustomPromptOptionSelector VpnCustomPromptOptionSelector VpnCustomPromptOptionSelector VpnCustomPromptOptionSelector |
Represents a multiple choice UI control prompt required from the user. This is typically a combo box. This is used in the construction of custom prompts used in the VpnChannel.RequestCustomPromptAsync method. |
| VpnCustomPromptText VpnCustomPromptText VpnCustomPromptText VpnCustomPromptText |
Represents a text UI element used in the VpnChannel.RequestCustomPromptAsync method. |
| VpnCustomPromptTextInput VpnCustomPromptTextInput VpnCustomPromptTextInput VpnCustomPromptTextInput |
Represents a text input UI element used in the RequestCustomPromptAsync method. |
| VpnCustomTextBox VpnCustomTextBox VpnCustomTextBox VpnCustomTextBox |
VpnCustomTextBox is not supported and may be altered or unavailable in the future. Instead, use VpnCustomPromptText. |
| VpnDomainNameAssignment VpnDomainNameAssignment VpnDomainNameAssignment VpnDomainNameAssignment |
Contains VPN domain name policies, like name resolution, namespace configuration, and web proxies. |
| VpnDomainNameInfo VpnDomainNameInfo VpnDomainNameInfo VpnDomainNameInfo |
Specifies the name policy for a specific namespace. It can specify the DNS servers to use for name resolution of the namespace, the web proxies to use when connecting to the namespace, or whether it should be exempted from the policy itself. |
| VpnInterfaceId VpnInterfaceId VpnInterfaceId VpnInterfaceId |
Represents an interface ID used in the construction and assignment of an IPv6 address to the VPN interface. The ID contained in this class fills the interface ID portion of the IPv6 address. |
| VpnManagementAgent VpnManagementAgent VpnManagementAgent VpnManagementAgent |
Allows the creation, deletion, edit, connect, and disconnect flows for VPN. These can be used to manage the lifecycle of a VPN profile, and to create a custom VPN connection manager. |
| VpnNamespaceAssignment VpnNamespaceAssignment VpnNamespaceAssignment VpnNamespaceAssignment |
VpnNamespaceAssignment is not supported and may be altered or unavailable in the future. Instead, use VpnDomainNameAssignment. |
| VpnNamespaceInfo VpnNamespaceInfo VpnNamespaceInfo VpnNamespaceInfo |
VpnNamespaceInfo is not supported and may be altered or unavailable in the future. Instead, use VpnDomainNameInfo. |
| VpnNativeProfile VpnNativeProfile VpnNativeProfile VpnNativeProfile |
Represents a profile for an OS Native/Inbox VPN protocol. |
| VpnPacketBuffer VpnPacketBuffer VpnPacketBuffer VpnPacketBuffer |
Used by the platform to manage a memory buffer. VpnPacketBuffer allows buffers to be chained together in a IVpnPacketBufferList object list to be sent or received in a specific order. |
| VpnPacketBufferList VpnPacketBufferList VpnPacketBufferList VpnPacketBufferList |
Used to manage VpnPacketBuffer objects. |
| VpnPickedCredential VpnPickedCredential VpnPickedCredential VpnPickedCredential |
VpnPickedCredential is not supported and may be altered or unavailable in the future. Instead, use VpnCredential. |
| VpnPlugInProfile VpnPlugInProfile VpnPlugInProfile VpnPlugInProfile |
Represents a VPN plug-in profile. |
| VpnRoute VpnRoute VpnRoute VpnRoute |
Represents a route relative to the VPN channel. It is composed of an address and a prefix size to identify the subnet being routed. The route can then be either included or excluded from the VPN channel scope. |
| VpnRouteAssignment VpnRouteAssignment VpnRouteAssignment VpnRouteAssignment |
Represents the list of routes assigned to the VPN channel for the correct flow and redirection of traffic. |
| VpnSystemHealth VpnSystemHealth VpnSystemHealth VpnSystemHealth |
Allows access to the security health of the system device. |
| VpnTrafficFilter VpnTrafficFilter VpnTrafficFilter VpnTrafficFilter |
Defines the traffic filtering properties (including per app VPN). A description of the type of network traffic that will be allowed over the VPN connection, such as a specific application and protocol allowed for the connection. |
| VpnTrafficFilterAssignment VpnTrafficFilterAssignment VpnTrafficFilterAssignment VpnTrafficFilterAssignment |
Allows the specification of a set of traffic filters as policy to a VPN channel. |