AssemblySignatureKeyAttribute Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Ger migrering från en äldre, enklare stark namnnyckel till en större nyckel med en starkare hashalgoritm.
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
- Arv
- Attribut
Kommentarer
Den nya större nyckeln är signaturnyckeln. I versioner före .NET Framework 4.5 var signaturnyckeln identisk med identitetsnyckeln. Från och med .NET Framework 4.5 tillåter attributet AssemblySignatureKeyAttribute att sammansättningsmetadata fortsätter att ha den gamla offentliga nyckeltoken och det binära stora objektet (BLOB) så att befintliga sammansättningsreferenser fortsätter att fungera. Det säkerställer också att mappningen kommer från en ägare av identitetsnyckeln.
Förekomsten av attributet innebär inte nödvändigtvis att verifiering av starka namn sker. I vanliga scenarier med fullständigt förtroende beaktas aldrig attributet eftersom starka namnsignaturer aldrig verifieras. Men när den starka namnsignaturen måste verifieras måste både den starka namnsignaturen och motsignaturen verifieras. Sammansättningens identitetsnyckel behöver inte vara identisk med signaturnyckeln (nyckeln som används för att utföra den faktiska signeringen och valideringen). Identitetsnyckeln kan mappas till en annan (mer robust) signeringsnyckel. På så sätt kan du ange identiteten för en sammansättning och uppdatera signeringsnycklarna och algoritmerna till säkrare versioner.
Motsignaturen åtgärdar säkerhetsproblem när en skadlig sammansättning gör anspråk på någon annan identitet. Till exempel kan en skadlig System.Core.dll sammansättning innehålla den Microsoft offentliga nyckeln i dess metadata och använda attributet för att ange stark namnverifiering för att använda angriparens signaturnyckel om det inte finns någon motsignering. Därför kan den maskeras som en stark namnvaliderad Microsoft sammansättning.
Information om hur du signerar sammansättningar för användning med det här nya attributet finns i Förbättrad stark namngivning.
Konstruktorer
| Name | Description |
|---|---|
| AssemblySignatureKeyAttribute(String, String) |
Skapar en ny instans av AssemblySignatureKeyAttribute klassen med den angivna offentliga nyckeln och motsignering. |
Egenskaper
| Name | Description |
|---|---|
| Countersignature |
Hämtar motsignaturen för det starka namnet för den här sammansättningen. |
| PublicKey |
Hämtar den offentliga nyckeln för det starka namn som används för att signera sammansättningen. |
| TypeId |
När den implementeras i en härledd klass hämtar du en unik identifierare för den här Attribute. (Ärvd från Attribute) |
Metoder
| Name | Description |
|---|---|
| Equals(Object) |
Returnerar ett värde som anger om den här instansen är lika med ett angivet objekt. (Ärvd från Attribute) |
| GetHashCode() |
Returnerar hash-koden för den här instansen. (Ärvd från Attribute) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| IsDefaultAttribute() |
När den åsidosättas i en härledd klass anger du om värdet för den här instansen är standardvärdet för den härledda klassen. (Ärvd från Attribute) |
| Match(Object) |
När den åsidosätts i en härledd klass returneras ett värde som anger om den här instansen är lika med ett angivet objekt. (Ärvd från Attribute) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |
Explicita gränssnittsimplementeringar
| Name | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mappar en uppsättning namn till en motsvarande uppsättning av sändningsidentifierare. (Ärvd från Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Hämtar typinformationen för ett objekt, som kan användas för att hämta typinformationen för ett gränssnitt. (Ärvd från Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Hämtar antalet typinformationsgränssnitt som ett objekt tillhandahåller (antingen 0 eller 1). (Ärvd från Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Ger åtkomst till egenskaper och metoder som exponeras av ett objekt. (Ärvd från Attribute) |