Usando Code Access Security sem o GAC
-
08-07-2019 - |
Pergunta
Eu estou querendo saber se é possível usar Code Access Security, e uma classe de permissão personalizado (e atributo), sem ter que registrar o assembly que o atributo está em, no GAC.
No momento, eu recebo um TypeLoadException quando o método com meu atributo é chamado, e eu não consigo obter em torno dele. Tudo que li parece implicar que você precisa usar o GAC, a fim de alcançar este objectivo.
Alguém tem alguma idéia?
Eu tentei para conseguir o mesmo objetivo final com AOP usando PostSharp ou AspectDNG, mas ambos os adicionar uma dependência além do meu produto, o que não é o ideal.
Solução
Eu diria que sim (mas não posso ter certeza sem mais detalhes sobre o que e como você está fazendo). Temos de permissões personalizadas / papéis com CAS aqui e nada é na wrt GAC à segurança. Ultimetly CAS precisará acessar implementação de IPrincipal dos seus conjuntos. Você já olhou para o registo de fusão para determinar onde suas montagens estão sendo sondado?
Outras dicas
Obrigado. Parece que você simplesmente não pode ter seus atributos personalizados ser classes filho, e você deve ter apenas um construtor, que assume um SecurityAction.