簡體   English   中英

如何給用戶臨時訪問特定鏈接的權限?

[英]How to give users temporary access to specific links?

我看到人們通常在嵌入視頻時會做很多事情。

它們具有帶有時間戳的鏈接或GET值中的某些內容,這些鏈接允許用戶臨時訪問文件。

目前,我的.htaccess文件只有Options -Indexes (只是讓他們根本無法訪問目錄。我知道這沒有多大幫助)

我是否應該制作一個PHP腳本來存儲與ip匹配且時間戳在30分鍾后過期的特殊ID到sql db中? 我不知道這是否是解決此問題的最有效方法。

這樣做的最好方法是什么?

您可以使用時間戳+保護哈希,例如:

創建鏈接時,您將執行以下操作:

define('SECRET',"onlyknownbyyourserversidescipt");

$now = time();
$protect = md5($now.SECRET);

$link = 'http://what.ever/?'.http_build_query(array('t'=>$now,'p'=>$protect));

鏈接打開后,您將檢查時間是否與受保護的時間匹配

if(md5($_GET['t'].SECRET) === $_GET['p']){
  //then you can check the time
  if(time()-$_GET['t'] > 30*60){
    header(..)
  }else{
   header(..)
  }
}

沒有人可以偽造時間戳,因為沒人知道您的秘密

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM