Condividi tramite


WebPermissionAttribute.AcceptPattern Proprietà

Definizione

Recupera o imposta un modello di espressione regolare che descrive l'URI accettato dal WebPermissionAttribute corrente.

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

Valore della proprietà

Una stringa che contiene un modello di espressione regolare che descrive l'URI accettato dal WebPermissionAttribute corrente. Questa stringa deve essere codificata in base alle regole per la codifica di una stringa del costruttore Regex.

Eccezioni

La proprietà AcceptPattern non è null quando si tenta di impostare il valore. Se si desidera specificare più di un metodo di accesso all'URI, utilizzare un'ulteriore istruzione di dichiarazione dell'attributo.

Esempio

Nell'esempio seguente viene illustrato come usare WebPermissionAttribute per specificare un oggetto consentito AcceptPattern.

public:
   [method:WebPermission(SecurityAction::Deny,AcceptPattern="http://www\\.contoso\\.com/Private/.*")]
   static void CheckAcceptPermission( String^ uriToCheck )
   {
      WebPermission^ permissionToCheck = gcnew WebPermission;
      permissionToCheck->AddPermission( NetworkAccess::Accept, uriToCheck );
      permissionToCheck->Demand();
   }

   static void demoDenySite()
   {
      // Passes a security check.
      CheckAcceptPermission( "http://www.contoso.com/Public/page.htm" );
      Console::WriteLine( "Public page has passed Accept permission check" );

      try
      {
         // Throws a SecurityException.
         CheckAcceptPermission( "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 );
      }
   }
[WebPermission(SecurityAction.Deny, AcceptPattern=@"http://www\.contoso\.com/Private/.*")]

public static void CheckAcceptPermission(string uriToCheck) {

    WebPermission permissionToCheck = new WebPermission();
    permissionToCheck.AddPermission(NetworkAccess.Accept, uriToCheck);
    permissionToCheck.Demand();
}

public static void demoDenySite() {
    //Passes a security check.
    CheckAcceptPermission("http://www.contoso.com/Public/page.htm");
    Console.WriteLine("Public page has passed Accept permission check");

    try {
        //Throws a SecurityException.
        CheckAcceptPermission("http://www.contoso.com/Private/page.htm");
        Console.WriteLine("This line will not be printed");
}
    catch (SecurityException e) {
        Console.WriteLine("Expected exception: " + e.Message);
    }
 }
<WebPermission(SecurityAction.Deny, AcceptPattern := "http://www\.contoso\.com/Private/.*")> _
  Public Shared Sub       CheckAcceptPermission(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.Accept, uriToCheck)
     permissionToCheck.Demand()
  End Sub
  
  
  Public Shared Sub demoDenySite()
     'Passes a security check.
     CheckAcceptPermission("http://www.contoso.com/Public/page.htm")
     Console.WriteLine("Public page has passed Accept permission check")
     
     Try
        'Throws a SecurityException.
        CheckAcceptPermission("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

Commenti

Quando si applica WebPermissionAttribute alla classe, questa proprietà specifica la stringa di espressione regolare da usare all'interno della classe. Questa proprietà è write-once.

Si applica a

Vedi anche