(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

WebPermission-Klasse

Steuert die Zugriffsrechte für den Zugriff auf HTTP-Internetressourcen.

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

[SerializableAttribute]
public sealed class WebPermission : CodeAccessPermission, 
	IUnrestrictedPermission

Der WebPermission-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche MethodeWebPermission()Erstellt eine neue Instanz der WebPermission-Klasse.
Öffentliche MethodeWebPermission(PermissionState)Erstellt eine neue Instanz der WebPermission-Klasse, die alle Anforderungen entweder übergibt oder ablehnt.
Öffentliche MethodeWebPermission(NetworkAccess, String)Initialisiert eine neue Instanz der WebPermission-Klasse mit den angegebenen Zugriffsrechten für den angegebenen URI.
Öffentliche MethodeWebPermission(NetworkAccess, Regex)Initialisiert eine neue Instanz der WebPermission-Klasse mit den angegebenen Zugriffsrechten für den angegebenen regulären URI-Ausdruck.
Zum Seitenanfang

  NameBeschreibung
Öffentliche EigenschaftAcceptListDiese Eigenschaft gibt eine Enumeration einer einzelnen Akzeptierungsberechtigung zurück, die in dieser WebPermission enthalten ist. Mögliche, in der zurückgegebenen Enumeration enthaltene Objekttypen sind String und System.Text.RegularExpressions.Regex.
Öffentliche EigenschaftConnectListDiese Eigenschaft gibt eine Enumeration einer einzelnen Verbindungsberechtigung zurück, die in dieser WebPermission enthalten ist. Mögliche, in der zurückgegebenen Enumeration enthaltene Objekttypen sind String und System.Text.RegularExpressions.Regex.
Zum Seitenanfang

  NameBeschreibung
Öffentliche MethodeAddPermission(NetworkAccess, String)Fügt der aktuellen WebPermission die angegebene URI-Zeichenfolge mit den angegebenen Zugriffsrechten hinzu.
Öffentliche MethodeAddPermission(NetworkAccess, Regex)Fügt der aktuellen WebPermission den angegebenen URI mit den angegebenen Zugriffsrechten hinzu.
Öffentliche MethodeAssertDeklariert, dass der aufrufende Code selbst dann auf die durch eine Berechtigungsanforderung geschützte Ressource über den diese Methode aufrufenden Code zugreifen kann, wenn übergeordnete Aufrufer in der Aufrufliste keine Zugriffsberechtigung für die Ressource besitzen. Die Verwendung von Assert kann zu Sicherheitsproblemen führen. (Von CodeAccessPermission geerbt.)
Öffentliche MethodeCopyErstellt eine Kopie einer WebPermission. (Überschreibt CodeAccessPermission.Copy().)
Öffentliche MethodeDemandErzwingt zur Laufzeit eine SecurityException, wenn die von der aktuellen Instanz angegebene Berechtigung keinem übergeordneten Aufrufer in der Aufrufliste gewährt wurde. (Von CodeAccessPermission geerbt.)
Öffentliche MethodeDeny Veraltet. Verhindert, dass übergeordnete Aufrufer in der Aufrufliste auf die von der aktuellen Instanz angegebene Ressource über Code zugreifen, der diese Methode aufruft. (Von CodeAccessPermission geerbt.)
Öffentliche MethodeEqualsBestimmt, ob das angegebene CodeAccessPermission-Objekt und das aktuelle CodeAccessPermission-Objekt gleich sind. (Von CodeAccessPermission geerbt.)
Öffentliche MethodeFromXmlRekonstruiert eine WebPermission aus einer XML-Codierung. (Überschreibt CodeAccessPermission.FromXml(SecurityElement).)
Öffentliche MethodeGetHashCodeRuft einen Hashcode für das CodeAccessPermission-Objekt ab, das für die Verwendung in Hashalgorithmen und Datenstrukturen wie Hashtabellen geeignet ist. (Von CodeAccessPermission geerbt.)
Öffentliche MethodeGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Öffentliche MethodeIntersectGibt die logische Schnittmenge zweier WebPermission-Instanzen zurück. (Überschreibt CodeAccessPermission.Intersect(IPermission).)
Öffentliche MethodeIsSubsetOfBestimmt, ob die aktuelle WebPermission eine Teilmenge des angegebenen Objekts ist. (Überschreibt CodeAccessPermission.IsSubsetOf(IPermission).)
Öffentliche MethodeIsUnrestrictedÜberprüft den allgemeinen Berechtigungszustand der WebPermission.
Öffentliche MethodePermitOnlyVerhindert, dass übergeordnete Aufrufer in der Aufrufliste auf alle außer der von der aktuellen Instanz angegebenen Ressource über den Code zugreifen, der diese Methode aufruft. (Von CodeAccessPermission geerbt.)
Öffentliche MethodeToStringErstellt eine Zeichenfolgenentsprechung des aktuellen Berechtigungsobjekts und gibt diese zurück. (Von CodeAccessPermission geerbt.)
Öffentliche MethodeToXmlErstellt eine XML-Codierung einer WebPermission und ihres aktuellen Zustands. (Überschreibt CodeAccessPermission.ToXml().)
Öffentliche MethodeUnionGibt die logische Gesamtmenge zweier Instanzen der WebPermission-Klasse zurück. (Überschreibt CodeAccessPermission.Union(IPermission).)
Zum Seitenanfang

WebPermission stellt für die Steuerung des Zugriffs auf Internetressourcen einen Satz von Methoden und Eigenschaften bereit. Mit einer WebPermission können Sie, je nach dem bei der Erstellung der WebPermission festgelegten PermissionState, beschränkten oder unbeschränkten Zugriff auf die Ressource bereitstellen.

Erstellen Sie eine WebPermission-Instanz, indem Sie ihren Konstruktor mithilfe eines der folgenden Parametersätze aufrufen:

Die ConnectList und AcceptList enthalten die URIs, für die Sie Zugriffsberechtigung erteilt haben. Verwenden Sie AddPermission, um einer der beiden Listen einen URI hinzuzufügen. Wenn Sie Accept als den NetworkAccess-Parameter übergeben, wird der URI der AcceptList hinzugefügt. WebPermission lässt Verbindungen zu der Zielklasse mit URIs zu, die mit der AcceptList übereinstimmen.

WarnhinweisVorsicht

Um Zugriff an eine Internetressource zu verweigern, müssen Sie Zugriff auf alle möglichen Pfaden auf diese Ressource verweigern. Dies erfordert das Aufrufen von WebPermission.WebPermission mit den Zustandsparameter, der auf Deny festgelegt ist. Es ist jedoch vorteilhafter, den Zugriff nur auf die bestimmte Ressource zu beschränken. Weitere Informationen über diese Vorgehensweise finden Sie unter dem Thema [<topic://cpcondeny>].

HinweisHinweis

Sie müssen Zugriff nur mithilfe des Pfades kanonischen der Ressource verweigern. Es ist nicht erforderlich, alle syntaktischen Variationen für den Pfad zu verwenden.

HinweisHinweis

Benutzername und Standardanschlussinformationen werden aus dem Uri entfernt, bevor der Vergleich mit dem vom WebPermission(NetworkAccess, Regex)-Konstruktor bereitgestellten regulären Ausdrucksargument ausgeführt wird. Wenn der reguläre Ausdruck Benutzerinformationen oder die Standardanschlussnummer enthält, stimmt keiner der Uri mit dem regulären Ausdruck überein.

Im folgenden Beispiel wird veranschaulicht, wie eine neue Instanz von WebPermission mithilfe von Regex erstellt wird. Weitere Hosts werden der WebPermission-Liste für das Verbinden und Akzeptieren hinzugefügt. Schließlich wird die Liste für das Verbinden und Akzeptieren auf der Konsole angezeigt.



    //  Create a Regex that accepts all URLs containing the host fragment www.contoso.com.
    Regex myRegex = new Regex(@"http://www\.contoso\.com/.*");

    // Create a WebPermission that gives permissions to all the hosts containing the same host fragment.
    WebPermission myWebPermission = new WebPermission(NetworkAccess.Connect,myRegex);

    //Add connect privileges for a www.adventure-works.com.
    myWebPermission.AddPermission(NetworkAccess.Connect,"http://www.adventure-works.com");

    //Add accept privileges for www.alpineskihouse.com.
    myWebPermission.AddPermission(NetworkAccess.Accept, "http://www.alpineskihouse.com/");

    // Check whether all callers higher in the call stack have been granted the permission.
    myWebPermission.Demand();

    // Get all the URIs with Connect permission.
    IEnumerator myConnectEnum = myWebPermission.ConnectList;
    Console.WriteLine("\nThe 'URIs' with 'Connect' permission are :\n");
    while (myConnectEnum.MoveNext())
    {Console.WriteLine("\t" + myConnectEnum.Current);}

    // Get all the URIs with Accept permission.	  
    IEnumerator myAcceptEnum = myWebPermission.AcceptList;
    Console.WriteLine("\n\nThe 'URIs' with 'Accept' permission is :\n");

    while (myAcceptEnum.MoveNext())
      {Console.WriteLine("\t" + myAcceptEnum.Current);}



.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

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

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

Community-Beiträge

HINZUFÜGEN
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?
Anzeigen:
© 2014 Microsoft