所以我想在我的网站上使用闪存驱动器作为2FA的选项(使用设备序列号)。我正在使用WebUSB,但闪存驱动器不会出现在设备选择窗口中。我看过web USB无法读/写文件,所以 甚至可以看到闪存驱动器吗?
如果有帮助,这是我的代码:
console.log("test");
usbLookup.addEventListener('click', function() {
navigator.usb.requestDevice({ filters: [{ }] })
.then(device => {
console.log(device.serialNumber);
})
.catch(error => { console.log(error); });
});
<iframe allowpaymentrequest allow='usb'></iframe>
<a id="usbLookup">Get Serial</a>
答案 0 :(得分:0)
在某些平台上,WebUSB由于其实现方式的细节而无法看到闪存驱动器。
一般来说,这是一个不好的第二因素,因为序列号很容易被猜测和伪造。我建议使用WebAuthn API,而不是为多个供应商提供真正安全的令牌提供支持。