Django Nginx水疗中心;Sphinx Doco认证
我有一个SPA应用程序,它使用Azure AD进行身份验证。它工作得很好,现在我使用Sphinx添加了一些用户文档 我已经配置了Nginx,因此可以通过Django Nginx水疗中心;Sphinx Doco认证,django,nginx,azure-active-directory,single-page-application,Django,Nginx,Azure Active Directory,Single Page Application,我有一个SPA应用程序,它使用Azure AD进行身份验证。它工作得很好,现在我使用Sphinx添加了一些用户文档 我已经配置了Nginx,因此可以通过/app/doco使用doco。这工作得很好,但是现在我还想保护它,这样只有经过Azure AD认证的用户才能访问doco。为此,我使用了auth_request()模块。如果我使用的是标准Django身份验证,但当我使用Azure AD身份验证时,它不起作用,因为请求中没有包含用户令牌等 我理解auth_request模块工作的方式是: 用户尝
/app/doco
使用doco。这工作得很好,但是现在我还想保护它,这样只有经过Azure AD认证的用户才能访问doco。为此,我使用了auth_request
()模块。如果我使用的是标准Django身份验证,但当我使用Azure AD身份验证时,它不起作用,因为请求中没有包含用户令牌等
我理解auth_request
模块工作的方式是:
/app/doco
(包括用户令牌)/app/auth_check
(自定义Django视图)检查用户是否已通过身份验证,该视图返回200或404感觉上面的方法是有缺陷的,试图通过一个圆孔击中一个方形的钉子?类似于上述的东西会起作用吗?或者有其他更适合的工具/方法吗?从Azure方面来说,我不能说这一点,因为我们没有关于这一点的正式文档,但根据我在Nginx上看到的情况,您应该能够使用JWTs和条件访问来实现这一点 看起来您可能需要将JWT验证添加到NGINX配置中:
auth_jwt "Closed site";
auth_jwt_key_file /etc/nginx/azure.jwk;
你已经看过了吗 从Azure的角度来看,我真的无法谈论这一点,因为我们没有关于这一点的正式文档,但根据我在Nginx上看到的情况,您应该能够使用JWTs和条件访问来实现这一点 看起来您可能需要将JWT验证添加到NGINX配置中:
auth_jwt "Closed site";
auth_jwt_key_file /etc/nginx/azure.jwk;
你已经看过了吗 是的,我已经看到Nginx Plus包含了这个功能,但不幸的是,这不是我的选择。除了成本之外,这绝对是我认为最简单的方法。是的,我已经看到Nginx Plus包含了这个功能,但不幸的是,这不是一个选项(对我来说)。除了成本之外,这绝对是我认为最简单的方法。