好像我創建需要能夠發送電子郵件偶爾的每個應用程序。例如。狀態電子郵件。對於這個問題,假設我的應用程序是一個備份工具,本地安裝在許多Windows客戶端上,並且每個安裝都需要發送每日狀態郵件。它可以安裝在組織的服務器上或私人計算機上。我的應用程序需要發送電子郵件,在哪裏以及如何存儲SMTP密碼?
我要求用戶向他擁有的電子郵件帳戶(STMP主機,端口,用戶名,密碼,發件人地址)提供憑證。我從Atlassian Jira/Confluence或JFrog Artifactory等應用中複製了這種方法。無論如何,他們在哪裏以及如何存儲SMTP密碼?
我目前的理解是:Salting/Hashing方法不適用於此,因爲我需要能夠檢索明文密碼以實際發送電子郵件。我不想以明文存儲密碼,所以它必須是某種加密/解密方法(對吧?)。
我可以告訴用戶不要使用他的主電子郵件帳戶,而是使用一些輔助帳戶,或者甚至更好的是,設置一個特殊的電子郵件帳戶,以供我的應用程序使用。如果用戶是組織的管理員,則他可能能夠在其交換服務器上設置電子郵件帳戶或配置SMTP中繼。但是,我知道我,我知道我的私人用戶,他們中的一些將只使用自己的主電子郵件帳戶,無論如何,所以我要盡我所能,以保持他們的憑據儘可能安全(我的意思是「遵循最佳做法「)。
Preferrably我想存儲在應用程序的數據庫的加密密碼。
我已經花了幾個小時閱讀了關於stackoverflow的問題,但我看不到共識(就像用戶帳戶登錄憑據一樣)。我覺得這很令人驚訝,因爲我預計基本上每個開發人員遲早都會遇到這個問題。
必須遵循一些最佳實踐,一些確定的方式去做這件事,但我還沒有找到它。
請指點我在網上的資源,解釋如何解決這個問題。如果可能的話,由該領域的一些專家撰寫。
我已經看過一些所謂的問題: