2017-07-19 40 views
1

我已經閱讀了大量關於創建Windows窗體在vb.net應用記得我複選框最好,最安全的方法(VS 2017年CE)安全*記得我在vb.net贏得表格應用程序?

一些建議My.Setting和其他提示註冊表職位。

參考這個帖子:https://stackoverflow.com/a/4083212/7735285

作爲一個側面說明,Windows應用程序商店的祕密在本地使用 DPAPI,在.net中暴露ProtectedData類。該鏈接完全有 在.Net中使用DPAPI加密數據的功能示例。然而, 的重點仍然是在應用程序中存儲用戶憑證,即使在DPAPI下,也存在 ,這是從根本上破壞的。

所以我的問題是作爲主題說:如何創建一個安全的記住我複選框;而無需存儲登錄憑證。

有沒有一種方法來模擬win窗體應用程序上的安全cookie或什麼是最佳實踐?

我腦海中想到的是如果vb.net可以讀/寫但仍然不能確定這是否是最佳實踐,再加上限制應用的TPM 2;如果在用戶端沒有這個選項。

請參考或提示?

在此先感謝和任何意見讚賞。

PS。 有很多關於asp和IIS的建議,但是找不到適合vb.net win表單應用的直接解決方案。

更新:完全理解場景;我即將開發一款應用程序來幫助和支持某些醫療問題的用戶,因此隱私是一項挑戰。

+1

究竟是由用戶提供的憑據被使用?他們是否習慣對某些外部資源進行身份驗證,或者他們只是在本地識別用戶。如果它只是在本地,那麼你需要的只是用戶名,但我懷疑它不只是本地的。 – jmcilhinney

+0

謝謝@jmcilhinney的輸入,我的想法是通過ssl連接在mysql服務器上存儲憑據;但不希望每次都要求用戶進行身份驗證。 – wpcoder

+0

如何簡單地存儲一個唯一的隨機哈希ID在USB棒,然後將其與mysql單元格進行比較?那會好嗎?只是爲了繞過登錄表單? – wpcoder

回答

0

如果本地Windows登錄是充足的證據,你可以存儲Cookie /文件在用戶的%appdata%文件夾:

Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) 

然而,其他用戶具有管理員權限才能訪問用戶的AppData文件夾,所以你可能要如果你沒有使用域憑據(例如,在不同網絡上的家庭計算機),那麼你可能需要檢查的東西,識別PC來檢查當前登錄的用戶ID

My.User.Name 

Answers to this SO question (click)可以幫助。

(附註:%appdata%就是瀏覽器存儲他們的餅乾呢!)

相關問題