我在heroku上有一个小节点应用程序。它已嵌入Chrome kiosk app。
我希望该应用只能在以自助服务终端模式安装的Chromebook上访问。
我已尝试过HTTP身份验证,但在输入密码和用户名后,该应用从未加载。但是,这首先也不理想,因为我希望避免在Chromebook上使用密码。
有什么想法吗?
答案 0 :(得分:6)
如果您自己配置chromebook,则可以使用TLS客户端身份验证。
您可以在chromebook上安装一个ssl证书,然后您可以使用该证书对Web服务器进行身份验证。可以在http://nategood.com/nodejs-ssl-client-cert-auth-api-rest
找到nodejs示例此https://github.com/ripjar/passport-client-cert
还有一个passport.js模块理论上,用户可以自己安装证书,他会收到一条消息,要求他确认证书的安装,点击就可以了。
但请注意,可以通过设置轻松地从chromebook中提取证书。
答案 1 :(得分:5)
如果我理解正确,您希望只能通过您配置的chromebook访问您的网站。请澄清这是不是你的意思。
然后,您可以拥有一个目标网页(可以要求身份验证),该目标网页仅在首次运行时为您的chromebook生成随机令牌。将此令牌存储在cookie或本地存储中,并在每次运行应用程序时发送它以在服务器上进行验证。