2017-01-30 56 views
1

在我的申請,我有標準的電子郵件身份驗證,以及兩個OAuth的服務(比如谷歌和Facebook)通知用戶帳戶存在

如果用戶與Facebook簽約,但隨後他們試圖通過登錄定期的電子郵件認證,我應該告訴他們使用Facebook嗎?起初,我認爲這很直截了當,但意識到這可能有潛在的安全後果。

你們都在想什麼?

(同樣,這是細問堆棧溢出,或者我應該重新發布軟件工程?)

回答

1

有機會的話,用戶已禁用的Facebook(或其他一些服務的)選項來看待通過他/她的電子郵件發送。因此,提供建議通過Facebook登錄的消息可能不是一個好的解決方案,因爲攻擊者可以獲取用戶標記爲私有的信息。

我會做的是,我會將用戶不存在時顯示的消息更改爲「無效用戶(如果您已經使用其他服務(例如Facebook)」註冊),請登錄,在使用該服務)「。我會將此消息提供給不存在的用戶以及使用某種服務註冊的用戶。這樣,攻擊者就無法區分未註冊的用戶和使用某種服務註冊的用戶,而合法用戶正在獲知可能出錯的提示。我相信會出現一些可用性問題,但這樣,用戶的隱私得到更好的尊重。