Compartilhar via


CA2103: Segurança imperativa de revisão

TypeName

ReviewImperativeSecurity

CheckId

CA2103

<strong>Categoria</strong>

Microsoft.Security

Alteração significativa

Quebrando

Causa

Um método usa segurança imperativa e pode construir a permissão usando valores de retorno ou de informações de estado que podem ser alterado, desde que a demanda está ativa.

Descrição da regra

Segurança imperativa usa objetos gerenciados para especificar as permissões e ações de segurança durante a execução de código, em comparação comparada a segurança declarativa, que usa atributos para armazenar as ações e as permissões nos metadados.Segurança imperativa é muito flexível, pois você pode definir o estado de um objeto de permissão e selecione as ações de segurança usando as informações que não está disponíveis até o Runtime.Juntamente com a flexibilidade vem o risco de que as informações de tempo de execução que você pode usar para determinar que o estado de uma permissão não permanece inalteradas desde que a ação está em vigor.

Use segurança declarativa, sempre que possível.As solicitações declarativas são mais fáceis de entender.

Como corrigir violações

Revise as demandas de segurança imperativa para certificar-se de que o estado da permissão não depende de informações que podem ser alterado, desde que a permissão está sendo usada.

Quando suprimir avisos

É seguro eliminar um aviso esta regra se a permissão não depende de alteração de dados.No entanto, é melhor alterar a demanda imperativa para seu equivalente declarativa.

Consulte também

Outros recursos

Diretrizes para codificação segura

Dados e modelagem da.NET Framework