慕標(biāo)琳琳
2019-11-13 16:07:03
這與我在這里提出的問題有關(guān): 如何讓瀏覽器提示您保存密碼?這是問題所在:我無法使瀏覽器提示我保存我正在開發(fā)的網(wǎng)站的密碼。(我說的是,當(dāng)您在Firefox上提交表單時(shí),有時(shí)會(huì)顯示的欄,上面寫著“還記得yoursite.com的密碼嗎?是/否現(xiàn)在/從不”)這真令人沮喪,因?yàn)镕irefox(和大多數(shù)其他現(xiàn)代瀏覽器,我希望以類似的方式工作)的這一功能似乎是個(gè)謎。這就像瀏覽器的魔術(shù)一樣,在瀏覽器中查看您的代碼,您提交的內(nèi)容或其他內(nèi)容,如果它“看上去”像是帶有用戶名(或電子郵件地址)字段和密碼字段的登錄表單,則它可以保存。除非在這種情況下,否則在我的用戶使用我的登錄表單后,它沒有為我的用戶提供該選項(xiàng),這使我發(fā)瘋。:-)(我檢查了Firefox的設(shè)置-我沒有告訴瀏覽器“從不”訪問該站點(diǎn)。它應(yīng)該在提示。)我的問題Firefox用來了解何時(shí)提示用戶進(jìn)行保存的啟發(fā)式操作是什么?這應(yīng)該不太難回答,因?yàn)樗驮贛ozilla源碼中(我不知道在哪里看,否則我會(huì)嘗試自己挖掘出來)。我也沒有運(yùn)氣從Mozilla開發(fā)人員那里找到博客帖子或其他類似的開發(fā)人員說明。(我可以在Safari或IE中回答這個(gè)問題,這很好;我可以想象所有瀏覽器的用戶使用的規(guī)則都非常相似,因此,如果我能在其中一個(gè)瀏覽器中使用它,那么它將在其他瀏覽器中使用。)(*請注意,如果您的回答與Cookie,加密或其他與我在本地?cái)?shù)據(jù)庫中存儲(chǔ)密碼的方式有關(guān),則很可能您誤解了我的問題。:-)
3 回答

POPMUISE
TA貢獻(xiàn)1765條經(jīng)驗(yàn) 獲得超5個(gè)贊
我遇到了同樣的問題,找到了解決方案:
為了使瀏覽器要求存儲(chǔ)密碼,用戶名和密碼框必須采用表格形式,并且該表格必須實(shí)際提交。提交按鈕可能會(huì)從onclick處理程序返回false(因此實(shí)際上不會(huì)發(fā)生提交)。
為了使瀏覽器恢復(fù)先前存儲(chǔ)的密碼,輸入框必須存在于主HTML表單中,并且不能通過javascript動(dòng)態(tài)創(chuàng)建。可以使用display:none創(chuàng)建表單。
需要注意的是,密碼是在頁面加載后立即填寫的,并且在整個(gè)會(huì)話期間都存在,因此可以通過注入的javascript讀?。哼@樣會(huì)使攻擊更加嚴(yán)重。為了避免這種情況,轉(zhuǎn)發(fā)到單獨(dú)的頁面以進(jìn)行登錄是合理的,它解決了您開始閱讀本主題所涉及的所有問題:)。作為部分解決方案,我在提交表單時(shí)清除了這些字段-如果用戶注銷并想再次登錄,則瀏覽器不會(huì)填充密碼,但這對(duì)我來說是次要的。
添加回答
舉報(bào)
0/150
提交
取消