Làm cách nào để biết khách truy cập trang web của tôi đang sử dụng LastPass hoặc các trình quản lý mật khẩu khác?


21

Tôi muốn đảm bảo khách truy cập vào trang web của tôi có trải nghiệm tốt nhất có thể vì vậy tôi muốn họ có thể sử dụng LastPass và các Trình quản lý mật khẩu khác.

Có cách nào để xác định xem khách truy cập của tôi có đang sử dụng một trong các plugin này hay không?


19
Ý tưởng của bạn về "hỗ trợ cụ thể" các plugin này là gì ...? Bạn nghĩ gì cần hỗ trợ rõ ràng?
lừa dối


1
Ý tưởng đằng sau điều này là Người dùng thích sử dụng các công cụ tự động hoàn thành biểu mẫu và LastPass khá giỏi trong việc này. Nó làm phiền tôi khi tôi truy cập một trang web yêu cầu điền vào mẫu quan trọng, ví dụ như trang web đặt phòng khách sạn, trang web của hãng hàng không, v.v ... và nhà phát triển web đã không bận tâm kiểm tra xem hình thức của họ có thể được LastPass và các công cụ tương tự tạo ra hay không. Công bằng mà nói, tôi vừa nhận ra rằng điều này không rõ ràng ngay lập tức trong câu hỏi, nhưng an ninh không phải là động lực chính đằng sau bình luận này.
cgarvey

Tôi nghĩ trong một thế giới lý tưởng, tôi muốn có thể kiểm tra công cụ phân tích của mình và xem có bao nhiêu khách truy cập của tôi điền vào biểu mẫu theo cách thủ công và bao nhiêu phần mở rộng trình duyệt và được sử dụng. Do đó câu hỏi.
cgarvey

Câu trả lời:


13

Vâng.

Người dùng có thể cài đặt LastPass làm plugin trình duyệt. Do đó, bạn có thể dựa vào các ngôn ngữ kịch bản phía máy khách để kiểm tra xem LastPass đã được cài đặt chưa.

Chẳng hạn, việc sử dụng NavigatorPlugins.pluginscho phép bạn lấy một PluginArrayđối tượng, liệt kê các plugin được cài đặt trong ứng dụng:

function getLastPassVersion() {
  var lastpass = navigator.plugins['LastPass'];
  if (lastpass === undefined) {
    // LastPass is not present
    return undefined;
  }
  return lastpass.version;
}

Cũng lưu ý rằng những gì bạn đang yêu cầu thường được triển khai và sử dụng bởi các công nghệ vân tay của trình duyệt .


Chà, tôi sẽ luôn thích nói những điều bạn không nói - nếu không tất cả những gì tôi nói sẽ là dư thừa, phải không? ;) Tuy nhiên, khi bạn chỉnh sửa những thứ tôi đã giới thiệu, các bình luận của tôi đã trở thành tranh luận (hoặc ít nhất là chúng đang lơ lửng giữa không trung)
Hagen von Eitzen


@Mardzis Thật vậy. MDN báo cáo rằng trình duyệt hạn chế quyền truy cập navigator.pluginshoặc trả lại kết quả giả để bảo vệ quyền riêng tư: developer.mozilla.org/en-US/docs/Web/API/NavigatorPlugins/ Lỗi
Dai

46

Có cách nào để xác định xem khách truy cập của tôi có đang sử dụng một trong những plugin này hay không và cách tốt nhất để hỗ trợ nó?

Cho đến nay, cách tốt nhất để hỗ trợ người quản lý mật khẩu là sử dụng <form>các thẻ thông thường và một hình thức bình thường. Nếu bạn không làm gì thông minh, thì trình quản lý mật khẩu sẽ thực hiện công việc của nó.


8
Để thêm vào điều này: Kiểm tra với trình quản lý mật khẩu tích hợp của trình duyệt. Nếu điều đó hoạt động, rất có thể các giải pháp của bên thứ ba cũng sẽ hoạt động.
Kevin

6
Tôi đồng ý, nhưng tôi đã nhận thấy ngày càng nhiều trang web sử dụng các khung hình góc cạnh và khác với các hình thức cực kỳ phức tạp không hoạt động với LastPass. Trớ trêu thay, các trang web này có xu hướng là những trang web mà Người dùng thực sự muốn sử dụng các công cụ tự động hoàn thành mẫu với ví dụ như đặt chỗ của hãng hàng không, v.v.
cgarvey

1
Lưu ý một số trình quản lý mật khẩu mô phỏng các lần nhấn phím thay vì cài đặt plugin trong trình duyệt. Vì vậy, không nhất thiết là nếu trình quản lý mật khẩu tích hợp hoạt động thì trình quản lý mật khẩu cũng sẽ hoạt động. Trong những trường hợp này, bạn thường nên đảm bảo điều hướng tab hoạt động chính xác.
Lie Ryan

3

Hầu hết các trình quản lý mật khẩu này đều dựa trên plugin trình duyệt và hoạt động bằng cách điền vào các trường biểu mẫu và kích hoạt gửi biểu mẫu như thể ueer nhấn nút gửi, đến máy chủ, nó xuất hiện dưới dạng gửi biểu mẫu bình thường, không có cách nào để biết liệu nó có đến từ một quản lý mật khẩu.


2

Bạn có thể sử dụng Javascript để phát hiện tốc độ gõ trong trường tên người dùng / mật khẩu. Một tỷ lệ biến cho thấy ai đó đang gõ nó bằng tay trong khi tốc độ không đổi hoặc thậm chí không có tổ hợp phím nào (sao chép-dán) có nghĩa là ai đó đang sử dụng trình quản lý mật khẩu.


Vì vậy, nếu tôi có LastPass, nhưng nó không thể phát hiện trường đăng nhập và tôi nhập thủ công, tôi không có LastPass?
Stephan bijzitter

Một số trình quản lý mật khẩu sao chép các loại bột nhão, một số khác mô phỏng các phím bấm và cũng có những loại được nhập vào DOM và điền trực tiếp vào biểu mẫu. Ngoài ra, một số người dùng có thể nhập mật khẩu của họ vào notepad sau đó sao chép bột nhão để họ có thể thấy những gì họ đang nhập trong trường mật khẩu. Nó không đơn giản để phát hiện người quản lý mật khẩu.
Lie Ryan

2

Để trả lời câu hỏi thực tế, một cách để phát hiện xem người dùng có đang sử dụng Lastpass hay không là cung cấp một số loại trường đăng nhập và sử dụng jQuery hoặc tương tự để xem Lastpass có chèn "hình nền" mà nó chèn vào các trường đăng nhập mà nó có thể tự động điền hay không.

Đây là một ví dụ về trường nhập email, tất cả nội dung trong thẻ kiểu đã được Lastpass thêm vào:

<input type="text" class="form-control" id="inputEmail" placeholder="Email" style="cursor: pointer; background-image: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAAAXNSR0IArs4c6QAAAPhJREFUOBHlU70KgzAQPlMhEvoQTg6OPoOjT+JWOnRqkUKHgqWP4OQbOPokTk6OTkVULNSLVc62oJmbIdzd95NcuGjX2/3YVI/Ts+t0WLE2ut5xsQ0O+90F6UxFjAI8qNcEGONia08e6MNONYwCS7EQAizLmtGUDEzTBNd1fxsYhjEBnHPQNG3KKTYV34F8ec/zwHEciOMYyrIE3/ehKAqIoggo9inGXKmFXwbyBkmSQJqmUNe15IRhCG3byphitm1/eUzDM4qR0TTNjEixGdAnSi3keS5vSk2UDKqqgizLqB4YzvassiKhGtZ/jDMtLOnHz7TE+yf8BaDZXA509yeBAAAAAElFTkSuQmCC&quot;); background-attachment: scroll; background-size: 16px 18px; background-position: 98% 50%; background-repeat: no-repeat;" autocomplete="off">

Đây có thể không phải là cách hiệu quả nhất để phát hiện nếu người dùng đang sử dụng Lastpass, nhưng nó chắc chắn hoạt động :)


2
Thích suy nghĩ đằng sau giải pháp này nhưng không cho rằng ít nhất một lĩnh vực trên một biểu mẫu có thể được LastPass đưa vào? Trang web tôi truy cập đã khiến tôi đặt câu hỏi này bằng cách sử dụng biểu mẫu Angular và LastPass không thể xác định một trường duy nhất trên đó. Một trường hợp chắc chắn nhưng không phải là trường hợp cuối cùng tôi sẽ thấy.
cgarvey
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.