FileIOPermissionAttribute Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Perhatian
Code Access Security is not supported or honored by the runtime.
Memungkinkan tindakan keamanan untuk FileIOPermission diterapkan ke kode menggunakan keamanan deklaratif. Kelas ini tidak dapat diwariskan.
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
- Warisan
- Atribut
Contoh
Contoh kode berikut menunjukkan cara meminta FileIOPermission dengan menggunakan kelas FileIOPermissionAttribute, menunjukkan satu-satunya izin yang akan diberikan ke kode.
[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
Contoh berikut menunjukkan cara menuntut kode panggilan tidak dibatasi FileIOPermission. Anda biasanya membuat permintaan di pustaka terkelola (DLL) untuk membantu melindungi metode atau kelas dari kode yang berpotensi berbahaya.
[FileIOPermissionAttribute(SecurityAction::Demand,Unrestricted=true)]
[FileIOPermissionAttribute(SecurityAction.Demand, Unrestricted=true)]
<FileIOPermissionAttribute(SecurityAction.Demand, _
Unrestricted := True)> Public Class SampleClass
Keterangan
Hati
Keamanan Akses Kode (CAS) telah tidak digunakan lagi di semua versi .NET Framework dan .NET. Versi terbaru .NET tidak mematuhi anotasi CAS dan menghasilkan kesalahan jika API terkait CAS digunakan. Pengembang harus mencari cara alternatif untuk menyelesaikan tugas keamanan.
File dan direktori ditentukan menggunakan jalur absolut. Saat mengakses file, pemeriksaan keamanan dilakukan saat file dibuat atau dibuka. Pemeriksaan keamanan tidak dilakukan lagi kecuali file ditutup dan dibuka kembali. Memeriksa izin ketika file pertama kali diakses meminimalkan dampak pemeriksaan keamanan pada performa aplikasi karena membuka file hanya terjadi sekali, sementara membaca dan menulis dapat terjadi beberapa kali.
Cakupan deklarasi yang diizinkan tergantung pada SecurityAction yang digunakan.
Informasi keamanan yang dideklarasikan oleh atribut keamanan disimpan dalam metadata target atribut dan diakses oleh sistem pada waktu proses. Atribut keamanan hanya digunakan untuk keamanan deklaratif. Untuk keamanan imperatif, gunakan kelas izin yang sesuai.
Hati
Unrestricted
FileIOPermission memberikan izin untuk semua jalur dalam sistem file, termasuk beberapa nama jalur yang dapat digunakan untuk mengakses satu file tertentu. Untuk Deny akses ke file, Anda harus Deny
semua jalur yang mungkin ke file. Misalnya, jika \\server\share dipetakan ke drive jaringan X, untuk Deny
akses ke \\server\share\file, Anda harus Deny
\\server\share\file, X:\file dan jalur lain yang dapat Anda gunakan untuk mengakses file.
Konstruktor
FileIOPermissionAttribute(SecurityAction) |
Kedaluwarsa.
Menginisialisasi instans baru kelas FileIOPermissionAttribute dengan SecurityActionyang ditentukan . |
Properti
Action |
Kedaluwarsa.
Mendapatkan atau mengatur tindakan keamanan. (Diperoleh dari SecurityAttribute) |
All |
Kedaluwarsa.
Kedaluwarsa.
Mendapatkan atau mengatur akses penuh untuk file atau direktori yang ditentukan oleh nilai string. |
AllFiles |
Kedaluwarsa.
Mendapatkan atau mengatur akses yang diizinkan ke semua file. |
AllLocalFiles |
Kedaluwarsa.
Mendapatkan atau mengatur akses yang diizinkan ke semua file lokal. |
Append |
Kedaluwarsa.
Mendapatkan atau mengatur akses tambahan untuk file atau direktori yang ditentukan oleh nilai string. |
ChangeAccessControl |
Kedaluwarsa.
Mendapatkan atau mengatur file atau direktori tempat informasi kontrol akses dapat diubah. |
PathDiscovery |
Kedaluwarsa.
Mendapatkan atau mengatur file atau direktori untuk memberikan penemuan jalur. |
Read |
Kedaluwarsa.
Mendapatkan atau mengatur akses baca untuk file atau direktori yang ditentukan oleh nilai string. |
TypeId |
Kedaluwarsa.
Ketika diimplementasikan dalam kelas turunan, mendapatkan pengidentifikasi unik untuk Attributeini. (Diperoleh dari Attribute) |
Unrestricted |
Kedaluwarsa.
Mendapatkan atau menetapkan nilai yang menunjukkan apakah izin penuh (tidak terbatas) ke sumber daya yang dilindungi oleh atribut dideklarasikan. (Diperoleh dari SecurityAttribute) |
ViewAccessControl |
Kedaluwarsa.
Mendapatkan atau mengatur file atau direktori tempat informasi kontrol akses dapat dilihat. |
ViewAndModify |
Kedaluwarsa.
Mendapatkan atau mengatur file atau direktori tempat data file dapat dilihat dan dimodifikasi. |
Write |
Kedaluwarsa.
Mendapatkan atau mengatur akses tulis untuk file atau direktori yang ditentukan oleh nilai string. |
Metode
CreatePermission() |
Kedaluwarsa.
Membuat dan mengembalikan FileIOPermissionbaru. |
Equals(Object) |
Kedaluwarsa.
Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu. (Diperoleh dari Attribute) |
GetHashCode() |
Kedaluwarsa.
Mengembalikan kode hash untuk instans ini. (Diperoleh dari Attribute) |
GetType() |
Kedaluwarsa.
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
IsDefaultAttribute() |
Kedaluwarsa.
Ketika ditimpa dalam kelas turunan, menunjukkan apakah nilai instans ini adalah nilai default untuk kelas turunan. (Diperoleh dari Attribute) |
Match(Object) |
Kedaluwarsa.
Saat ditimpa dalam kelas turunan, mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu. (Diperoleh dari Attribute) |
MemberwiseClone() |
Kedaluwarsa.
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
ToString() |
Kedaluwarsa.
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
Implementasi Antarmuka Eksplisit
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Kedaluwarsa.
Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai. (Diperoleh dari Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Kedaluwarsa.
Mengambil informasi jenis untuk objek, yang dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka. (Diperoleh dari Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Kedaluwarsa.
Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1). (Diperoleh dari Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Kedaluwarsa.
Menyediakan akses ke properti dan metode yang diekspos oleh objek. (Diperoleh dari Attribute) |