วิธีการบังคับเบราว์เซอร์ของคุณให้จำรหัสผ่าน
หากคุณใช้ตัวจัดการรหัสผ่านที่มีอยู่ในเบราว์เซอร์ของคุณเพื่อจดจำการเข้าสู่ระบบเว็บทั้งหมดของคุณหรือกำลังพิจารณาว่าเหตุการณ์ล่าสุดกับ LastPass คุณมี (หรือจะ) เจอเว็บไซต์บางไซต์ซึ่งจะไม่อนุญาตให้คุณบันทึก รหัสผ่าน อย่างไรก็ตามด้วยการคลิกเมาส์หนึ่งหรือสองครั้งคุณก็สามารถแก้ไขข้อ จำกัด นี้และบังคับให้เบราว์เซอร์จำรหัสผ่านบนไซต์ที่ไม่ให้ความร่วมมือเหล่านี้.
หมายเหตุถึงบรรณาธิการ: แน่นอนว่าถ้าคุณใช้ LastPass ฟังก์ชั่นนี้จะถูกสร้างขึ้นภายในบทความนี้มีไว้สำหรับผู้ที่ต้องการใช้การบันทึกรหัสผ่านของเบราว์เซอร์ในตัวแทนการใส่รหัสผ่านในระบบคลาวด์.
เหตุใดบางเว็บไซต์จึงไม่อนุญาตให้ฉันบันทึกรหัสผ่าน?
คำตอบนี้ค่อนข้างง่ายมันเป็นเพราะแอตทริบิวต์ "เติมข้อความอัตโนมัติ" ในรูปแบบและ / หรือองค์ประกอบอินพุตที่ถูกตั้งค่าเป็น "ปิด" แอททริบิวนี้ถูกนำเสนอโดย Internet Explorer 5 และทำตามที่ชื่อแนะนำป้องกันไม่ให้ฟังก์ชันการทำงานอัตโนมัติสมบูรณ์นำไปใช้กับฟิลด์ใด ๆ ที่ปิดอย่างชัดเจน.
อย่างที่คุณเห็นในเว็บไซต์ของ PayPal (ซึ่งไม่อนุญาตให้คุณบันทึกรหัสผ่าน) ส่วนการเข้าสู่ระบบจะมีการตั้งค่าการเติมข้อความอัตโนมัติให้เป็นปิดสำหรับฟิลด์รหัสผ่าน ดังนั้นเบราว์เซอร์จะไม่รับข้อมูลนี้สำหรับฐานข้อมูลรหัสผ่านที่สมบูรณ์โดยอัตโนมัติ.
การแก้ไข: ฟังก์ชั่น JavaScript ที่เรียบง่าย
โชคดีที่การแก้ไขนั้นง่ายพอ ๆ กัน เราเพียงแค่ต้องเปลี่ยนค่าของคุณลักษณะนี้ไม่ว่าจะอยู่ที่ใดก็ตามให้เป็น "เปิด" ด้วยความสามารถของ JavaScript ในการจัดการ DOM (โมเดลวัตถุเอกสาร) คุณสามารถทำได้อย่างง่ายดายด้วยการคลิกที่คั่นหน้า.
ฟังก์ชั่น JavaScript ถูกฝังอยู่ในลิงค์ด้านล่าง คุณสามารถลากลิงก์ไปยังแถบบุ๊กมาร์กของคุณหรือคลิกขวาที่ลิงก์และบุ๊กมาร์กลิงก์เป้าหมาย เมื่อเสร็จแล้วเพียงคลิกที่บุ๊คมาร์คจะเรียกใช้สคริปต์ "อนุญาตให้บันทึกรหัสผ่าน" ในหน้าปัจจุบัน.
หากลิงก์ด้านบนใช้งานไม่ได้แสดงว่าเป็นแหล่งที่มาของลิงก์ คุณสามารถสร้างบุ๊คมาร์คได้ดังต่อไปนี้เนื่องจากเป็น URL ต้นทาง:
javascript: (ฟังก์ชั่น () var% 20ac, C, F, ฟะ, Fe, FEA, X, Y, Z; AC = "เติมข้อความอัตโนมัติ"; c = 0; F = document.forms สำหรับ (x = 0; x |
จากการทดสอบของเรา (โดยใช้ PayPal เป็นเว็บไซต์ทดสอบ) สิ่งนี้ทำงานได้อย่างที่คาดไว้ใน Firefox 4 และใน Internet Explorer 9 น่าเสียดายที่เราไม่สามารถใช้งานได้ใน Chrome แม้จะมีข้อความสำเร็จที่เปิดใช้งานการเติมข้อความอัตโนมัติ.
ขั้นตอนการใช้งานนั้นเกือบจะเหมือนกันในแต่ละเบราว์เซอร์ที่มี Internet Explorer ซึ่งต้องการอีกหนึ่งขั้นตอน.
การใช้งานใน Firefox
เมื่อคุณเยี่ยมชมไซต์ที่ไม่อนุญาตให้คุณบันทึกรหัสผ่านให้เรียกใช้สคริปต์“ อนุญาตให้บันทึกรหัสผ่าน” คุณควรเห็นการแจ้งเตือนเช่นเดียวกับด้านล่าง.
ป้อนชื่อผู้ใช้และรหัสผ่านเหมือนปกติและเมื่อเข้าสู่ระบบคุณจะได้รับแจ้งให้บันทึกรหัสผ่านของคุณ.
ครั้งต่อไปที่คุณเยี่ยมชมหน้าชื่อผู้ใช้ของคุณจะถูกกรอกโดยอัตโนมัติ แต่ไม่ใช่รหัสผ่าน เพื่อให้รหัสผ่านถูกป้อนอัตโนมัติคุณต้องใส่โฟกัสในฟิลด์ชื่อผู้ใช้ก่อน คุณสามารถใช้การคลิกเมาส์หรือ Ctrl + Tab หากฟิลด์รหัสผ่านมีโฟกัส.
ตอนนี้เมื่อคุณย้ายโฟกัสจากช่องชื่อผู้ใช้ด้วยการคลิกหรือแท็บรหัสผ่านของคุณจะถูกกรอกโดยอัตโนมัติ.
การใช้งานใน Internet Explorer
เมื่อคุณเยี่ยมชมไซต์ที่ไม่อนุญาตให้คุณบันทึกรหัสผ่านให้เรียกใช้สคริปต์“ อนุญาตให้บันทึกรหัสผ่าน” คุณควรเห็นการแจ้งเตือนเช่นเดียวกับด้านล่าง.
ป้อนชื่อผู้ใช้และรหัสผ่านเหมือนปกติและเมื่อเข้าสู่ระบบคุณจะได้รับแจ้งให้บันทึกรหัสผ่านของคุณ.
ครั้งต่อไปที่คุณเยี่ยมชมหน้าชื่อผู้ใช้ของคุณจะถูกกรอกโดยอัตโนมัติ แต่ไม่ใช่รหัสผ่าน คุณจะต้องเรียกใช้สคริปต์ "อนุญาตให้บันทึกรหัสผ่าน" อีกครั้งและคุณจะเห็นการแจ้งเตือนเหมือนด้านบน.
เพื่อให้รหัสผ่านถูกป้อนอัตโนมัติคุณต้องใส่โฟกัสในฟิลด์ชื่อผู้ใช้ก่อน คุณสามารถใช้การคลิกเมาส์หรือ Ctrl + Tab หากฟิลด์รหัสผ่านมีโฟกัส.
ตอนนี้เมื่อคุณย้ายโฟกัสจากช่องชื่อผู้ใช้ด้วยการคลิกหรือแท็บรหัสผ่านของคุณจะถูกกรอกโดยอัตโนมัติ.
แหล่งที่มาของ JavaScript
หากคุณสงสัยว่าสคริปต์ทำงานได้อย่างไรนี่คือแหล่งข้อมูลที่ได้รับการจัดรูปแบบและมีความคิดเห็นดี อย่าลังเลที่จะปรับเปลี่ยนตามที่เห็นสมควร.
function () var ac, c, f, fa, fe, fea, x, y, z; // ac = ค่าคงที่เติมข้อความอัตโนมัติ (แอตทริบิวต์เพื่อค้นหา) // c = จำนวนครั้งที่พบค่าคงที่เติมข้อความอัตโนมัติ // f = แบบฟอร์มทั้งหมดในหน้าปัจจุบัน // fa = attibutes ในรูปแบบปัจจุบัน // fe = องค์ประกอบในรูปแบบปัจจุบัน // fea = attibutes ในองค์ประกอบรูปแบบปัจจุบัน // x, y, z = ตัวแปรวนรอบ ac = "เติมข้อความอัตโนมัติ"; c = 0; f = document.forms // วนรอบแต่ละรูปแบบสำหรับ (x = 0; x < f.length; x++) fa = f[x].attributes; //cycle through each attribute in the form for(y = 0; y < fa.length; y++) //check for autocomplete in the form attribute if(fa[y].name.toLowerCase() == ac) fa[y].value = "on"; c++; fe = f[x].elements; //cycle through each element in the form for(y = 0; y < fe.length; y++) fea = fe[y].attributes; //cycle through each attribute in the element for(z = 0; z < fea.length; z++) //check for autocomplete in the element attribute if(fea[z].name.toLowerCase() == ac) fea[z].value = "on"; c++; alert("Enabled '" + ac + "' on " + c + " objects.");