AssemblySignatureKeyAttribute Kelas

Definisi

Menyediakan migrasi dari kunci nama kuat yang lebih lama dan lebih sederhana ke kunci yang lebih besar dengan algoritma hash yang lebih kuat.

public ref class AssemblySignatureKeyAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false, Inherited=false)]
public sealed class AssemblySignatureKeyAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false, Inherited=false)>]
type AssemblySignatureKeyAttribute = class
    inherit Attribute
Public NotInheritable Class AssemblySignatureKeyAttribute
Inherits Attribute
Warisan
AssemblySignatureKeyAttribute
Atribut

Keterangan

Kunci baru yang lebih besar adalah kunci tanda tangan. Dalam versi sebelum .NET Framework 4.5, kunci tanda tangan identik dengan kunci identitas. Dimulai dengan .NET Framework 4.5, AssemblySignatureKeyAttribute atribut memungkinkan metadata perakitan untuk terus memiliki token kunci publik lama dan objek besar biner (BLOB) sehingga referensi perakitan yang ada terus berfungsi. Ini juga memastikan bahwa pemetaan berasal dari pemilik kunci identitas.

Kehadiran atribut tidak selalu berarti bahwa validasi nama yang kuat terjadi. Dalam skenario kepercayaan penuh umum, atribut tidak pernah dipertimbangkan, karena tanda tangan nama yang kuat tidak pernah divalidasi. Namun, ketika tanda tangan nama yang kuat memang harus divalidasi, tanda tangan nama yang kuat dan countersignature harus divalidasi. Kunci identitas assembly tidak harus identik dengan kunci tanda tangan (kunci yang digunakan untuk melakukan penandatanganan dan validasi aktual). Kunci identitas dapat dipetakan ke kunci penandatanganan yang berbeda (lebih kuat). Ini memungkinkan Anda mengatur identitas assembly, dan memperbarui kunci penandatanganan dan algoritma ke versi yang lebih aman.

Pencitraan balik membahas masalah keamanan ketika perakitan berbahaya mengklaim beberapa identitas lain. Misalnya, rakitan System.Core.dll berbahaya dapat berisi kunci publik Microsoft dalam metadatanya, dan menggunakan atribut untuk memberi tahu validasi nama yang kuat untuk menggunakan kunci tanda tangan penyerang jika tidak ada penandatanganan balik. Dengan demikian, ini dapat menyaring sebagai perakitan Microsoft yang divalidasi nama yang kuat.

Untuk informasi tentang cara menandatangani rakitan untuk digunakan dengan atribut baru ini, lihat Penamaan Kuat yang Ditingkatkan.

Konstruktor

AssemblySignatureKeyAttribute(String, String)

Membuat instans AssemblySignatureKeyAttribute baru kelas dengan menggunakan kunci publik dan countersignature yang ditentukan.

Properti

Countersignature

Mendapatkan pencitraan balik untuk nama yang kuat untuk perakitan ini.

PublicKey

Mendapatkan kunci umum untuk nama kuat yang digunakan untuk menandatangani perakitan.

TypeId

Ketika diimplementasikan di kelas turunan, mendapatkan pengidentifikasi unik untuk ini Attribute.

(Diperoleh dari Attribute)

Metode

Equals(Object)

Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
GetHashCode()

Mengembalikan kode hash untuk instans ini.

(Diperoleh dari Attribute)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
IsDefaultAttribute()

Ketika ditimpa di kelas turunan, menunjukkan apakah nilai instans ini adalah nilai default untuk kelas turunan.

(Diperoleh dari Attribute)
Match(Object)

Saat ditimpa di kelas turunan, mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Implementasi Antarmuka Eksplisit

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Mengambil informasi jenis untuk objek, yang dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfoCount(UInt32)

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)

Menyediakan akses ke properti dan metode yang diekspos oleh objek.

(Diperoleh dari Attribute)

Berlaku untuk