Django Jupyterhub的类RStudio身份验证

Django Jupyterhub的类RStudio身份验证,django,ipython,ipython-notebook,jupyter,Django,Ipython,Ipython Notebook,Jupyter,我正在尝试使用配置Jupyterhub 但是,我不想使用Github身份验证,而是想使用 1) Rstudio服务器式身份验证,其中凭据与linux用户凭据相同,或者 2) 我想将其与我的Django应用程序集成,用户可以通过Django应用程序登录凭据登录。就像Coursera在这里所做的:(可能使用不同的框架) 我怎么做 Rstudio服务器式身份验证,其中凭据与linux用户凭据相同 这是JupyterHub的默认行为,它使用PAMAuthenticator使用现有系统用户名和密码登录 我

我正在尝试使用配置Jupyterhub

但是,我不想使用Github身份验证,而是想使用

1) Rstudio服务器式身份验证,其中凭据与linux用户凭据相同,或者

2) 我想将其与我的Django应用程序集成,用户可以通过Django应用程序登录凭据登录。就像Coursera在这里所做的:(可能使用不同的框架)

我怎么做

Rstudio服务器式身份验证,其中凭据与linux用户凭据相同

这是JupyterHub的默认行为,它使用PAMAuthenticator使用现有系统用户名和密码登录

我想将其与我的Django应用程序集成,用户可以通过Django应用程序登录凭据登录

这意味着要写一篇文章。如果您的django应用程序是OAuth提供程序,则可以使用该包,该包使用OAuth2实现登录。您可以编写与应用程序对话的基本OAuthenticator的自己的子类,以该repo中的各种实现为例

如果应用程序不是OAuthenticator,则可能需要从基本Authenticator类开始,并定义
.authenticate()
方法


如果您在django应用程序后面代理JupyterHub,最简单的身份验证方法是检查代理为经过身份验证的用户设置的头(并确保只有经过身份验证的请求到达中心)。这是一个依赖于Apache在登录期间设置的远程用户头的示例。

如何设置jupyterhub,以便用户可以使用系统用户和密码登录?我正在尝试使用此链接上的说明进行配置:但它不允许我使用系统凭据登录。如果您在没有配置的情况下键入
sudo jupyterhub
,则可以使用系统用户和密码。运行Hub的用户需要读取密码数据库的权限,例如root用户或某些发行版上的
shadow
组的成员。sudo jupyterhub表示“未找到命令”。只需使用sudo键入jupterhub即可启动服务器,但身份验证不起作用。我的jupterhub位于.local/bin/jupyterhubok中,键入
sudo$(哪个jupyterhub)
运行服务器,但现在我收到一个500错误,它显示启动demo服务器时出现未经处理的错误:[Errno 2]没有这样的文件或目录:“jupyterhub-singleuser”,您需要确保这些命令位于您的路径上。使用
sudo-s
是一种方法。