PrincipalPermissionAttribute Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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) |