Share via


StrongNameIdentityPermission Kelas

Definisi

Perhatian

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

Menentukan izin identitas untuk nama yang kuat. Kelas ini tidak dapat diwariskan.

public ref class StrongNameIdentityPermission sealed : System::Security::CodeAccessPermission
[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 StrongNameIdentityPermission : System.Security.CodeAccessPermission
[System.Serializable]
public sealed class StrongNameIdentityPermission : System.Security.CodeAccessPermission
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class StrongNameIdentityPermission : System.Security.CodeAccessPermission
public sealed class StrongNameIdentityPermission : System.Security.CodeAccessPermission
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type StrongNameIdentityPermission = class
    inherit CodeAccessPermission
[<System.Serializable>]
type StrongNameIdentityPermission = class
    inherit CodeAccessPermission
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type StrongNameIdentityPermission = class
    inherit CodeAccessPermission
type StrongNameIdentityPermission = class
    inherit CodeAccessPermission
Public NotInheritable Class StrongNameIdentityPermission
Inherits CodeAccessPermission
Warisan
StrongNameIdentityPermission
Atribut

Keterangan

Perhatian

Keamanan Akses Kode (CAS) 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.

Penting

Dimulai dengan .NET Framework 4, izin identitas tidak digunakan.

Dalam .NET Framework versi 1.0 dan 1.1, izin identitas tidak dapat memiliki Unrestricted nilai status izin. Dalam .NET Framework versi 2.0 dan yang lebih baru, izin identitas dapat memiliki nilai status izin apa pun. Ini berarti bahwa dalam versi 2.0 dan yang lebih baru, izin identitas memiliki perilaku yang sama dengan izin yang mengimplementasikan IUnrestrictedPermission antarmuka. Artinya, permintaan identitas selalu berhasil, terlepas dari identitas assembly, jika assembly telah diberikan kepercayaan penuh.

Gunakan StrongNameIdentityPermission untuk mengonfirmasi bahwa kode panggilan berada dalam rakitan kode bernama kuat tertentu. Tuntutan penuh untuk StrongNameIdentityPermission berhasil hanya jika semua rakitan dalam tumpukan memiliki bukti yang benar untuk memenuhi permintaan. Tuntutan tautan yang menggunakan StrongNameIdentityPermissionAttribute atribut hanya berhasil jika pemanggil langsung memiliki bukti yang benar.

Identitas nama yang kuat didasarkan pada kunci publik kriptografi yang disebut objek besar biner (BLOB), yang secara opsional dikombinasikan dengan nama dan versi rakitan tertentu. Kunci mendefinisikan namespace unik dan memberikan verifikasi yang kuat bahwa namanya asli, karena definisi nama harus berada dalam perakitan yang ditandatangani oleh kunci privat yang sesuai.

Perhatikan bahwa validitas kunci nama yang kuat tidak bergantung pada hubungan kepercayaan atau pada sertifikat apa pun yang selalu dikeluarkan untuk kunci.

Dalam .NET Framework versi 1.0 dan 1.1, tuntutan pada izin identitas berlaku bahkan ketika rakitan panggilan sepenuhnya dipercaya. Artinya, bahkan jika rakitan panggilan memiliki kepercayaan penuh, permintaan untuk izin identitas gagal jika perakitan tidak memenuhi kriteria yang diminta. Dalam .NET Framework versi 2.0 dan yang lebih baru, tuntutan untuk izin identitas tidak efektif jika rakitan panggilan memiliki kepercayaan penuh. Ini memastikan konsistensi untuk semua izin dan menghilangkan perlakuan izin identitas sebagai kasus khusus.

Untuk deskripsi lengkap nama yang kuat, lihat StrongName halaman referensi. Untuk informasi selengkapnya tentang rakitan bernama kuat, lihat rakitan bernama kuat.

Kelas StrongNameIdentityPermission ini digunakan untuk menentukan persyaratan nama yang kuat untuk mengakses anggota publik jenis. Atribut StrongNameIdentityPermissionAttribute dapat digunakan untuk menentukan persyaratan nama yang kuat di tingkat perakitan. Dalam .NET Framework versi 2.0 dan yang lebih baru, Anda juga dapat menggunakan InternalsVisibleToAttribute atribut untuk menentukan bahwa semua jenis nonpublik dalam rakitan tersebut terlihat oleh rakitan lain. Untuk informasi selengkapnya, lihat Rakitan Teman.

Konstruktor

StrongNameIdentityPermission(PermissionState)
Kedaluwarsa.

Menginisialisasi instans StrongNameIdentityPermission baru kelas dengan yang ditentukan PermissionState.

StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version)
Kedaluwarsa.

Menginisialisasi instans StrongNameIdentityPermission baru kelas untuk identitas nama kuat yang ditentukan.

Properti

Name
Kedaluwarsa.

Mendapatkan atau mengatur bagian nama sederhana dari identitas nama yang kuat.

PublicKey
Kedaluwarsa.

Mendapatkan atau mengatur blob kunci publik yang menentukan namespace identitas nama yang kuat.

Version
Kedaluwarsa.

Mendapatkan atau mengatur nomor versi identitas.

Metode

Assert()
Kedaluwarsa.

Menyatakan bahwa kode panggilan dapat mengakses sumber daya yang dilindungi oleh permintaan izin melalui kode yang memanggil metode ini, bahkan jika penelepon yang lebih tinggi di tumpukan belum diberikan izin untuk mengakses sumber daya. Menggunakan Assert() dapat membuat masalah keamanan.

(Diperoleh dari CodeAccessPermission)
Copy()
Kedaluwarsa.

Membuat dan mengembalikan salinan identik dari izin saat ini.

Demand()
Kedaluwarsa.

SecurityException Memaksa pada durasi jika semua penelepon yang lebih tinggi dalam tumpukan panggilan belum diberikan izin yang ditentukan oleh instans saat ini.

(Diperoleh dari CodeAccessPermission)
Deny()
Kedaluwarsa.
Kedaluwarsa.

Mencegah penelepon yang lebih tinggi dalam tumpukan panggilan menggunakan kode yang memanggil metode ini untuk mengakses sumber daya yang ditentukan oleh instans saat ini.

(Diperoleh dari CodeAccessPermission)
Equals(Object)
Kedaluwarsa.

Menentukan apakah objek yang ditentukan CodeAccessPermission sama dengan objek saat ini CodeAccessPermission.

(Diperoleh dari CodeAccessPermission)
FromXml(SecurityElement)
Kedaluwarsa.

Mengonstruksi ulang izin dengan status tertentu dari pengodean XML.

GetHashCode()
Kedaluwarsa.

Mendapatkan kode hash untuk CodeAccessPermission objek yang cocok untuk digunakan dalam algoritma hashing dan struktur data seperti tabel hash.

(Diperoleh dari CodeAccessPermission)
GetType()
Kedaluwarsa.

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
Intersect(IPermission)
Kedaluwarsa.

Membuat dan mengembalikan izin yang merupakan persimpangan izin saat ini dan izin yang ditentukan.

IsSubsetOf(IPermission)
Kedaluwarsa.

Menentukan apakah izin saat ini adalah subset dari izin yang ditentukan.

MemberwiseClone()
Kedaluwarsa.

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
PermitOnly()
Kedaluwarsa.

Mencegah penelepon yang lebih tinggi dalam tumpukan panggilan menggunakan kode yang memanggil metode ini untuk mengakses semua sumber daya kecuali untuk sumber daya yang ditentukan oleh instans saat ini.

(Diperoleh dari CodeAccessPermission)
ToString()
Kedaluwarsa.

Membuat dan mengembalikan representasi string dari objek izin saat ini.

(Diperoleh dari CodeAccessPermission)
ToXml()
Kedaluwarsa.

Membuat pengodean XML dari izin dan statusnya saat ini.

Union(IPermission)
Kedaluwarsa.

Membuat izin yang merupakan gabungan izin saat ini dan izin yang ditentukan.

Berlaku untuk

Lihat juga