WebPermission Constructor (NetworkAccess, Regex)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Initializes a new instance of the WebPermission class with the specified access rights for the specified URI regular expression.

Namespace:   System.Net
Assembly:  System (in System.dll)

Public Sub New (
	access As NetworkAccess,
	uriRegex As Regex


Type: System.Net.NetworkAccess

A NetworkAccess value that indicates what kind of access to grant to the specified URI. Accept indicates that the application is allowed to accept connections from the Internet on a local resource. Connect indicates that the application is allowed to connect to specific Internet resources.

Type: System.Text.RegularExpressions.Regex

A regular expression that describes the URI to which access is to be granted.

This constructor initializes a WebPermission and grants its target permission to either make a remote host connection or accept a remote host connection using the URI described by the uriRegexparameter.


It is recommended that you create uriRegex using the RegexOptions.IgnoreCase, RegexOptions.Compiled, and RegexOptions.Singleline flags.


A candidate URI string is checked against the list of relevant regular expressions (AcceptList or ConnectList) in two ways. First, the candidate URI string is checked against the appropriate list; then, if there is no match, the candidate URI string is converted into a Uri and checked against the appropriate list.

The following example creates a new instance of WebPermission with connect rights for the specified System.Text.RegularExpressions.Regex.

'  Creates an instance of 'Regex' that accepts all  URL's containing the host fragment 'www.contoso.com'.
Dim myRegex As New Regex("http://www\.contoso\.com/.*")

   ' Creates a 'WebPermission' that gives the permissions to all the hosts containing same host fragment.
   Dim myWebPermission As New WebPermission(NetworkAccess.Connect, myRegex)

  '  Checks all callers higher in the call stack have been granted the permission.

.NET Framework
Available since 1.1
Return to top