Prezados Senhores da Lista, Bom Dia!!!
Pessoal estou com um prblema de Segurança no JAVA que desde então está me tirando o sono…
Tentei de várias maneiras para resolver meu problema,
antes mesmo de recorrer a ajuda deste FORUM.
Para mim está sendo muito complicado e já tentei de
tudo:
Tenho uma aplicação que está rodando em uma Máquina
Linux X Apache que deve conectar à uma máquina Windows
Rodando o SyBase (Banco de Dados).
Projeto:
O Browser chama um arquivo HTML que por sua vez aponta
para um Applet que está dentro de um “arquivo.jar”, a
partir do Applet “Menu” eu abro outras janelas/JFrame
como: Login, Cadastro, Pesquisa, Relatórios etc…
Até ai tudo bem, ou seja, o Applet é startado
perfeitamente na página HTML os JFrames estão sendo
executados perfeitamente, sem erros e sem problemas.
Existe nesse applet um menu que em uma de suas opções
existe um Ítem “Conectar”, à partir desse momento um
driver “jdbc:sybase” é iniciado apontando para a outra
Máquina onde se encontra o SyBase (Banco de Dados).
Se eu executar a Aplicação de dentro do JBuilder (Por
Exemplo) ela funciona perfeitamente, entretanto no
Browser não Executa, ocorrendo o seguinte erro:
java.security.AcessControlException: access denied
(java.net.SocketPermission 192.168.1.94:2638 accept,
resolve)
Esse problema só é resolvido caso eu altere o arquivo
“java.policy” em todas as máquinas que irão Executar a
Aplicação via HTML/Intranet, conforme abaixo:
Comentei a Linha ====> //permission
java.net.SocketPermission “localhost:1024-”, “listen”;
Adicionei a Linha ===> permission
java.net.SocketPermission “*”,
“listen,accept,connect”;
O grande problema: Conseguir executar a
Aplicação/Applet/JFrame sem precisar alterar o arquivo
“java.policy” nas Máquinas/Clientes que irão acessar o
mesmo.
Fico desde já muito agradecido pela ajuda de todos, gostaria
por gentileza, se possível um pequeno passo-a-passo de
como posso resolver este problema que o acredito, alguém já deve ter passado por isso. Já lí vários tutoriais, inclusive o da SUN,
em Português, em Inglês… Etc… Etc… Etc…
Somente dor de cabeça, a única solução foi alterar o
arquivo “java.policy” nas maleditas máquinas.
Sei que não é a solução, pois não faz sentido essa
alteração em todas as Máquinas Clientes.
Mais uma vez, muito obrigado desde já por sua ajuda.
Um grande abraço.