2017-04-17 114 views
1

我有一個在Angular JS和Webapi中開發的應用程序。我使用OWIN框架使用基於標記的身份驗證。該應用程序部署在一家軟件公司,很少有對此技術有所瞭解的開發人員使用Chrome開發人員工具並直接訪問API方法並繞過客戶端的驗證。有沒有辦法控制這個?隱藏在Chrome開發工具中顯示的HTTP GET/POST請求

請查看chrome開發者工具顯示持票者令牌的屏幕截圖,Webapi方法&其有效載荷。 enter image description here

+0

我從來沒有使用OWIN,但通常的邏輯是: auth是唯一的,並且從服務器生成一個祕密,服務器應該根據secret關鍵字檢查該令牌是否有效。因此,一旦其他開發人員訪問您的瀏覽器,就無法隱藏它,因爲令牌已存儲(通常位於您的瀏覽器cookie中)。但是,它們不能自由生成令牌,因爲服務器將根據傳入的Auth承載字符串檢查每個請求的有效性。 –

回答

0

您無法真正隱藏瀏覽器上顯示的HTTP請求。你可以做的是控制誰獲取該訪問令牌,其到期時間以及他擁有的權限和聲明。

您不能從運行該瀏覽器的用戶隱藏瀏覽器的活動。

只有在使用正確的憑證成功登錄後才能生成令牌,並且可以使用開發人員工具中顯示的令牌從郵遞員等工具調用API,直到它過期(因此設置更短的到期時間)。

令牌使用用戶A的憑證生成的應該不具有操作用戶B的數據的權限,並且應該明確處理。

所以,一個選擇是用戶A可以竊取他自己的訪問令牌並使用它來操縱他自己的數據,除非令牌存活。

相關問題