Freigeben über


WebPermissionAttribute-Klasse

Gibt die Berechtigung für den Zugriff auf Internetressourcen an. Diese Klasse kann nicht vererbt werden.

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

Syntax

'Declaration
<SerializableAttribute> _
<AttributeUsageAttribute(AttributeTargets.Assembly Or AttributeTargets.Class Or AttributeTargets.Struct Or AttributeTargets.Constructor Or AttributeTargets.Method, AllowMultiple:=True, Inherited:=False)> _
Public NotInheritable Class WebPermissionAttribute
    Inherits CodeAccessSecurityAttribute
'Usage
Dim instance As WebPermissionAttribute
[SerializableAttribute] 
[AttributeUsageAttribute(AttributeTargets.Assembly|AttributeTargets.Class|AttributeTargets.Struct|AttributeTargets.Constructor|AttributeTargets.Method, AllowMultiple=true, Inherited=false)] 
public sealed class WebPermissionAttribute : CodeAccessSecurityAttribute
[SerializableAttribute] 
[AttributeUsageAttribute(AttributeTargets::Assembly|AttributeTargets::Class|AttributeTargets::Struct|AttributeTargets::Constructor|AttributeTargets::Method, AllowMultiple=true, Inherited=false)] 
public ref class WebPermissionAttribute sealed : public CodeAccessSecurityAttribute
/** @attribute SerializableAttribute() */ 
/** @attribute AttributeUsageAttribute(AttributeTargets.Assembly|AttributeTargets.Class|AttributeTargets.Struct|AttributeTargets.Constructor|AttributeTargets.Method, AllowMultiple=true, Inherited=false) */ 
public final class WebPermissionAttribute extends CodeAccessSecurityAttribute
SerializableAttribute 
AttributeUsageAttribute(AttributeTargets.Assembly|AttributeTargets.Class|AttributeTargets.Struct|AttributeTargets.Constructor|AttributeTargets.Method, AllowMultiple=true, Inherited=false) 
public final class WebPermissionAttribute extends CodeAccessSecurityAttribute

Hinweise

Mit WebPermissionAttribute können Sie deklarativ angeben, welche URI-Zeichenfolgen und Zeichenfolgen regulärer Ausdrücke die Klasse verwenden kann.

Die im WebPermissionAttribute angegebenen Sicherheitsinformationen werden in den Metadaten des Attributzieles gespeichert. Hierbei handelt es sich um die Klasse, auf die das WebPermissionAttribute angewendet wird. Das System greift auf diese Informationen zur Laufzeit zu. Die an den Konstruktor übergebene System.Security.Permissions.SecurityAction bestimmt die zulässigen WebPermissionAttribute-Ziele. Das System konvertiert die Sicherheitsinformationen des Attributzieles mithilfe der von der CreatePermission-Methode zurückgegebenen WebPermission in ein serialisierbares Formular, das in den Metadaten gespeichert wird.

Hinweis

WebPermissionAttribute wird ausschließlich für Deklarative Sicherheit verwendet. Verwenden Sie für Imperative Sicherheit die entsprechende WebPermission.

Beispiel

Im folgenden Beispiel wird das Anwenden von WebPermissionAttribute auf eine Methode veranschaulicht.

' Deny access to a specific resource by setting the ConnectPattern property. 
<WebPermission(SecurityAction.Deny, ConnectPattern := "http://www\.contoso\.com/.*")> Public Sub Connect()

' Create a Connection.     
Dim myWebRequest As HttpWebRequest = CType(WebRequest.Create("https://www.contoso.com"), HttpWebRequest)
Console.WriteLine("This line should never be printed")
   
    // Deny access to a specific resource by setting the ConnectPattern property. 
   [WebPermission(SecurityAction.Deny, ConnectPattern=@"http://www\.contoso\.com/")]

public void Connect() 
     {
        // Create a Connection.  
        HttpWebRequest myWebRequest = (HttpWebRequest)WebRequest.Create("https://www.contoso.com");
        Console.WriteLine("This line should never be printed");
     }
public:
   // Deny access to a specific resource by setting the ConnectPattern property.
   [method:WebPermission(SecurityAction::Deny,ConnectPattern="https://www.contoso.com/")]

   void Connect()
   {
      // Create a Connection.
      HttpWebRequest^ myWebRequest = (HttpWebRequest^)(WebRequest::Create( "https://www.contoso.com" ));
      Console::WriteLine( "This line should never be printed" );
   }
// Deny access to a specific resource by setting the ConnectPattern property. 
/** @attribute WebPermission(SecurityAction.Deny, ConnectPattern =
   "http://www\\.contoso\\.com/")
 */
public void Connect()
{
    // Create a Connection.  
    HttpWebRequest myWebRequest = 
        (HttpWebRequest) WebRequest.Create("https://www.contoso.com");
    Console.WriteLine("This line should never be printed");
} //Connect

Vererbungshierarchie

System.Object
   System.Attribute
     System.Security.Permissions.SecurityAttribute
       System.Security.Permissions.CodeAccessSecurityAttribute
        System.Net.WebPermissionAttribute

Threadsicherheit

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Plattformen

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

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

WebPermissionAttribute-Member
System.Net-Namespace