Pergunta

Também vemos é “Code Access Security” de qualquer uso mundo real?

Eu quero pegar algumas outras opiniões sobre este ...

I como o idéia do Code Access Security para aplicações desktop. Mas na vida do .NET eu tenho que admitir que eu realmente nunca teve uma situação onde CAS tem realmente bloqueado algo para meu benefício.

Tenho, no entanto, teve muitos momentos em que algo tão simples como a partilha de uma aplicação rápida .NET em uma unidade mapeada se torna um acesso pesadelo código empresa. Ter que sair Caspol.exe para criar regras de caminho confiável e ter nenhuma maneira clara de saber por que algo não faz parecer que CAS acrescenta maneira mais frustração para o desenvolvimento e processo de implantação do que ele oferece em segurança.

Eu gostaria de ouvir, quer algumas situações onde CAS tem realmente ajudado mais de machucar, ou se existem outras pessoas lá fora, frustrados com a sua implementação e padrões atual.

Foi útil?

Solução

A equipe .NET auto-los ter COMED à mesma conclusão a segurança de acesso a montagem está sendo reformulado para .NET # 4. Dê uma olhada neste blog para mais informações: Segurança do .NET blogue

Outras dicas

Aqui, aqui! Eu compartilhei muitas das mesmas frustrações. E, claro, o excesso de complicação e documentação horrível incentivar basicamente desenvolvedores para ignorá-lo ou usar regras excessivamente amplos. A segurança será sempre um osso duro para qualquer um, mas CAS é realmente difícil de fazer direito.

Eu tive que lidar com CAS, mas não foi muito difícil, pois eu só tinha de implantá-lo em uma dúzia de estações de trabalho ou assim. Você também pode empurrar para fora as definições necessárias através de política de grupo.

Mas, para responder à sua pergunta, não, eu não acho que isso nunca ajudou.

Olhe no lado brilhante, porém, começando com o .NET 3.5 você pode executar aplicativos através de uma partilha de rede sem CAS.

Depois de muito procurar me deparei com este post no blog da equipe CLR que não só confirma que a CAS está indo embora no .NET 4, mas também dá um grande guia sobre o que vai quebrar e como migrar para o novo modelo sandbox: novo modelo de segurança: Movendo-se para um melhor Sandbox . Do artigo:

Em versões do .Net Framework antes v4, tivemos muitas maneiras de restringir a licenças de uma montagem ou mesmo certo caminho de código dentro da montagem:

  1. modificadores Stack-pé: Negar, PermitOnly

  2. solicitações de nível Assembléia: RequestOptional, RequestRefuse, RequestMinimum

  3. Política muda: caspol e AppDomain.SetPolicyLevel

  4. Carregar uma montagem com uma zona diferente MyComputer

No passado, essas APIs ter sido um fonte de confusão para o anfitrião e escritores de aplicação. Em .Net Framework 4, estes métodos de restrição permissões são marcadas obsoleto e nós Esperamos para removê-los em um ponto na futuro.

A maioria preocupante é o fato de que todos esses métodos desatualizadas de criar uma caixa de areia vai começar jogando um NotSupportedException. Esta é excepcionalmente precária por quaisquer pobres almas (como eu) que por qualquer razão são obrigados a implementar CAS em sua organização neste momento. Você foi avisado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top