我正在尝试配置和了解最常见的Jupyter身份验证器的工作方式。但是,我无法理解LocalAuthenticator
的工作原理以及它与PAMAuthenticator
的区别。 Jupyter文档说明了以下内容:The LocalAuthenticator is a special kind of authenticator that has the ability to manage users on the local system.
。鉴于我在本地运行所有内容,在我的笔记本电脑上,我的uderstading是我可以使用我用来登录Linux用户的相同凭据。然而,这不起作用。 JupyterHub服务器提供以下消息:Failed login for <user>
。
我的JupyterHub配置文件只包含以下行:
c.JupyterHub.authenticator_class = 'jupyterhub.auth.LocalAuthenticator'
。
如果我将上述行更改为:
c.JupyterHub.authenticator_class = 'jupyterhub.auth.PAMAuthenticator'
然后一切正常,登录成功。
有人可以解释一下这两个身份验证器的区别以及为什么LocalAuthenticator
在我的情况下不起作用?我所知道的唯一区别是(根据文档)LocalAuthenticator
创建新用户(如果他们不存在)。但是,在设置c.LocalAuthenticator.create_system_users = True
并尝试使用不存在的用户登录后,不会创建新用户。
谢谢。
PS:我的操作系统是Debian测试,我已经使用GitHub页面上提供的说明安装了JupyterHub。