通过HTTP远程用户进行认证
项目描述
从HTTP远程用户进行认证
此模块通过在HTTP请求的HEADERS中查找字段HTTP_REMOTE_USER并尝试将给定值绑定到用户来初始化会话。要生效,该模块必须安装在预期的数据库中并在启动时加载;将–load参数添加到启动命令中
--load=web,auth_from_http_remote_user, ...
如果在头部找到该字段且没有用户匹配给定值,系统将发出登录错误页面。(401 未授权)
配置
该模块允许与外部安全系统([1])集成,这些系统可以通过远程用户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 odoo11_addon_auth_from_http_remote_user-11.0.1.0.0.99.dev6-py2.py3-none-any.whl
算法 | 散列摘要 | |
---|---|---|
SHA256 | 40c3d7e3797023d57f5a039d55a7d72e5cd56963d1474782bcb56d4e8caef099 |
|
MD5 | 9c5d9013a34ae70cd230c1fa14f4ff52 |
|
BLAKE2b-256 | 4724ca982c1edcac5a5cbfdc82630a44061b5c84f9fbfa40c0d3600625cfb726 |