用于SAML2身份验证的Netbox插件

netbox-plugin-auth-saml2的Python项目详细描述


使用SAML2的用于SSO的Netbox插件

NetBox2.8提供了增强功能,以支持特定用途的远程用户身份验证 中定义的变量配置.py文件,如下所述:

https://netbox.readthedocs.io/en/stable/configuration/optional-settings/

此存储库提供了一个Netbox插件,可用于与SAML SSO系统集成, 比如奥克塔。在

注意:此方法使用反向代理URL重写,以便标准Netbox登录将重定向 SSO系统的用户。请参考示例nginx.conf文件。

系统要求

您需要安装django3-auth-saml2 进入你的Netbox环境。在

Netbox配置

configuration.py中,您需要启用和配置这些 REMOTE_AUTH_xxx至少有以下选项:

REMOTE_AUTH_ENABLED=TrueREMOTE_AUTH_BACKEND='utilities.auth_backends.RemoteUserBackend'REMOTE_AUTH_AUTO_CREATE_USER=True

您还可以创建其他选项REMOTE\uauth_DEFAULT_GROUPSREMOTE_AUTH_DEFAULT_权限,如联机文档中所述。在

下一步你需要配置这个插件,证明你的 配置值如中所述 django3-okta-saml2 回购,例如:

^{pr2}$

新插件URL

此插件将为Netbox提供两个新的url:

/plugins/sso/login/
此URL将用户登录重定向到SSO系统(Okta)进行身份验证。这是需要的URL 在反向代理重定向中使用,例如请参见nginx.conf

/plugins/sso/acs/
应该将此URL配置到SSO系统中,作为用户单点登录到Netbox的路由 在用户使用SSO系统进行身份验证后。在

创建新用户配置时自定义

如果要自定义创建用户的方式,而不是 Netbox REMOTE_AUTH变量,可以创建自定义的RemoteBackend类。看到了吗 backends.py中的样本。在

使用反向代理重定向

使用此插件需要反向代理URL重定向来覆盖默认的Netbox/login/URL。在那里 在这个过程中有两个注意事项:

  1. 根据您的Netbox安装情况,您可能需要禁用重定向中的端口。如果您的Netbox服务器URL 不包含端口,则必须禁用端口重定向。例如,请参见nginx.conf。在
  2. 必须为/login/URL添加ULR重写,才能使用/plugins/sso/login/,例如nginx.conf。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java允许具有不同父类的类扩展类,而无需多重继承   java如何创建动态化的JScrollPane w/JPanel作为客户端?   java如何组织和命名包   在Java中读取属性文件   java无法解释的Android意图行为   在Java中动态执行多个BPEL文件的部署   ssl Java 6 SNI(服务器名称指示)?   java我们可以使用Robot框架自动化web和移动应用程序来执行并行执行   java for star pettern的循环   java为什么BinaryReader在线程中,从netty读取错误的数据包?   在java中将华氏度转换为摄氏度   使用Spark和java处理空值和引号编写CSV文件   Java中已排序日期到块的列表   visual studio代码VSCode Java不是linting或自动完成局部变量,而是自动完成Java快捷方式,如“sysout”