Compartilhar via


CA2210: os assemblies devem ter nomes fortes válidos

TypeName

AssembliesShouldHaveValidStrongNames

CheckId

CA2210

Categoria

Microsoft.Design

Alteração Significativa

Sem Quebra

Causa

Um assembly não é assinado com um nome forte, o nome forte não pôde ser verificado, ou nome forte não será válida sem as configurações atuais do Registro do computador.

Descrição da Regra

Esta regra verifica e recupera o nome forte do assembly.Uma violação ocorrer se qualquer um dos seguintes for verdadeiro:

  • O assembly não tiver um nome forte.

  • O assembly foi modificado depois de assinar.

  • O assembly atraso-é assinado.

  • O assembly foi assinado, incorretamente ou a assinatura foi falha.

  • O assembly requer configurações do Registro para transmitir a verificação.Por exemplo, a ferramenta de nome forte (Sn.exe) foi usada para ignorar a verificação para o assembly.

O nome forte protege clientes unknowingly de carregar um assembly que é violados.Os assemblies sem nomes fortes não devem ser implantados muito cenários limitados a parte externa.Se você compartilhar ou distribui os assemblies que não estão assinados corretamente, o assembly pode ser violados, Common Language Runtime não pode carregar o assembly, ou o usuário talvez precise desabilitar a verificação em seu computador.Um assembly sem um nome forte tem os seguintes desvantagens:

  • As fontes não podem ser verificadas.

  • Common Language Runtime não pode aviso usuários se o conteúdo do assembly foi modificado.

  • Não pode ser carregado em cachê de assembly global.

Observe que para carregar e para analisar um assembly atraso- assinado, você deve desabilitar a verificação do assembly.

Como Corrigir Violações

Para criar um arquivo de chave

Use um dos seguintes procedimentos:

Para assinar o assembly com um nome forte no Visual Studio

  1. Em Visual Studio, abra a solução.

  2. Em Gerenciador de Soluções, clique com o botão direito do mouse no projeto e clique em Propriedades.

  3. Clique na guia de Assinando , e marque a caixa de seleção de Assinar o assembly .

  4. De Escolha um arquivo de chave de nome forte, Novoselecione.

    A janela de Criar Chave de Nome Forte será exibida.

  5. Em Nome do arquivo de chaves, digite um nome para sua chave de nome forte.

  6. Escolha se proteger a chave com uma senha, e clique em OK.

  7. Em Gerenciador de Soluções, clique com o botão direito do mouse no projeto e clique em Compilar.

Para assinar o assembly com um nome forte fora do Visual Studio

Quando Suprimir Alertas

Suprima apenas um aviso dessa regra se o assembly for usado em um ambiente onde violar o conteúdo não é um problema.

Consulte também

Tarefas

Como assinar um assembly com um nome forte

Referência

Sn.exe (Ferramenta de Nome Forte)

AssemblyKeyFileAttribute

AssemblyKeyNameAttribute