通过HTTP远程用户进行认证
项目描述
来自HTTP远程用户的认证
此模块通过在HTTP请求的HEADERS中查找字段HTTP_REMOTE_USER并尝试将给定值绑定到用户来初始化会话。要生效,模块必须安装到预期的数据库中,并在启动时加载;将–load参数添加到启动命令中
--load=web,auth_from_http_remote_user, ...
如果字段在头中找到,但没有用户匹配给定的值,则系统会引发登录错误页面。(401 未授权)
配置
该模块允许与外部安全系统集成[1],这些系统可以通过Remote_User HTTP头字段传递用户的认证。在许多情况下,这是通过Apache HTTPD或nginx代理Odoo的服务器来实现的。
如何使用Apache测试该模块[2]
Apache可以用作反向代理,提供认证,并在Http头中添加所需的字段。
安装apache
$ sudo apt-get install apache2
通过在/etc/apache2/sites-available中放置新文件来为Apache定义一个新的vhost
$ sudo vi /etc/apache2/sites-available/MY_VHOST.com
内容如下
<VirtualHost *:80> ServerName MY_VHOST.com ProxyRequests Off <Location /> AuthType Basic AuthName "Test Odoo auth_from_http_remote_user" AuthBasicProvider file AuthUserFile /etc/apache2/MY_VHOST.htpasswd Require valid-user RewriteEngine On RewriteCond %{LA-U:REMOTE_USER} (.+) RewriteRule . - [E=RU:%1] RequestHeader set Remote-User "%{RU}e" env=RU </Location> RequestHeader unset Remote-User early ProxyPass / http://127.0.0.1:8069/ retry=10 ProxyPassReverse / http://127.0.0.1:8069/ ProxyPreserveHost On </VirtualHost>
启用所需的Apache模块
$ sudo a2enmod headers $ sudo a2enmod proxy $ sudo a2enmod rewrite $ sudo a2enmod proxy_http
启用您的新虚拟主机
$ sudo a2ensite MY_VHOST.com
创建用于配置基本认证的htpassword文件
$ sudo htpasswd -cb /etc/apache2/MY_VHOST.htpasswd admin admin $ sudo htpasswd -b /etc/apache2/MY_VHOST.htpasswd demo demo
对于本地测试,将MY_VHOST.com添加到您的/etc/vhosts文件中。
最后,重新加载配置
$ sudo service apache2 reload
打开浏览器,访问MY_VHOST.com。如果一切配置正确,您将在Odoo外部被提示输入登录名和密码,并自动登录系统。
用法
错误跟踪器
错误在GitHub问题上进行跟踪。如果遇到问题,请检查是否已报告您的问题。如果您是第一个发现它的人,请通过提供详细且受欢迎的反馈来帮助我们解决问题。
致谢
图片
Odoo社区协会:图标。
贡献者
Laurent Mignon
维护者
本模块由OCA维护。
OCA,即Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并推广其广泛应用。
要为此模块做出贡献,请访问https://odoo-community.org。
项目详情
关闭
哈希值 for odoo13_addon_auth_from_http_remote_user-13.0.1.0.1.dev2-py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5b0fd6b906b3735fe1b34edadd35ffc8ac4a7bfbb3052af4514051dd7b197395 |
|
MD5 | a3c0c687e9d6a29ba97735786add9d8c |
|
BLAKE2b-256 | 1495290b5ec83ea8d1591471f229b5db83b0fb6d921f97d470948a3111c386dd |