Pergunta

É possível assinar apenas parte de um miniaplicativo?Ou seja, tem um miniaplicativo que não exibe avisos de segurança sobre ser assinado, mas se alguma função específica for usada (que requer privilégios), use o jar assinado?

Pelo que sei, alguns navegadores (talvez a maioria) exibirão o aviso para um miniaplicativo assinado, mesmo que você não solicite nenhum privilégio no tempo de execução.Prefiro evitar isso, se possível.

Foi útil?

Solução

Tente dividir seu código em um jar não assinado e um jar assinado.

Outras dicas

Em teoria, você pode (jar assinado + não assinado), mas na prática resultará que seu código será tratado como não assinado.A decisão de acesso deve ser feita a partir do thread, não do chamador imediato.Se o thread contiver na pilha uma chamada feita a partir de um objeto de código não assinado, toda a chamada deverá ser tratada como não assinada.Se você contornar isso, encontrará um bug.

Em outras palavras... Não.

Se não estou muito curioso, posso perguntar por que você deseja assinar parcialmente seu código?

Tive a impressão de que a Sun deseja desencorajar a criação de miniaplicativos e incentivar o uso do Java Web Start.Acho que essa questão de assinar miniaplicativos é parte do problema.Veja esta documentação da Sun: Perguntas frequentes sobre início do Java Web.

Eu não tentei isso, mas você poderia segmentar os recursos que precisam ser assinados em jars separados que exigem apenas verificações de permissão quando o usuário precisa da funcionalidade nesses jars?

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