Partilhar via


CA2106: Secure asserts

TypeName

SecureAsserts

CheckId

CA2106

<strong>Categoria</strong>

Microsoft.Security

Alteração significativa

Quebrando

Causa

Um método declara que uma permissão e não há verificações de segurança são realizadas no chamador.

Descrição da regra

Declarar uma permissão de segurança sem executar qualquer verificações de segurança podem deixar uma falha de segurança pode ser explorada no seu código.Um exame da pilha de segurança é interrompido quando uma permissão de segurança é declarada.Se você declarar uma permissão sem realizar nenhuma verificação do chamador, o chamador indiretamente pode executar códigos usando suas permissões.Declara sem as verificações de segurança são permitidas apenas quando tiver certeza de que a declaração não pode ser usada de maneira prejudicial.Uma declaração é inofensiva, se o código chamado é inofensivo ou os usuários não é possível passar informações arbitrárias para o código que você chamar.

Como corrigir violações

Para corrigir uma violação desta regra, adicione uma demanda de segurança para o método ou seu tipo declarativo.

Quando suprimir avisos

Elimina um aviso esta regra somente após uma análise cuidadosa de segurança.

Consulte também

Referência

CodeAccessPermission.Assert

Outros recursos

Diretrizes para codificação segura