Proteger arquivos armazenados no servidor

Como posso restringir o acesso aos arquivos salvos no servidor?

Os usuários fazem upload de arquivos para o servidor e, da mesma forma, apenas usuários devidamente logados podem baixá-los.

Tentei invocar o donwload assim:

Em um JSP normal crio o hiperlink para o “download.jsp”
<a href=“download.jsp?file=arquivo.pdf”> baixar </a>

O arquivo download.jsp contém o seguinte conteúdo:

&lt;%@page contentType=&quot;text/html&quot;%&gt;
&lt;%@page pageEncoding=&quot;UTF-8&quot;%&gt;

&lt;%
String nArquivo = request.getParameter&#40;&quot;file&quot;&#41;;
response.setHeader&#40;&quot;Content-Disposition&quot;,&quot;attachment; filename =&quot; + nArquivo&#41;;
%&gt;

O que acontece, no entanto, é que quando o arquivo download.jsp é invocado pelo link acima descrito, abre-se a “janela” para escolher o local onde o arquivo deveria ser salvo, porém, o mesmo é salvo sem conteúdo.

Como posso solucionar o problema?
Existe alguma outra forma de invocar o download sem usar um segundo jsp?

Obrigado amigos,

Marcos B.
bermark
São Lourenço do Oeste (SC)

Olá bermark,

você utilizar Filtros. Ou seja, coloca esses arquivos tudo dentro de uma pasta e configura um filtro para observar esta :wink: