0

我正在使用Identity Server進行單一登錄,我想從相應的客戶端應用程序中使用JavaScript手動刪除Identity Server Cookie。使用Javascript刪除瀏覽器中的Identity Server Cookie

我介紹了大量的教程,但沒有人給出我的要求任何解決方案。

我部署了我的Identity Server在https://localhost:2025和我部署的客戶端UI在http://localhost:3000

我需要刪除以下的Cookie這是https://localhost:2025在以下圖像中顯示。

enter image description here

我試過很多的堆棧溢出問題,掉那些我列舉幾個,供大家參考的。

Clearing all cookies with JavaScript

+0

你不能在JavaScript中觸摸HTTP cookie - 你甚至不能在javascript中看到它們 - 它們只能被服務器清除 - 這就是爲什麼它們被稱爲Http cookies –

+0

@JaromandaX - 但是如果我使用Ctrl + Shift + Del'正在刪除Cookies ... –

+0

什麼是「Ctrl + Shift + Del」 - 它與代碼中的代碼在「客戶端應用程序」 –

回答

1

如果cookie是用HttpOnly flag從服務器發出,您將無法訪問或從客戶端修改它的值:

的僅Http Cookie無法通過客戶機訪問如API,如 。此限制通過 跨站點腳本(XSS)消除了cookie盜用的威脅。但是,cookie仍然容易受到 跨站點跟蹤(XST)和跨站請求僞造(XSRF) 攻擊的攻擊。 Cookie通過向cookie添加HttpOnly 標誌而具有此特性。

從提供的屏幕截圖看來,您只能訪問來自JavaScript的idsvr.session Cookie,因爲它未標記爲HTTP。

作爲一種解決方法,您可以對某個服務器端端點進行AJAX調用,以清除所有Cookie,因爲它可以訪問它們。

+0

您能否請幫助我如何刪除'idsvr.session'。因爲我嘗試了上述方法,但沒有被刪除。 –

+0

試試這個:'document.cookie ='idsvr.session =; expires = Thu,01 Jan 01 00:00:01 GMT;''。執行此代碼後,請不要忘記重新加載頁面,以便將這些更改反映到Chrome開發人員工具欄中。 –

相關問題