Export (0) Print
Expand All

WebPermissionAttribute.ConnectPattern Property

Gets or sets a regular expression pattern that describes the URI connection controlled by the current WebPermissionAttribute.

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

public:
property String^ ConnectPattern {
	String^ get ();
	void set (String^ value);
}
/** @property */
public String get_ConnectPattern ()

/** @property */
public void set_ConnectPattern (String value)

public function get ConnectPattern () : String

public function set ConnectPattern (value : String)

Property Value

A string containing a regular expression pattern that describes the URI connection controlled by this WebPermissionAttribute.

Exception typeCondition

ArgumentException

ConnectPattern is not a null reference (Nothing in Visual Basic) when you attempt to set the value. If you wish to specify more than one connect URI, use an additional attribute declaration statement.

When applying WebPermissionAttribute to your class, this property specifies what regular expression connect string is accepted for use within your class. This property is write-once.

The following example demonstrates how to use WebPermissionAttribute to specify an allowable ConnectPattern.

public:
   // Set the WebPermissionAttribute ConnectPattern property.
   [WebPermission(SecurityAction::Deny,ConnectPattern="http://www\\.contoso\\.com/Private/.*")]

   static void CheckConnectPermission( String^ uriToCheck )
   {
      WebPermission^ permissionToCheck = gcnew WebPermission;
      permissionToCheck->AddPermission( NetworkAccess::Connect, uriToCheck );
      permissionToCheck->Demand();
   }

   static void demoDenySite()
   {
      //Pass the security check.
      CheckConnectPermission( "http://www.contoso.com/Public/page.htm" );
      Console::WriteLine( "Public page has passed Connect permission check" );

      try
      {
         //Throw a SecurityException.
         CheckConnectPermission( "http://www.contoso.com/Private/page.htm" );
         Console::WriteLine( "This line will not be printed" );
      }
      catch ( SecurityException^ e ) 
      {
         Console::WriteLine( "Expected exception {0}", e->Message );
      }
   }
};

// Set the WebPermissionAttribute  ConnectPattern property.
/** @attribute WebPermission(SecurityAction.Deny, ConnectPattern = 
    "http://www\\.contoso\\.com/Private/.*")
 */
public static void CheckConnectPermission(String uriToCheck)
{
    WebPermission permissionToCheck = new WebPermission();
    permissionToCheck.AddPermission(NetworkAccess.Connect, uriToCheck);
    permissionToCheck.Demand();
} //CheckConnectPermission

public static void DemoDenySite()
{
    //Pass the security check.
    CheckConnectPermission("http://www.contoso.com/Public/page.htm");
    Console.WriteLine("Public page has passed Connect permission check");

    try {
        //Throw a SecurityException.
        CheckConnectPermission("http://www.contoso.com/Private/page.htm");
        Console.WriteLine("This line will not be printed");
    }
    catch (SecurityException e) {
        Console.WriteLine("Expected exception" + e.get_Message());
    }
} //DemoDenySite

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft