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