2010-09-27 101 views
0

我想在s3上播放視頻。我想在頁面中「嵌入」它在我的網站中,如:保護我的網站上的視頻?

http://example.com/demo.html 
    <video>the video</video> 

我不知道如何嵌入視頻播放器,並將其指向在S3託管的網址,我只用YouTube的api球員,但這可能是可能的。

我想知道的問題是,如果有一種方法可以在人們知道視頻資源的URL是什麼時阻止他們查看視頻?例如,如果我在網頁上找到圖片的網址,我可以複製它的網址並直接在瀏覽器中查看它。有沒有辦法阻止它?我希望人們只有在他們從該特定頁面查看視頻時才能看到視頻。較大的計劃是隻向在我的網站上創建帳戶的會員顯示視頻。該VIMEO API看起來很有前途,但僅用於非商業用途,所以看到的,如果這是可能的S3,

感謝

+0

http:// camstudio。org/ – 2010-09-27 23:03:02

回答

0

這是一個有點貓捉老鼠的遊戲中,有一個Firefox擴展:"DownloadHelper",抓住來自大多數嵌入式源的視頻如果重要的是人們無法拍攝視頻並做他們想做的事情,那麼您可能需要研究某種DRM方式,但這也不是防彈的,而且在這種情況下可能會矯枉過正。

+0

嗯,但是當用戶建立一個http連接來獲取視頻內容時,我不能檢查是否爲該用戶啓用了一個會話(瀏覽器會在與服務器建立的每個連接中發送該會話的權利?)。如果我看不到會話,我只是拒絕? – user291701 2010-09-28 02:45:24

+0

沒錯,但是這是一個Firefox擴展。瀏覽器(運行'grabber')有一個有效的會話並抓取視頻。 AFAIK'下載助手'看起來和瀏覽器一樣。 – 2010-09-28 03:28:12

+0

啊,確定沒有正確讀取它,這是有道理的。很高興知道,謝謝。 – user291701 2010-09-28 13:50:14

0

如果你擁有服務器,你可以做一些事情,比如在一個只有暫時有效的URL(HTTP會話過期或5分鐘之後)上傳視頻。但是,由於您正在使用S3,您無法控制,所以這種技術不可用。除此之外,一個S3的URL是一個很好的老式的URL,如果它是視頻播放器可達,是可以達到任何其他方式以及...

+0

另外,爲什麼你想阻止人們下載它?你爲什麼害怕他們會(超越傲慢)? – jlarson 2010-09-27 22:56:15

+0

哦,它只是付費內容。因此,一位朋友正在生成一些視頻,並且不希望用戶查看它們,除非用戶付費。 – user291701 2010-09-28 02:44:33

+0

如果它是付費的內容,那麼他​​們可能會承擔在比S3控制更密切的服務器上託管它?但除此之外,付費視頻對於我想象得到的大衆開發的任何東西都是非常不尋常的模式。 – jlarson 2010-09-28 17:00:01

0

我沒有使用S3,所以我不知道具體情況,但我會做的是有一個客戶端的Silverlight/Flash播放器,可以從引用視頻文件的URL進行流式傳輸(如果要使用Silverlight,請檢查MediaPlayer元素),然後應該連接到Web服務器上的通用處理程序,來自s3的內容就好像它實際上有內容一樣。一旦你有了這個工作,你可以將處理程序與當前的安全性(會話等)集成在一起,檢查它們是否已登錄。 通用處理程序是一個ASHX文件,用.NET編寫,非常靈活。最近,我需要跟蹤圖像的帶寬使用情況 - 我編寫了一個處理程序,它將添加到SQL數據庫中的計數器,然後通過設置contenttype來提供圖像。因此,用戶將加載http:www.mydomain.com/pichandler.ashx?file = grrr.jpg,它會生成一個圖像,就像他們直接進入圖像一樣。

p.s.我正在談論的解決方案需要.NET的知識 - 我不知道你將使用什麼語言。

1

您可以使用存儲桶政策功能可以保護文件免受侵害。

這裏是鬥策略的一個例子,使您可以防止盜鏈:

{ 
     "Version":"2008-10-17", 
     "Id":"preventHotLinking", 

     "Statement":[ { 

      "Sid":"1", 
      "Effect":"Allow", 
      "Principal": { 
       "AWS":"*" 
      }, 

      "Action":"s3:GetObject", 
      "Resource":"arn:aws:s3:::your.bucket.name/*", 

      "Condition":{ 

       "StringLike": { 

        "aws:Referer": [ 
         "http://yourwebsitename.com/*", 
         "http://www.yourwebsitename.com/*" 
        ] 
       } 
      } 
     }] 
} 

但是,不要忘了您的實際桶名稱和yourwebsitename來取代your.bucket.name您網站名稱。

您可以使用S3 Browser免費軟件查看和編輯桶策略。您可以找到更多存儲桶策略示例here.