Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Silné pojmenování sestavení vytvoří jedinečnou identitu sestavení a může zabránit konfliktům sestavení.
Co vytváří silně pojmenované sestavení?
Silné pojmenované sestavení je vytvořeno pomocí privátního klíče, který odpovídá veřejnému klíči, jež je distribuován spolu se sestavením, a samotného sestavení. Sestavení obsahuje manifest sestavení, který obsahuje názvy a hodnoty hash všech souborů, které tvoří sestavení. Sestavení, která mají stejný silný název, by měla být identická.
Pomocí sady Visual Studio nebo nástroje příkazového řádku můžete silně pojmenovat sestavení. Další informace naleznete v tématu Postupy: Podepsání sestavení silným názvem nebo Sn.exe (nástroj Strong Name).
Při vytvoření sestavení se silným názvem obsahuje sestavení jednoduchý textový název, číslo verze, volitelné informace o jazykové verzi, digitální podpis a veřejný klíč, který odpovídá privátnímu klíči použitému při podepisování.
Výstraha
Nespoléhejte na strong names pro zabezpečení. Poskytují pouze jedinečnou identitu.
Proč podepisovat sestavení silným názvem?
Pro rozhraní .NET Framework jsou sestavení se silným názvem užitečná v následujících scénářích:
Chcete povolit vašemu sestavení, aby bylo odkazováno pomocí sestavení se silným názvem, nebo chcete poskytnout
friendpřístup k vašim sestavením z jiných sestavení se silným názvem.Aplikace potřebuje přístup k různým verzím stejného sestavení. To znamená, že potřebujete různé verze sestavení pro souběžné načtení ve stejné doméně aplikace bez konfliktu. Pokud například existují různá rozšíření rozhraní API v sestaveních se stejným jednoduchým názvem, poskytuje silné pojmenování jedinečnou identitu pro každou verzi sestavení.
Nechcete mít negativní vliv na výkon aplikací používajících sestavení, takže chcete, aby sestavení bylo neutrální v doméně. Vyžaduje to silné pojmenování, protože neutrální sestavení domény musí být nainstalováno v globální mezipaměti sestavení.
Chcete centralizovat služby pro vaši aplikaci použitím politiky vydavatele, což znamená, že sestavení musí být nainstalováno v globální cache sestavení.
V případě .NET Core a .NET 5 nebo novějších sestavení se silným názvem neposkytují žádné materiální přínosy. Modul runtime nikdy neověřuje podpis silného názvu ani nepoužívá silný název pro vazbu sestavení.
Pokud jste opensourcový vývojář a chcete mít výhody identit sestavení se silným názvem pro lepší kompatibilitu s rozhraním .NET Framework, zvažte zaznamenání privátního klíče, který je přidružený k sestavení, do systému správy zdrojového kódu.