2011-05-29 58 views
1

我有一項任務,只在用戶輸入有效代碼時纔在頁面上插入iframe。用戶輸入代碼我檢查它是否有效,如果是我在我的網站上插入iframe元素。它工作的很好,但我不知道是否有可能隱藏iframe的src,因爲當人們知道iframe的源代碼可以進入這個網站時,只要不需要有效代碼就可以進入該網站。iframe安全

是常見問題嗎?我能做些什麼呢?

回答

1

您無法隱藏源代碼。找到另一種方式來做到這一點。

1

您無法隱藏iframe的src。即使你可能將從用戶身上隱藏起來,但很容易找到,畢竟你的瀏覽器必須發出HTTP請求。這似乎是你的問題的最簡單的方法就是有這樣的事:

if (code == whateverTheCodeIsSupposedToBe){ 
    Session["CorrectCode"] = true; 
} 
在您的iframe頁面

然後做:

if (Session["CorrectCode"] != true){ 
    Response.Redirect("SorryYouDontHaveTheRightCode.aspx"); 
} 
+0

我沒有訪問此iframe頁面。它來自不同的供應商 – gruber 2011-05-29 19:17:49

+0

等等,什麼?你可以說得更詳細點嗎?如果其他供應商不阻止人們直接訪問他們的頁面,爲什麼?我很困惑。 – aquinas 2011-05-29 20:27:29

0

正如其他人所說,瀏覽器需要的iframe源繪製,所以真的沒有辦法告訴瀏覽器的src,同時不告訴它。

我會嘗試在這裏添加一些關於您的潛在問題的價值。爲什麼不將用戶輸入的驗證碼傳遞給框架內的頁面,並讓頁面驗證它是正確的?

然後,如果用戶知道幀的src,沒有驗證碼就不會對他們有任何好處。