Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

danilo grillo

Download com autenticação de usuário

Recommended Posts

Boa Tarde a todos,

 

gostaria de uma idéia de como eu poderia fazer para controlar os arquivos de download de meu site, não quero que eles sejam acessados se a pessoa jogar o link direto lá e baixar, qro q ele só permita o download se o usuário do site estiver logado com seu usuário e senha...hoje ja tenho pronto e funcionando um sript de autenticação de usuários, porém ele só proteje as páginas asp, gostaria de proteger tb meus arquivos...fico no aguardo de uma idéia para este caso...

 

Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

É só no momento do download você não informar o endereço do arquivo. Você pode utilizar uma pagina.asp para forçar o download e inclusive autenticar e só forçar o download caso esteja correto.

 

Aqui no Fórum temos vários tópicos sobre o assunto. Faça uma pesquisa e encontrará a solução.

 

Qualquer dúvida poste aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como faço isso de não informar o endereço do download????????

 

 

É só no momento do download você não informar o endereço do arquivo. Você pode utilizar uma pagina.asp para forçar o download e inclusive autenticar e só forçar o download caso esteja correto.

 

Aqui no Fórum temos vários tópicos sobre o assunto. Faça uma pesquisa e encontrará a solução.

 

Qualquer dúvida poste aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Forçando o download.

 

Você pesquisou pelo assunto que citei?

Compartilhar este post


Link para o post
Compartilhar em outros sites

aqui na mão:

 

public function download(arquivo, pasta)
	dim objStream
	set objStream = server.createObject("ADODB.Stream")
	with (response)
		.buffer = true  
		.addHeader "Content-Type","application/x-msdownload"
		.addHeader "Content-Disposition","attachment; filename="&arquivo  
		.flush  
	end with
	with (objStream)
		.open  
		.type = 1  
		.loadFromFile server.mapPath(pasta)
	end with
	response.binaryWrite objStream.read
	set objStream = nothing
	response.flush
end function

usa assim:

call download("aquivo.pdf", "pasta/pdf")

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então Ted...num manjo qse nada de ASP, ou seja num entendi qse nada do que colocou ai neste código...

 

desculpa a ignorância cara....

 

se poderia me explicar o passo a passo ai de como tudo irá funcionar, pois o q tenho hoje é a página asp com os links dos downloads e o q eu imaginava é q qdo ele clicasse no link de download ele chamaria o .asp com o código de validação, assim loiberando ou não o download.

 

vlwwwwwwwwwww

Compartilhar este post


Link para o post
Compartilhar em outros sites

o que você tem que fazer é:

 

coloque a função na sua página:

 

<%
public function download(arquivo, pasta)
	dim objStream
	set objStream = server.createObject("ADODB.Stream")
	with (response)
		.buffer = true  
		.addHeader "Content-Type","application/x-msdownload"
		.addHeader "Content-Disposition","attachment; filename="&arquivo  
		.flush  
	end with
	with (objStream)
		.open  
		.type = 1  
		.loadFromFile server.mapPath(pasta)
	end with
	response.binaryWrite objStream.read
	set objStream = nothing
	response.flush
end function
%>

vamos supor que seu link é:

<a href="pasta/arquivos/arquivo.pdf" class="classFonte08" target="_blank">arquivo</a>

Para dificultar criei isso, você vai e substitui esse link anterior por isso:

<%
if (request.queryString("Arquivo") <> "" and request.queryString("Ar") = "$arquivo.pdf$") then
 call download("arquivo.pdf", "pasta/arquivos/")
end if
%>
<a href="?Arquivo=$&Ar=$arquivo.pdf$" class="classFonte08" target="_blank">arquivo</a>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.