ฉันต้องการให้แน่ใจว่าผู้เยี่ยมชมเว็บไซต์ของฉันมีประสบการณ์ที่ดีที่สุดเท่าที่จะเป็นไปได้ดังนั้นฉันต้องการให้พวกเขาสามารถใช้ LastPass และผู้จัดการรหัสผ่านอื่น ๆ ได้
มีวิธีใดที่จะระบุว่าผู้เยี่ยมชมของฉันใช้ปลั๊กอินเหล่านี้หรือไม่?
ฉันต้องการให้แน่ใจว่าผู้เยี่ยมชมเว็บไซต์ของฉันมีประสบการณ์ที่ดีที่สุดเท่าที่จะเป็นไปได้ดังนั้นฉันต้องการให้พวกเขาสามารถใช้ LastPass และผู้จัดการรหัสผ่านอื่น ๆ ได้
มีวิธีใดที่จะระบุว่าผู้เยี่ยมชมของฉันใช้ปลั๊กอินเหล่านี้หรือไม่?
คำตอบ:
ใช่.
ผู้ใช้สามารถติดตั้ง LastPass เป็นปลั๊กอินของเบราว์เซอร์ ดังนั้นคุณสามารถพึ่งพาภาษาสคริปต์ฝั่งไคลเอ็นต์เพื่อตรวจสอบว่า LastPass ได้รับการติดตั้งหรือไม่
ตัวอย่างเช่นการใช้NavigatorPlugins.plugins
ช่วยให้คุณรับPluginArray
วัตถุโดยแสดงรายการปลั๊กอินที่ติดตั้งในแอปพลิเคชัน:
function getLastPassVersion() {
var lastpass = navigator.plugins['LastPass'];
if (lastpass === undefined) {
// LastPass is not present
return undefined;
}
return lastpass.version;
}
โปรดทราบว่าสิ่งที่คุณขอนั้นมักใช้งานและใช้งานโดยเทคโนโลยีการพิมพ์ลายนิ้วมือของเบราว์เซอร์
navigator.plugins
หรือส่งคืนผลลัพธ์ปลอมเพื่อปกป้องความเป็นส่วนตัว: developer.mozilla.org/en-US/docs/Web/API/NavigatorPlugins/
มีวิธีระบุว่าผู้เข้าชมของฉันกำลังใช้ปลั๊กอินตัวใดตัวหนึ่งหรือไม่และจะสนับสนุนได้ดีที่สุดอย่างไร
วิธีที่ดีที่สุดในการสนับสนุนผู้จัดการรหัสผ่านคือการใช้<form>
แท็กปกติและแบบฟอร์มปกติ หากคุณไม่ทำสิ่งที่ฉลาดผู้จัดการรหัสผ่านจะทำงานให้
ตัวจัดการรหัสผ่านเหล่านี้ส่วนใหญ่ใช้ปลั๊กอินของเบราว์เซอร์และทำงานโดยการเติมฟิลด์แบบฟอร์มและเรียกใช้การส่งแบบฟอร์มราวกับว่าปุ่มกดปุ่มส่งไปยังเซิร์ฟเวอร์ที่ปรากฏเป็นการส่งแบบปกติไม่มีทางที่จะบอกได้ว่ามาจาก ผู้จัดการรหัสผ่าน
คุณสามารถใช้ Javascript เพื่อตรวจจับความเร็วการพิมพ์ในฟิลด์ชื่อผู้ใช้ / รหัสผ่าน อัตราตัวแปรแนะนำให้ใครบางคนกำลังพิมพ์ด้วยตนเองในขณะที่อัตราคงที่หรือแม้กระทั่งไม่มีการกดแป้นใด ๆ (คัดลอกวาง) หมายความว่าใครบางคนกำลังใช้ตัวจัดการรหัสผ่าน
ในการตอบคำถามที่เกิดขึ้นจริงวิธีหนึ่งในการตรวจสอบว่าผู้ใช้ที่ใช้ Lastpass คือการให้ประเภทของเขตข้อมูลเข้าสู่ระบบและใช้ jQuery หรือคล้ายกันเพื่อดูว่า Lastpass ได้แทรก "ภาพพื้นหลัง" มันแทรกลงในช่องเข้าสู่ระบบ
นี่คือตัวอย่างของฟิลด์ป้อนข้อมูลอีเมลสิ่งที่อยู่ในแท็กสไตล์ได้รับการเพิ่มโดย Lastpass:
<input type="text" class="form-control" id="inputEmail" placeholder="Email" style="cursor: pointer; background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAAAXNSR0IArs4c6QAAAPhJREFUOBHlU70KgzAQPlMhEvoQTg6OPoOjT+JWOnRqkUKHgqWP4OQbOPokTk6OTkVULNSLVc62oJmbIdzd95NcuGjX2/3YVI/Ts+t0WLE2ut5xsQ0O+90F6UxFjAI8qNcEGONia08e6MNONYwCS7EQAizLmtGUDEzTBNd1fxsYhjEBnHPQNG3KKTYV34F8ec/zwHEciOMYyrIE3/ehKAqIoggo9inGXKmFXwbyBkmSQJqmUNe15IRhCG3byphitm1/eUzDM4qR0TTNjEixGdAnSi3keS5vSk2UDKqqgizLqB4YzvassiKhGtZ/jDMtLOnHz7TE+yf8BaDZXA509yeBAAAAAElFTkSuQmCC"); background-attachment: scroll; background-size: 16px 18px; background-position: 98% 50%; background-repeat: no-repeat;" autocomplete="off">
นี่อาจไม่ใช่วิธีที่มีประสิทธิภาพที่สุดในการตรวจสอบว่าผู้ใช้ใช้ Lastpass หรือไม่ แต่มันใช้งานได้จริง :)