2012-10-01 63 views
-1

在過去,我們公司有一個協議,即當地的一家新聞機構可以在我們的網站上嵌入一些地圖。他們會在地圖上嵌入iFrame,我被告知我們有一些邏輯來防止新聞網站以外的人做同樣的事情(可能通過某種引薦代理)?如何防止未經授權使用網站內容?

我們最近已將我們的地圖應用程序託管在Amazon S3上,並將iFramed託管到我們自己的頁面中。防止未經授權的嵌入的話題再次出現。

我沒有訪問前面的代碼來看看這是如何完成的,但我假設它是在前一個aspx頁面上的某種頭部檢查。現在地圖應用程序在S3上是完全靜態的,我不相信這樣的事情是可能的。

任何人都可以稱重或指向我可以搜索的方向嗎?我的搜索沒有發現任何有用的東西(可能只是使用了錯誤的關鍵字)。

在此先感謝!

回答

1

最可靠的方法是使用JavaScript(當它啓用)

if(top != self) alert("Y U EMBED IN FRAME?"); 

甚至還有的話題http://en.wikipedia.org/wiki/Framekiller

+0

謝謝,我將檢查此方法是否可以擴展爲頁面白名單(即可嵌入我們的網頁和我們的合作伙伴)。 – hypno7oad

+0

出於安全原因,您無法輕鬆訪問父頁面的url(http://stackoverflow.com/questions/7574926/access-iframes-parent-url)。您不能使用這裏提到的方法,因爲主機頁面可以輕鬆操作代碼。也許你可以採用Disqus這樣的另一條路線。他們寫了一本關於它的書http://www.amazon.com/Third-Party-J​​avaScript-Ben-Vinegar/dp/1617290548/ – Prinzhorn

+0

非常感謝,我一定會把這本書放進我的閱讀清單。 – hypno7oad