WSL Hello sudo与WSL 1和WSL 2兼容,并且在以更高的特权运行sudo命令时,它有助于消除耗时的基于密码的身份验证。
这个想法很简单。就像Windows Hello取代了用指纹识别或脸部识别来输入密码一样,WSL Hello sudo对WSL也是如此。该模块的开发人员解释了其工作原理:
Windows Hello在其TPM硬件中为每个Windows用户维护RSA密钥对,并通过用私钥对给定的内容签名来告知认证成功。为了利用其API,“ WSL Hello sudo”包含小型Windows CLI应用程序,这些应用程序返回公钥和给定内容的签名。另一方面,“ WSL Hello sudo”的PAM模块会记住与每个Linux用户相对应的每个Windows用户的公共密钥。因此,PAM模块通过以下过程对给定的Linux用户进行身份验证。
- PAM模块由sudo启动,并接收要验证的Linux用户
- PAM模块启动配套的Windows应用程序,并通过WSL的互操作桥发送随机值
- 随附的Windows应用程序调用Windows Hello
- Windows Hello通过当前Windows用户的私钥对给定的输入进行签名
- 随附的Windows应用返回签名
- PAM模块通过与给定Linux用户相对应的Windows用户的公钥来验证签名。
如果您担心与系统的这种交互级别,则可以从该软件是开源的事实中得到安慰,因此其源代码是免费提供的,并且可以接受审查。
您可以在GitHub上从其家中获取WSL Hello sudo