PrincipalPermissionAttribute Klasse

Definition

Achtung

Code Access Security is not supported or honored by the runtime.

Ermöglicht die Anwendung von Sicherheitsaktionen PrincipalPermission auf Code mithilfe deklarativer Sicherheit. Diese Klasse kann nicht vererbt werden.

public ref class PrincipalPermissionAttribute sealed : System::Security::Permissions::CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)]
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public sealed class PrincipalPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)]
[System.Serializable]
public sealed class PrincipalPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class PrincipalPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)]
public sealed class PrincipalPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type PrincipalPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
type PrincipalPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type PrincipalPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)>]
type PrincipalPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
Public NotInheritable Class PrincipalPermissionAttribute
Inherits CodeAccessSecurityAttribute
Vererbung
Attribute

Hinweise

Vorsicht

Code Access Security (CAS) ist in allen Versionen von .NET Framework und .NET veraltet. Aktuelle Versionen von .NET berücksichtigen keine CAS-Anmerkungen und erzeugen Fehler, wenn CAS-bezogene APIs verwendet werden. Entwickler*innen sollten alternative Mittel zum Ausführen von Sicherheitsaufgaben suchen.

PrincipalPermissionAttribute kann verwendet werden, um deklarativ zu verlangen, dass Benutzer, die Ihren Code ausführen, zu einer bestimmten Rolle gehören oder authentifiziert wurden. Die Verwendung von Unrestricted erzeugt ein PrincipalPermission mit Authenticated, das auf true gesetzt ist, und Name sowie Role, die auf null gesetzt sind.

Der zulässige Gültigkeitsbereich der Deklaration hängt von der SecurityAction verwendeten Deklaration ab. PrincipalPermissionAttribute kann nicht auf Assemblyebene angewendet werden.

Die von einem Sicherheitsattribute deklarierten Sicherheitsinformationen werden in den Metadaten des Attributziels gespeichert und zur Laufzeit vom System aufgerufen. Sicherheitsattribute werden nur für deklarative Sicherheit verwendet. Verwenden Sie für imperative Sicherheit die entsprechende Berechtigungsklasse.

Important

Bevor Sie diese Klasse zum Anfordern der Prinzipalberechtigung verwenden, müssen Sie die Prinzipalrichtlinie der aktuellen Anwendungsdomäne auf den Enumerationswert WindowsPrincipalfestlegen. Standardmäßig ist die Prinzipalrichtlinie auf UnauthenticatedPrincipal. Wenn Sie die Prinzipalrichtlinie nicht auf WindowsPrincipal festlegen, schlägt eine Anforderung für die Prinzipalberechtigung fehl. Der folgende Code sollte ausgeführt werden, bevor die Prinzipalberechtigung angefordert wird: AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal).

Konstruktoren

Name Beschreibung
PrincipalPermissionAttribute(SecurityAction)
Veraltet.

Initialisiert eine neue Instanz der PrincipalPermissionAttribute Klasse mit dem angegebenen SecurityAction.

Eigenschaften

Name Beschreibung
Action
Veraltet.

Ruft eine Sicherheitsaktion ab oder legt diese fest.

(Geerbt von SecurityAttribute)
Authenticated
Veraltet.

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob der aktuelle Prinzipal vom zugrunde liegenden rollenbasierten Sicherheitsanbieter authentifiziert wurde.

Name
Veraltet.

Dient zum Abrufen oder Festlegen des Namens der Identität, die dem aktuellen Prinzipal zugeordnet ist.

Role
Veraltet.

Ruft die Mitgliedschaft in einer angegebenen Sicherheitsrolle ab oder legt sie fest.

TypeId
Veraltet.

Wenn sie in einer abgeleiteten Klasse implementiert wird, wird ein eindeutiger Bezeichner für diese Attribute.

(Geerbt von Attribute)
Unrestricted
Veraltet.

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob die vollständige (uneingeschränkte) Berechtigung für die ressource, die durch das Attribut geschützt ist, deklariert wird.

(Geerbt von SecurityAttribute)

Methoden

Name Beschreibung
CreatePermission()
Veraltet.

Erstellt und gibt eine neue PrincipalPermissionzurück.

Equals(Object)
Veraltet.

Gibt einen Wert zurück, der angibt, ob diese Instanz einem angegebenen Objekt entspricht.

(Geerbt von Attribute)
GetHashCode()
Veraltet.

Gibt den Hashcode für diesen instance zurück.

(Geerbt von Attribute)
GetType()
Veraltet.

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
IsDefaultAttribute()
Veraltet.

Wenn sie in einer abgeleiteten Klasse überschrieben wird, gibt an, ob der Wert dieser Instanz der Standardwert für die abgeleitete Klasse ist.

(Geerbt von Attribute)
Match(Object)
Veraltet.

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem angegebenen Objekt entspricht.

(Geerbt von Attribute)
MemberwiseClone()
Veraltet.

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()
Veraltet.

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

Name Beschreibung
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)
Veraltet.

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.

(Geerbt von Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)
Veraltet.

Ruft die Typinformationen für ein Objekt ab, mit denen die Typinformationen für eine Schnittstelle abgerufen werden können.

(Geerbt von Attribute)
_Attribute.GetTypeInfoCount(UInt32)
Veraltet.

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).

(Geerbt von Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)
Veraltet.

Bietet Zugriff auf Eigenschaften und Methoden, die von einem Objekt verfügbar gemacht werden.

(Geerbt von Attribute)

Gilt für:

Weitere Informationen