2009-09-01 5 views
0

J'ai un assembly écrit en .net 3.5. J'ai distribué ce fichier à un tas de personnes et jusqu'à présent, aucun problème à moins qu'ils essaient de charger l'assembly (un dll) à partir d'un partage réseau. Ensuite, ils obtiennent des exceptions de sécurité, mais cela est facilement résolu en modifiant la sécurité de la zone de l'intranet local.Signature des assemblages .net: Est-ce nécessaire et que me coûte le coût supplémentaire?

Actuellement, je ne signe pas mon code avec une forme quelconque de certificat.

  1. Dois-je signer mes assemblages?
  2. Qu'est-ce que je reçois pour le $$$ je paie verisign pour signer mon code?
  3. Un assembly signé élimine-t-il l'exception de sécurité rencontrée lors du chargement de l'assembly à partir d'un partage réseau?
+0

Vous avez demandé un million de fois. Apprenez à chercher. http://stackoverflow.com/search?q=signing+assemblies – JonnyD

+2

@JonnyD - si c'est un dupe, alors postez le lien vers le dupe. –

+1

Protégez cette testostérone avant de commencer à travailler et vous ne vous sentirez pas si impatient de sauter sur ce bouton de vote négatif – Hardryv

Répondre

2

Vous pouvez résoudre les problèmes de partage réseau en mettant à jour votre cadre pour le service pack 1. Autre que cela, la signature des ensembles vous achète deux choses principales:

  1. Vous pouvez installer le GAC
  2. Vous peut restreindre un assembly à n'utiliser que l'assembly signé plutôt qu'un assembly avec le même nom et les mêmes types exposés. (Important si, par exemple, vous souhaitez conserver le code de lissage dans son propre assemblage).

En outre, vous n'avez pas besoin de payer verisign ou toute autre personne pour signer un assembly au sein de votre organisation. Vous pouvez le signer n'importe où pour obtenir une clé "temporaire", mais rien ne vous empêche de distribuer cette clé temporaire. C'est juste que les autres machines ne feront pas confiance à cette clé et donc vos utilisateurs devront faire un travail supplémentaire au moment de l'installation pour l'accepter de toute façon, et si vous l'utilisez pour la licence, il n'est pas garanti d'être sécurisé. Au sein d'une même organisation, vous pouvez également configurer un serveur dans votre domaine pour émettre des clés qui seront approuvées dans le domaine. La signature de l'assembly en elle-même n'éliminera pas votre problème de partage réseau. Installation au GAC, mais cela crée des maux de tête de distribution supplémentaires. Ce que vous voulez vraiment faire, c'est passer à .Net3.5sp1.

Questions connexes