Sdílet prostřednictvím


Název pro podepisování silného názvu u spravovaných aplikací

Podepisování silného názvu nebo vytváření silných názvů poskytuje softwarové komponentě globálně jedinečnou identitu, která nemůže být zfalšována jiným uživatelem.Silné názvy se používají k zajištění, že závislosti komponenty a příkazy konfigurace mapují přesně správnou komponentu a verzi komponenty.

Silný název se skládá z identity sestavení (jednoduchý textový název, číslo verze a informace o jazykové verzi) plus token veřejného klíče a digitální signatura.

Pro projekty jazyka Visual C# a Visual Basic sada Visual Studio umožňuje silné pojmenování prostřednictvím podokna Podepisování v Návrháři projektu; viz Podepisování stránky projektu Designer.

Pro projekty jazyka Visual C++ použijete možnosti propojovacího programu k podepsání svého sestavení; viz Silný název sestavení (podpis sestavení) (C + +/ CLI).

Důvody pro použití silného pojmenování

Silné pojmenování poskytuje aplikaci nebo komponentě jedinečnou identitu, na kterou jiný software může explicitně odkazovat.Například silné pojmenování umožňuje autorům aplikace a správcům určit přesné obsluhy verze, která má být použita pro sdílenou komponentu.To umožňuje různým aplikacím určit různé verze bez ovlivnění jiných aplikací.Kromě toho můžete silný název komponenty použít jako legitimace zabezpečení k vytvoření vztahu důvěryhodnosti mezi dvěma komponentami.

h4fa028b.collapse_all(cs-cz,VS.110).gifCo může být silně pojmenované

Můžete silně pojmenovat sestavení rozhraní .NET Framework a manifesty jazyka XML.Například:

  • Sestavení aplikace (.exe)

  • Manifesty aplikace (.exe.manifest)

  • Manifesty nasazení (.aplikace)

  • Sestavení sdílených komponent (.dll)

h4fa028b.collapse_all(cs-cz,VS.110).gifCo má být silně pojmenované

Sdílené knihovny DLL by měly být silně pojmenovány.Bez ohledu na to, zda bude knihovna DLL zavedena do globální mezipaměti sestavení (GAC), silný název se doporučuje, když knihovna DLL není soukromý implementační detail aplikace, ale je obecná služba, kterou lze použít jako více než jednu aplikaci.

h4fa028b.collapse_all(cs-cz,VS.110).gifCo musí být silně pojmenované

Je nutné silně pojmenovat následující:

  • Knihovny DLL, pokud je chcete nasadit do globální mezipaměti sestavení (GAC).

  • ClickOnce aplikace a manifesty nasazeníVe výchozím nastavení systém projektů sady Visual Studio povoluje toto pro ClickOnce-nasazené aplikace.

  • Primární definiční sestavení, které jsou používány pro vzájemnou funkční spolupráci modelu COM.Nástroj TLBIMP vynucuje silné pojmenování při vytváření primárního definičního sestavení z knihovny modelu COM.

h4fa028b.collapse_all(cs-cz,VS.110).gifCo nemá být silně pojmenované

Obecně platí, že byste neměli silně pojmenovávat sestavení EXE aplikace.Silně pojmenovaná aplikace nebo komponenta nemůže odkazovat na komponentu se slabým názvem.Proto silné pojmenování EXE zabrání EXE odkazování na knihovny DLL se slabým názvem, které jsou nasazeny s aplikací.

Z tohoto důvodu nevytváří systém projektu sady Visual Studio silné názvy EXE aplikací.Místo toho silně pojmenuje manifest aplikace, který interně odkazuje na EXE aplikace se slabým názvem.

Kromě toho se můžete vyhnout silného pojmenování komponent, které jsou soukromé pro vaši aplikaci.V tomto případě může silné pojmenování ztížit spravování závislostí a přidat zbytečnou režii soukromým komponentám.

Jak přiřadit silný název

V sadě Visual Studio silně pojmenujete aplikaci nebo komponentu pomocí podokna PodepisováníNávrháře projektu.Podepsání podokně podporuje dvě metody silných názvů: pomocí silného názvu souboru klíče nebo pomocí zprostředkovatele klíče.Informace o podepisování manifestů naleznete v tématu Jak: přihlášení aplikace a nasazení manifesty; informace o vytváření souborů s klíčem se silným názvem (.snk) naleznete v tématu Jak: vytvoření dvojice veřejného a soukromého klíče.

Při použití metody souboru s klíčem můžete použít existující soubor s klíčem nebo vytvořit nový.Vždy byste měli chránit váš soubor s klíčem heslem k zabránění někomu jeho použití.

Poskytovatelé klíče nebo úložiště certifikátu poskytuje jiné prostředky pro zajištění vašich klíčů se silným názvem.Někteří poskytovatelé klíč použít karta technologie SMART karta jako prostředek k ověřování identita a brání kód Product klíč je odcizen.

Aktualizace komponent se silným názvem

Komponenta se silným názvem nemůže být obsluhována nebo inovována překopírováním nové verze přes starou.

Můžete aktualizovat knihovnu DLL se slabým názvem v adresáři aplikace jen zkopírováním nové verze do adresáře aplikace.Modul CLR (Common Language Runtime) načte jakoukoli verzi, která je fyzicky přítomna.

Pro knihovny DLL se silným názvem musíte buď překompilovat celou aplikaci tak, aby všechny odkazy na sestavení poukazovaly na novou verzi, nebo je nutné aktualizovat soubor .config aplikace k vydání pokynu, aby za běhu načetla novou verzi místo staré.

Ačkoli komponenty se silným názvem vyžadují trochu více údržby, výhoda spočívá v tom, že aplikace mohou být velmi explicitní v tom, které verze jiných komponent vyžadují za běhu.

Viz také

Úkoly

Jak: přihlášení aplikace a nasazení manifesty

Jak: podepsat sestavení (Visual Studio)

Referenční dokumentace

Podepisování stránky projektu Designer

Koncepty

Zabezpečení aplikací ClickOnce

Sestavení se silným názvem

Silný název sestavení (podpis sestavení) (C + +/ CLI)

Další zdroje

Správa sestavení a podepsání manifestu