2014-06-17 14 views
-1

我在我的web.config文件中使用這些代碼:如何將表單認證更改爲允許用戶在發佈或重定向到的情況下訪問aspx頁面?

<location path="Code.aspx"> 
    <system.web> 
     <authorization> 
     <deny users="*"/> 
     </authorization> 
    </system.web> 
    </location> 

我知道它不允許用戶訪問Code.aspx頁面。如何將其更改爲允許用戶訪問該頁面(如果已將其張貼或重定向到Code.aspx頁面)?

感謝

+0

你爲什麼這樣做?如果這是您想要實現的安全措施,那麼請不要這樣做。 – dotnetom

+0

我有一個網頁,其中包含一個按鈕,點擊按鈕後,它將被重定向到另一個網頁,以支付在線(另一個網站),最後它張貼到顯示代碼的最後一頁。我不知道如何使這個安全,因爲我認爲它可以很容易地被黑客入侵。我認爲如果我能夠做到我所說的話,那麼它可能是安全的。 – user3724490

+0

因此,當用戶單擊第一頁上的按鈕時,可以設置Session變量,並將其重定向到不同站點上的頁面B.當用戶從頁面B返回頁面C時,在Page_Load中檢查您在頁面A中設置的會話變量值以及頁面B中的一些發佈結果。然後驗證所有內容,如果某些內容看起來不正確(例如,Session變量不是到位)而不是處理請求將用戶重定向到頁面A. – dotnetom

回答

0

您將需要允許所有用戶<allow users ="*" />,然後做相應的檢查,在code.aspx的代碼隱藏。在這裏,您可以驗證用戶是否已發佈到該頁面,或者是否已從允許的源頁面重定向。

+0

有沒有可以幫助我的網站鏈接?我使用過會話,但我知道它可能會以某種方式被黑客入侵。 – user3724490

+0

首先,從我讀的評論中你不應該允許所有用戶。用戶仍然需要進行身份驗證才能訪問您的code.aspx。但是,您可以檢查'HttpContext.Current.Request.ServerVariables(「HTTP_REFERER」)'來檢查用戶是否來自可信來源。但僅憑這一點就不夠安全,因爲它可以在客戶端得到鍛鍊。我推薦的是,您在頁面上創建了一個令牌,即發佈到code.aspx。在code.aspx上,您可以驗證令牌並確保用戶可以信任 – Schadensbegrenzer

+0

我不知道如何創建一個tocken。 – user3724490

相關問題