WebPermissionAttribute.AcceptPattern Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define um padrão de expressão regular que descreve o URI aceito pelo WebPermissionAttribute atual.
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
Valor da propriedade
Uma cadeia de caracteres que contém um padrão de expressão regular que descreve o URI aceito pelo atual WebPermissionAttribute. Essa cadeia de caracteres deve ser escapada de acordo com as regras para codificar uma Regex cadeia de caracteres de construtor.
Exceções
AcceptPattern não é null
quando você tentar definir o valor. Se você quiser especificar mais de um URI Accept, use uma instrução de declaração de atributo adicional.
Exemplos
O exemplo a seguir demonstra como usar WebPermissionAttribute para especificar um permitido 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
Comentários
Ao aplicar WebPermissionAttribute à sua classe, essa propriedade especifica qual cadeia de caracteres de expressão regular será aceita para uso em sua classe. Essa propriedade é write-once.