Bahasa

AssemblySignatureKeyAttribute Kelas

Definisi

Menyediakan migrasi dari kunci nama yang lebih lama dan lebih sederhana ke kunci yang lebih besar dengan algoritma hashing 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, atribut AssemblySignatureKeyAttribute memungkinkan metadata rakitan 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 perakitan 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 perakitan, dan memperbarui kunci dan algoritma penandatanganan ke versi yang lebih aman.

Countersignature membahas masalah keamanan ketika rakitan berbahaya mengklaim beberapa identitas lain. Misalnya, rakitan System.Core.dll berbahaya dapat berisi kunci umum 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, itu dapat menyaring sebagai rakitan Microsoft yang divalidasi nama yang kuat.

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

Konstruktor

Nama Deskripsi
AssemblySignatureKeyAttribute(String, String)

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

Properti

Nama Deskripsi
Countersignature

Mendapatkan countersignature untuk nama yang kuat untuk rakitan ini.

PublicKey

Mendapatkan kunci publik untuk nama kuat yang digunakan untuk menandatangani rakitan.

TypeId

Ketika diimplementasikan dalam kelas turunan, mendapatkan pengidentifikasi unik untuk Attributeini.

(Diperoleh dari Attribute)

Metode

Nama Deskripsi
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 Type instans saat ini.

(Diperoleh dari Object)
IsDefaultAttribute()

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

(Diperoleh dari Attribute)
Match(Object)

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

(Diperoleh dari Attribute)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Implementasi Antarmuka Eksplisit

Nama Deskripsi
_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