Aracılığıyla paylaş


FileIOPermissionAttribute Sınıf

Tanım

Dikkat

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

Için güvenlik eylemlerinin FileIOPermission 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 FileIOPermission verilecek tek izni gösteren sınıfını kullanarak FileIOPermissionAttribute isteğin nasıl yapılacağını 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 kısıtlanmamış olmasını nasıl talep etmek istediğiniz gösterilmektedir FileIOPermission. 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ıyorsa 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şlemi birden çok kez gerçekleşebilir.

İzin verilen bildirimin kapsamı kullanılana 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

UnrestrictedFileIOPermission , 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şmek için Deny dosyanın tüm olası yollarını kullanmanız gerekir Deny . Örneğin, \\sunucu\paylaşım X ağ sürücüsüne eşlenmişse, \\sunucu\paylaşım\dosyasına erişmek için Deny \\sunucu\paylaşım\dosyası, X:\dosya ve dosyaya erişmek için kullanabileceğiniz diğer tüm yollar gerekir Deny .

Oluşturucular

FileIOPermissionAttribute(SecurityAction)
Geçersiz.

belirtilen SecurityActionile sınıfının yeni bir örneğini FileIOPermissionAttribute 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 vermek istediğiniz 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 (sınırsız) 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ülendiğ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 FileIOPermissionbir oluş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ğeri döndürür.

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

Bu örneğe ilişkin karma kodu döndürür.

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

Type Geçerli örneğini 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 Objectöğesinin sığ bir kopyasını oluşturur.

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

Geçerli nesneyi temsil eden dizeyi 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 karşılık gelen bir dağıtma tanımlayıcısı kümesine 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 ya da 1).

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

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

(Devralındığı yer: Attribute)

Şunlara uygulanır

Ayrıca bkz.