配置 JupyterHub 身份验证器#
任何 JupyterHub 身份验证器 都可以与 TLJH 一起使用。其中一些默认情况下与 TLJH 一起提供。
OAuthenticator - Google、GitHub、CILogon、GitLab、Globus、Mediawiki、auth0、通用 OpenID 连接(用于 KeyCloak 等)和其他基于 OAuth 的身份验证方法。
LDAPAuthenticator - LDAP 和 Active Directory。
DummyAuthenticator - 任何用户名,一个共享密码。 使用 DummyAuthenticator 的操作指南 也可用。
FirstUseAuthenticator - 用户在首次登录时设置其密码。TLJH 中使用的默认身份验证器。
TmpAuthenticator - 将 JupyterHub 打开到世界,每次有人登录时创建一个新用户。
NativeAuthenticator - 允许用户注册,添加密码安全验证,并在登录失败尝试后阻止用户。
我们尝试为常见的身份验证器提供特定的操作指南和教程。由于我们无法涵盖所有内容,因此本指南向您展示了如何通过遵循身份验证器的文档,使用您想要的任何身份验证器与 JupyterHub。
设置身份验证器属性#
JupyterHub 身份验证器通过设置traitlet 属性进行自定义。在身份验证器的文档中,您会发现这些通常表示为
c.<AuthenticatorName>.<property-name> = <some-value>
您可以使用 tljh-config
设置这些属性,方法是
sudo tljh-config set auth.<AuthenticatorName>.<property-name> <some-value>
示例#
LDAPAuthenticator 的文档 列出了您可以为 LDAPAuthenticator 设置的各种配置选项。当文档要求您将 LDAPAuthenticator.server_address
设置为某个值时,您可以使用以下命令执行此操作
sudo tljh-config set auth.LDAPAuthenticator.server_address 'my-ldap-server'
大多数身份验证器要求您在启用它们之前设置多个配置选项。仔细阅读身份验证器的文档以获取更多信息。
启用身份验证器#
配置完身份验证器后,您应该启用它。通常,身份验证器的文档会要求您将类似于以下内容添加到您的 jupyterhub_config.py
中以启用它
c.JupyterHub.authenticator_class = 'fully-qualified-authenticator-name'
您可以使用 tljh-config
完成相同的操作
sudo tljh-config set auth.type <fully-qualified-authenticator-name>
启用后,您需要重新加载 JupyterHub 以使配置生效。
sudo tljh-config reload
尝试在单独的隐身窗口中登录以检查您的配置是否有效。这使您可以在出现错误时保留您的终端。如果出现错误,查看日志 应该有助于您调试它们。
示例#
从 文档 中,我们看到 LDAPAuthenticator 的完全限定名称是 ldapauthenticator.LDAPAuthenticator
。假设您已经配置了它,以下命令将启用 LDAPAuthenticator。
sudo tljh-config set auth.type ldapauthenticator.LDAPAuthenticator
sudo tljh-config reload