次の方法で共有


WebPermissionAttribute.ConnectPattern プロパティ

定義

現在の WebPermissionAttribute で制御される URI 接続を記述する正規表現パターンを取得または設定します。

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

プロパティ値

この WebPermissionAttribute で制御される URI 接続を記述する正規表現パターンを含む文字列。

例外

値を設定しようとしましたが、ConnectPatternnull ではありません。 複数の Connect 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 場合、このプロパティは、クラス内で使用するために受け入れられる正規表現接続文字列を指定します。 このプロパティは write-once です。

適用対象

こちらもご覧ください