Segurança em páginas web

8 respostas
E

Olá Pessoal,

eu desenvolvi uma aplicação web em que eram apresentadas algumas imagens após a autenticação do usuário. Daí fui todo feliz mostrar para o meu chefe. Ele apenas clicou com o botão direito do mouse sobre uma imagem, e nas Propriedades copiou o endereço da imagem.
Daí abriu uma nova janela do IE e colou o endereço, apresentando a imagem. E eu fiquei com cara de nada…

O argumento dele é que se eu exibisse algumas imagens, o usuário poderia conseguir uma listagem, ou mesmo que poderia ter acesso a qualquer imagem ou dado que estivesse ali, mesmo não estando autenticado…

O que eu gostaria de saber é: há algum meio impedir esse tipo de coisa, pois pelo que eu entendo uma nova janela não está autenticada e logo não deveria apresentar a imagem, não é isso ?

Obrigado !

E aguardo a ajuda de vocês para não passar mais vergonha… (rs)

8 Respostas

cv1

A menos que voce esteja deixando o servidor servir as imagens sem a autenticacao necessaria… como voce esta filtrando os acessos?

Luca

Olá

Além da possibilidade de armazenar as imagens em diretório protegido como sugeriu o CV, é possível inibir o uso do botão direito através de JavaScript. Mas deve ser também inibido a exibição do endereço na barra de status.

Mas se sua página acessa a imagem diretamente então o cara poderia editar o código fonte e obter o endereço. Proteja-se carregando dinamicamente as imagens a partir do servidor.

[]s
Luca

cv1

Inibir os menus de contexto atraves de JavaScript nao resolve nada, e detona a usabilidade da aplicacao - uma vez que a URL trafegou pro browser, ele sabe onde ela esta, e nao ha muito o que fazer pra impedir. A solucao mais segura eh colocar um bom ServletFilter, ou regra do mod_rewrite, que obrigue todo mundo a passar por autenticacao antes de ter acesso as imagens. Assim, nao tem voodoo noo browser que resolva - o controle do acesso fica no servidor, e ponto final. :wink:

Luca

Olá

Concordo, o site fica um porre. Por isto que disse que a melhor solução é controlar o acesso no servidor.

[]s
Luca

E

Obrigado pelas dicas, cv e Luca.

Agora vou arregaçar as mangas para ver se consigo enviar as imagens através de um Servlet e filtrar o seu acesso.
Se entendi direito o caminho que vocês me apontaram…

Obrigado e Abraços !

ps: se vcs tiverem algum material sobre isso (além do que eu já vou fuçar no google… rs…), ficarei imensamente grato, senão já valeu muito a ajuda !

E

Além do Servlet…
só pra garanti

Eu coloco um index.jsp em cada diretório fazendo redirect pra tela de login… assim ele só consegue acessar o arquivo se souber o nome.

Num obtem a listagem

cv1

escruz, isso pode ser conseguido de uma maneira bem mais facil configurando o servidor web pra nao fazer listagens :wink:

E

escruz:
Além do Servlet…
só pra garanti

Eu coloco um index.jsp em cada diretório fazendo redirect pra tela de login… assim ele só consegue acessar o arquivo se souber o nome.

Num obtem a listagem

A questão da listagem eu já estou barrando, inclusive desse jeito mesmo.

Mas fiquei interessado em saber esse outro jeito, cv.

Aliás, eu já estou carregando a imagem através de Servlet:
algo como: <img src='ShowImg?nomedoarquivo.jpg'>

agora só falta implementar o filtro de autenticação.

Criado 10 de março de 2005
Ultima resposta 10 de mar. de 2005
Respostas 8
Participantes 4