WebPermissionAttribute.ConnectPattern Свойство

Определение

Возвращает или задает шаблон регулярного выражения для описания строки подключения URI, управляемой текущим WebPermissionAttribute.

public:
 property System::String ^ ConnectPattern { System::String ^ get(); void set(System::String ^ value); };
public string ConnectPattern { get; set; }
member this.ConnectPattern : string with get, set
Public Property ConnectPattern As String

Значение свойства

Строка, содержащая шаблон регулярного выражения для описания строки подключения URI, управляемой этим WebPermissionAttribute.

Исключения

При попытке установить значение свойство ConnectPattern не равно null. Если нужно указать более одного URI для подключения, используйте дополнительный оператор объявления атрибута.

Примеры

В следующем примере показано, как использовать WebPermissionAttribute для указания допустимого 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.
  [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();
}

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.Message);
    }
 }

  ' Set the WebPermissionAttribute  ConnectPattern property.
<WebPermission(SecurityAction.Deny, ConnectPattern := "http://www\.contoso\.com/Private/.*")> _
    Public Shared Sub CheckConnectPermission(uriToCheck As String)
     Dim re As New Regex("http://www\.contoso\.com/Public/.*")
     Dim con As New WebPermission(NetworkAccess.Connect, re)
     con.Assert()
     Dim permissionToCheck As New WebPermission()
     permissionToCheck.AddPermission(NetworkAccess.Connect, uriToCheck)
     permissionToCheck.Demand()
  End Sub
  
  
  Public Shared Sub 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 e As SecurityException
        Console.WriteLine(("Expected exception" + e.Message))
     End Try
  End Sub

Комментарии

При применении WebPermissionAttribute к классу это свойство указывает, какая строка подключения регулярного выражения принимается для использования в классе. Это свойство имеет значение однократной записи.

Применяется к

См. также раздел