FileIOPermissionAttribute Sınıf

Tanım

Dikkat

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

FileIOPermission için güvenlik eylemlerinin bildirim temelli güvenlik kullanılarak koda uygulanmasına izin verir. Bu sınıf devralınamaz.

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)]
[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)]
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}")>]
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
[<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
Public NotInheritable Class FileIOPermissionAttribute
Inherits CodeAccessSecurityAttribute
Devralma
Öznitelikler

Örnekler

Aşağıdaki kod örneği, koda verilecek tek izni gösteren FileIOPermissionAttribute sınıfını kullanarak FileIOPermission nasıl istendiğini gösterir.

[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

Aşağıdaki örnekte, çağıran kodun FileIOPermissionkısıtlanmamış olmasını nasıl talep etmek istediğiniz gösterilmektedir. Yöntemlerin veya sınıfların zararlı olabilecek kodlardan korunmasına yardımcı olmak için genellikle yönetilen kitaplıklarda (DLL' ler) talepte bulunursunuz.

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

Açıklamalar

Dikkat

Kod Erişim Güvenliği (CAS), .NET Framework ve .NET'in tüm sürümlerinde kullanım dışı bırakılmıştır. .NET'in son sürümleri CAS ek açıklamalarını dikkate almaz ve CAS ile ilgili API'ler kullanılırsa hata üretir. Geliştiriciler, güvenlik görevlerini yerine getirmek için alternatif yöntemler aramalıdır.

Dosyalar ve dizinler mutlak yollar kullanılarak belirtilir. Dosyalara erişirken, dosya oluşturulduğunda veya açıldığında bir güvenlik denetimi gerçekleştirilir. Dosya kapatılıp yeniden açılmadığı sürece güvenlik denetimi yeniden yapılmaz. Dosyaya ilk kez erişildiğinde izinlerin denetlenilmesi, güvenlik denetiminin uygulama performansı üzerindeki etkisini en aza indirir çünkü bir dosyayı açmak yalnızca bir kez gerçekleşirken okuma ve yazma işlemleri birden çok kez gerçekleşebilir.

İzin verilen bildirimin kapsamı, kullanılan SecurityAction bağlıdır.

Bir güvenlik özniteliği tarafından bildirilen güvenlik bilgileri öznitelik hedefinin meta verilerinde depolanır ve sistem tarafından çalışma zamanında erişilir. Güvenlik öznitelikleri yalnızca bildirim temelli güvenlik için kullanılır. Kesinlik temelli güvenlik için ilgili izin sınıfını kullanın.

Dikkat

Unrestricted FileIOPermission, belirli bir dosyaya erişmek için kullanılabilecek birden çok yol adı da dahil olmak üzere bir dosya sistemi içindeki tüm yollar için izin verir. Bir dosyaya erişimi Deny için dosyanın tüm olası yollarını Deny gerekir. Örneğin, \\sunucu\paylaşım X ağ sürücüsüne eşlenmişse, \\server\share\file dosyasına erişimi Deny için\\sunucu\paylaşım\dosya, X:\dosya ve dosyaya erişmek için kullanabileceğiniz diğer yolları Deny gerekir.

Oluşturucular

FileIOPermissionAttribute(SecurityAction)
Geçersiz.

belirtilen SecurityActionile FileIOPermissionAttribute sınıfının yeni bir örneğini başlatır.

Özellikler

Action
Geçersiz.

Bir güvenlik eylemi alır veya ayarlar.

(Devralındığı yer: SecurityAttribute)
All
Geçersiz.
Geçersiz.

Dize değeri tarafından belirtilen dosya veya dizin için tam erişimi alır veya ayarlar.

AllFiles
Geçersiz.

Tüm dosyalara izin verilen erişimi alır veya ayarlar.

AllLocalFiles
Geçersiz.

Tüm yerel dosyalara izin verilen erişimi alır veya ayarlar.

Append
Geçersiz.

Dize değeri tarafından belirtilen dosya veya dizin için ekleme erişimini alır veya ayarlar.

ChangeAccessControl
Geçersiz.

Erişim denetimi bilgilerinin değiştirilebileceği dosyayı veya dizini alır veya ayarlar.

PathDiscovery
Geçersiz.

Yol bulma izni verilecek dosyayı veya dizini alır veya ayarlar.

Read
Geçersiz.

Dize değeri tarafından belirtilen dosya veya dizin için okuma erişimini alır veya ayarlar.

TypeId
Geçersiz.

Türetilmiş bir sınıfta uygulandığında, bu Attributeiçin benzersiz bir tanımlayıcı alır.

(Devralındığı yer: Attribute)
Unrestricted
Geçersiz.

Özniteliği tarafından korunan kaynağa yönelik tam (kısıtlanmamış) iznin bildirilip bildirilmediğini belirten bir değer alır veya ayarlar.

(Devralındığı yer: SecurityAttribute)
ViewAccessControl
Geçersiz.

Erişim denetimi bilgilerinin görüntülenebileceği dosyayı veya dizini alır veya ayarlar.

ViewAndModify
Geçersiz.

Dosya verilerinin görüntülenip değiştirilebileceği dosyayı veya dizini alır veya ayarlar.

Write
Geçersiz.

Dize değeri tarafından belirtilen dosya veya dizin için yazma erişimini alır veya ayarlar.

Yöntemler

CreatePermission()
Geçersiz.

yeni bir FileIOPermissionoluşturur ve döndürür.

Equals(Object)
Geçersiz.

Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değer döndürür.

(Devralındığı yer: Attribute)
GetHashCode()
Geçersiz.

Bu örneğin karma kodunu döndürür.

(Devralındığı yer: Attribute)
GetType()
Geçersiz.

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
IsDefaultAttribute()
Geçersiz.

Türetilmiş bir sınıfta geçersiz kılındığında, bu örneğin değerinin türetilmiş sınıf için varsayılan değer olup olmadığını gösterir.

(Devralındığı yer: Attribute)
Match(Object)
Geçersiz.

Türetilmiş bir sınıfta geçersiz kılındığında, bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değer döndürür.

(Devralındığı yer: Attribute)
MemberwiseClone()
Geçersiz.

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()
Geçersiz.

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)
Geçersiz.

Bir ad kümesini ilgili dağıtım tanımlayıcıları kümesiyle eşler.

(Devralındığı yer: Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)
Geçersiz.

Bir arabirimin tür bilgilerini almak için kullanılabilecek bir nesnenin tür bilgilerini alır.

(Devralındığı yer: Attribute)
_Attribute.GetTypeInfoCount(UInt32)
Geçersiz.

Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 veya 1).

(Devralındığı yer: Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)
Geçersiz.

Bir nesne tarafından kullanıma sunulan özelliklere ve yöntemlere erişim sağlar.

(Devralındığı yer: Attribute)

Şunlara uygulanır

Ayrıca bkz.