Share via


FileIOPermissionAttribute Klasse

Definition

Achtung

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

Ermöglicht, dass Sicherheitsaktionen für FileIOPermission unter Verwendung deklarativer Sicherheit auf Code angewendet werden. Diese Klasse kann nicht vererbt werden.

public ref class FileIOPermissionAttribute sealed : System::Security::Permissions::CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
public sealed class FileIOPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, 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 FileIOPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
public sealed class FileIOPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class FileIOPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
type FileIOPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, 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 FileIOPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
type FileIOPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type FileIOPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
Public NotInheritable Class FileIOPermissionAttribute
Inherits CodeAccessSecurityAttribute
Vererbung
Attribute

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie mithilfe der FileIOPermissionAttribute -Klasse angefordert FileIOPermission wird, wobei die einzige Berechtigung angegeben wird, die dem Code gewährt werden soll.

[FileIOPermissionAttribute(SecurityAction::PermitOnly,ViewAndModify="C:\\example\\sample.txt")]
[FileIOPermissionAttribute(SecurityAction.PermitOnly, ViewAndModify = "C:\\example\\sample.txt")]
<FileIOPermissionAttribute(SecurityAction.PermitOnly, _
ViewAndModify:="C:\example\sample.txt")> Public Class SampleClass

Das folgende Beispiel zeigt, wie Sie verlangen, dass der aufrufende Code uneingeschränkt FileIOPermissionaufweist. In der Regel stellen Sie Anforderungen in verwalteten Bibliotheken (DLLs), um Methoden oder Klassen vor potenziell schädlichem Code zu schützen.

[FileIOPermissionAttribute(SecurityAction::Demand,Unrestricted=true)]
[FileIOPermissionAttribute(SecurityAction.Demand, Unrestricted=true)]
<FileIOPermissionAttribute(SecurityAction.Demand, _
 Unrestricted := True)> Public Class SampleClass

Hinweise

Achtung

Die Codezugriffssicherheit (CAS, Code Access Security) 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.

Dateien und Verzeichnisse werden mithilfe absoluter Pfade angegeben. Beim Zugriff auf Dateien wird eine Sicherheitsüberprüfung durchgeführt, wenn die Datei erstellt oder geöffnet wird. Die Sicherheitsüberprüfung wird nicht erneut durchgeführt, es sei denn, die Datei wird geschlossen und erneut geöffnet. Das Überprüfen von Berechtigungen beim ersten Zugriff auf die Datei minimiert die Auswirkungen der Sicherheitsüberprüfung auf die Anwendungsleistung, da das Öffnen einer Datei nur einmal erfolgt, während Lese- und Schreibvorgänge mehrere Male erfolgen können.

Der zulässige Bereich der Deklaration hängt vom SecurityAction verwendeten ab.

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

Achtung

UnrestrictedFileIOPermission gewährt berechtigungen für alle Pfade innerhalb eines Dateisystems, einschließlich mehrerer Pfadnamen, die für den Zugriff auf eine einzelne datei verwendet werden können. Um Deny auf eine Datei zugreifen zu können, müssen Deny Sie alle möglichen Pfade zur Datei ausführen. Wenn beispielsweise \\server\share dem Netzlaufwerk X zugeordnet ist, müssen Deny Sie für Deny den Zugriff auf \\server\share\file \\server\share\file, X:\file und jeden anderen Pfad, den Sie für den Zugriff auf die Datei verwenden können, verwenden.

Konstruktoren

FileIOPermissionAttribute(SecurityAction)
Veraltet.

Initialisiert eine neue Instanz der FileIOPermissionAttribute-Klasse mit der angegebenen SecurityAction.

Eigenschaften

Action
Veraltet.

Ruft eine Sicherheitsaktion ab oder legt diese fest.

(Geerbt von SecurityAttribute)
All
Veraltet.
Veraltet.

Legt den Vollzugriff für die durch den Zeichenfolgenwert angegebene Datei oder das durch diesen Wert angegebene Verzeichnis fest oder ruft diesen ab.

AllFiles
Veraltet.

Dient zum Abrufen oder Festlegen des Zugriffs auf alle Dateien.

AllLocalFiles
Veraltet.

Dient zum Abrufen oder Festlegen des gewährten Zugriffs auf alle lokalen Dateien.

Append
Veraltet.

Legt Append-Zugriff für die durch den Zeichenfolgenwert angegebene Datei oder das durch diesen Wert angegebene Verzeichnis fest oder ruft diesen ab.

ChangeAccessControl
Veraltet.

Ruft die Datei oder das Verzeichnis ab, in der bzw. in dem die Zugriffssteuerungsinformationen geändert werden können, oder legt diese bzw. dieses fest.

PathDiscovery
Veraltet.

Ruft die Datei oder das Verzeichnis ab, für die bzw. das die Berechtigung zum Suchen von Pfaden gewährt werden soll, oder legt die Datei bzw. das Verzeichnis fest.

Read
Veraltet.

Legt Lesezugriff für die durch den Zeichenfolgenwert angegebene Datei oder das durch diesen Wert angegebene Verzeichnis fest.

TypeId
Veraltet.

Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab.

(Geerbt von Attribute)
Unrestricted
Veraltet.

Ruft einen Wert ab, der angibt, ob eine vollständige (uneingeschränkte) Berechtigung für die durch das Attribut geschützte Ressource deklariert ist, oder legt diesen fest.

(Geerbt von SecurityAttribute)
ViewAccessControl
Veraltet.

Ruft die Datei oder das Verzeichnis ab, in der bzw. in dem die Zugriffssteuerungsinformationen angezeigt werden können, oder legt diese bzw. dieses fest.

ViewAndModify
Veraltet.

Ruft die Datei oder das Verzeichnis ab, in der bzw. in dem Dateidaten angezeigt und geändert werden können, oder legt diese bzw. dieses fest.

Write
Veraltet.

Legt Schreibzugriff für die durch den Zeichenfolgenwert angegebene Datei oder das durch diesen Wert angegebene Verzeichnis fest.

Methoden

CreatePermission()
Veraltet.

Erstellt eine neue FileIOPermission und gibt diese zurück.

Equals(Object)
Veraltet.

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

(Geerbt von Attribute)
GetHashCode()
Veraltet.

Gibt den Hashcode für diese Instanz zurück.

(Geerbt von Attribute)
GetType()
Veraltet.

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
IsDefaultAttribute()
Veraltet.

Gibt beim Überschreiben in einer abgeleiteten Klasse an, ob der Wert der Instanz der Standardwert für die abgeleitete Klasse ist.

(Geerbt von Attribute)
Match(Object)
Veraltet.

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht.

(Geerbt von Attribute)
MemberwiseClone()
Veraltet.

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()
Veraltet.

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

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

_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 deren Hilfe 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.

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.

(Geerbt von Attribute)

Gilt für:

Weitere Informationen