10/10/2018, 09:23

Vấn đề authentication khi download resource??

Chào cả nhà !
Mình đang làm web nhưng đang gặp phải vấn đề rất đau đầu như sau. Khi một user A login thành công vào website của mình và vào mục download dữ liệu. A down thì không sao, tuy nhiên A lại đi public đường link này lên mạng: ví dụ URL là www.abc.com/folderA/fileA.rar . Khi đó sẽ có rất nhiều người down được fileA.rar này. Tuy nhiên điều này là cấm kị vì chỉ có những ai login vào website mới có quyền down.
Ví dụ tiêu biểu cho trường hợp này: Chắc ai lập trình đều đã vào site
Code:
 www.codeproject.com
. Ví dụ khi đọc bài viết:
Code:
http://www.codeproject.com/KB/cs/SharedSettings.aspx
thì link down source của bài là:
Code:
http://www.codeproject.com/KB/cs/SharedSettings/SharedSettingsDemo.zip
Tuy nhiên nếu ko login vào website thì sẽ ko tài nào down được link này mà khi paste link kia vào website sẽ ra ngay site:
Code:
http://www.codeproject.com/script/Membership/LogOn.aspx&download=true
và thông báo : Page Not Found
Ví dụ khủng hơn nữa là của rapidshare. Mặc dù sau khi mình upload file lên và login bằng acc pre vào lấy được direct link, tuy nhiên có public link này thì ko ai có thể down được, và mỗi một lần là link lại khác nhau mặc dù nó đều chỉ đến cùng 1 file cả.
Có ai xử lý trường hợp này hoặc nghe nói có cách nào để làm giống như vậy không ? Rất mong mọi người giúp đỡ và cùng thảo luận với mình !!
Vô Thin viết 11:28 ngày 10/10/2018
Có nhiều cách đạt tới yêu cầu của bạn, bạn có thể tìm hiểu với từ khóa là stream file to download hoặc bạn xem code của các forum viết đó, có public link thì khi vào download cũng đâuc có download được, vì đàng nào cũng phải bước qua xác một file .php, file này kiểm tra đăng nhập và từ chối ngay.
jiSh@n viết 11:29 ngày 10/10/2018
Dựa vào đâu mà dám chắc đó là direct link?
thiendv viết 11:24 ngày 10/10/2018
Bạn có thể đọc file sau đó sử dụng header để khai báo kiểu trả về cho phía client. Mình nghĩ bạn nên search google với từ khóa "xây dựng một chương trình download files đơn giản". Ở diendantinhoc.org đã có một bài tutorial về vấn đề này.
newcomer11 viết 11:29 ngày 10/10/2018
úi, mới trả lời bên uds xong qua đây lại gặp, hơ hơ.
bka viết 11:26 ngày 10/10/2018
cái file này mà có thực tui chết liền
Code:
http://www.codeproject.com/KB/cs/SharedSettings/SharedSettingsDemo.zip
toàn đoán mò. cách thì thiếu gì .
bonmat179 viết 11:36 ngày 10/10/2018
Được gửi bởi superthin
Có nhiều cách đạt tới yêu cầu của bạn, bạn có thể tìm hiểu với từ khóa là stream file to download hoặc bạn xem code của các forum viết đó, có public link thì khi vào download cũng đâuc có download được, vì đàng nào cũng phải bước qua xác một file .php, file này kiểm tra đăng nhập và từ chối ngay.
cái tream file ấy tớ tưởng chỉ dùng khi download file audio hoặc video thôi chứ ??
Được gửi bởi jiSh@n
Dựa vào đâu mà dám chắc đó là direct link?
Cái tớ làm là sau khi log in xong sẽ cho download direct link ở 1 server khác

Được gửi bởi newcomer11
úi, mới trả lời bên uds xong qua đây lại gặp, hơ hơ.
Welcome Vấn đề nan giải nên phải đi hỏi cao thủ ở các nơi mà.

Được gửi bởi bka
cái file này mà có thực tui chết liền
Code:
http://www.codeproject.com/KB/cs/SharedSettings/SharedSettingsDemo.zip
toàn đoán mò. cách thì thiếu gì .
Sao lại ko có file này. Cậu phải log in thì sẽ down được ngay !! Sure 100%
s.code viết 11:34 ngày 10/10/2018
http://sgallery.giaidap.info/downloa...ry.v.1.3.1.zip

Kiểu như vậy đúng ko.
snoob viết 11:30 ngày 10/10/2018
Bác dùng htaccess vô cái thư mục download thử xem. Ví dụ : http://www.codeproject.com/KB/cs/Sha...ttingsDemo.zip => http://www.codeproject.com/KB/cs/Sha...ttingsDemo.zip rùi trong file php đó bác cứ tính toán tính toán gì đấy. Em chưa làm nhưng bác cứ thử xem.
jiSh@n viết 11:37 ngày 10/10/2018
Cái tớ làm là sau khi log in xong sẽ cho download direct link ở 1 server khác
Thế khi logout thì cái "direct link" ấy có xài được ko?
Bài liên quan
0