odoo开发笔记 -- 提高访问安全性的一种方式
场景描述:
最近在做项目的过程中,需要需要将odoo应用集成到其他系统中,
在对方的系统中点击我们的应用,打开对应系统,但是界面不做跳转,在当前页面打开,并且浏览器地址栏只显示IP+应用名,不让显示odoo中的action_id及menu_id等其他信息!
如何实现?
我们先来看下,odoo程序我们在浏览器访问时,通常的地址栏信息:IP+端口/web.........各种id
http://192.168.1.188:8069/web#min=1&limit=80&view_type=list&model=purchase.order&menu_id=216&action=319
当前项目集成要求我们实现如下效果:域名/应用名
http://www.xxx.com/new_app
待会我们再说具体如何实现!
假设我们可以实现,是不是就相当于,隐藏了odoo的一些信息,一定程度上提高了应用的安全性!
例如:视图ID,数据库网页管理访问,debug开发者模式等。。。
实现步骤:
具体不难,我们换个思路,部署的时候,宿主机用tomcat起web服务(ubuntu离线部署tomacat&jdk参考),然后将你的应用名,如new_app 放在webapps中,新建一个index.html静态页面,
在静态页面中,通过ifram嵌入我们的实际odoo服务地址,就可以了!!!
index.html代码样例:
<html>
<head>
<meta charset="utf-8" />
<title>应用名称</title>
</head>
<body>
<iframe frameborder="0" name="Iframe1" src="http://192.168.1.188:8069" width="100%" height="100%"/>
</iframe>
</body>
</html>
启动tomcat后,浏览访问下8080端口:
http://192.168.1.188:8080/new_app
如此我们就实现了第一步!
接着通过nginx反向代理的方式,将对方系统域(www.xxx.com)名代理到我们的应用地址(http://192.168.1.188:8080/new_app),最终实现通过访问如下地址进入我们系统:
http://www.xxx.com/new_app
试试吧!
odoo开发笔记 -- 提高访问安全性的一种方式的更多相关文章
- odoo开发笔记 -- 模型(类)继承的几种机制
1. 类继承 2. 原型继承 3. 委托继承 待完善 https://www.cnblogs.com/chenshuquan/p/10523626.html
- odoo开发笔记 -- div标签代替odoo button写法
odoo开发笔记 -- div标签代替odoo button写法 并调用自定义js <footer> <div id="confirm_request_cloud_repo ...
- odoo开发笔记 -- 搜索视图继承扩展
odoo开发笔记 -- 搜索视图继承扩展
- odoo开发笔记 -- 后台日志输出及分析
odoo开发笔记 -- 后台日志输出及分析 附:日志分析软件
- 怎样在Android开发中FPS游戏实现的两种方式比较
怎样在Android开发中FPS游戏实现的两种方式比较 如何用Android平台开发FPS游戏,其实现过程有哪些方法,这些方法又有哪些不同的地方呢?首先让我们先了解下什么是FPS 英文名:FPS (F ...
- Servlet访问路径的两种方式、Servlet生命周期特点、计算服务启动后的访问次数、Get请求、Post请求
Servlet访问路径的两种方式: 1:注解 即在Servlet里写一个@WebServlet @WebServlet("/myServlet") 2:配置web.xml < ...
- JPA访问数据库的几种方式
JPA访问数据库的几种方式 本文为原创,转载请注明出处:https://www.cnblogs.com/supiaopiao/p/10901793.html 1. Repository 1.1. 通过 ...
- odoo开发笔记 -- 数据库备份策略
odoo默认的数据库为postgresql数据库, PG是个非常强大的数据库,也是未来的一个趋势. 对于odoo的数据备份,odoo提供了自己的备份方式, 1. 从前台页面.输入odoo应用访问地址, ...
- odoo开发笔记--日期or时间字段给定默认值
开发中经常有这样的场景,需要给某个日期或者时间的字段默认值: 例如: 日期,默认今天 时间,默认当前时间 可以在odoo模型定义中进行设置, 如下样例提供参考: test_data = fields. ...
随机推荐
- AM335X UBOOT(以UART为例分析UBOOT主要流程)
UBOOT2016.05 UART初始化及设置 SPL阶段 第一部分C函数 |- s_init //(arch/arm/cpu/armv7/am33xx/board.c) |- set_uart_mu ...
- Odoo中的self详解
转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826307.html 一:self是什么 目前新版的Odoo中使用到的self,是对 游标cr.用户ID ...
- manjaro手动安装Redis
以前都是用的Windows系统,最近有被win10搞得有点烦,就入了manjaro的坑,windows下部分软件在manjaro安装记录,留个记录. 我的系统信息 下面开始正式干活. 一.准备步骤 下 ...
- thrift rpc通信
thrift rpc通信 框架 别人的简历: 负责抓取程序的开发和维护,对抓取内容进行数据提取.整理.1.定向数据抓取程序的维护和开发,了解了Sqlite数据库.Thrift服务和多线程的开发调试.2 ...
- Elasticsearch 概念理解
官方文档地址 Filebeat: https://www.elastic.co/cn/products/beats/filebeat https://www.elastic.co/guide/en/b ...
- RabbitMQ 的 docker 镜像使用
RabbitMQ 的 docker 镜像使用 1.下载镜像(management版本的才带有web管理界面) docker pull rabbitmq:3.7.18-management 2.创建容器 ...
- url 组成
- 20、Python常用模块sys、random、hashlib、logging
一.sys运行时环境模块 sys模块负责程序与python解释器的交互,提供了一系列的函数和变量,用于操控python的运行时环境. 用法: sys.argv:命令行参数List,第一个元素是程序本身 ...
- Convert.ToByte((int)val)
static void Main(string[] args) { ; byte bit8 = Convert.ToByte((int)val); Console.WriteLine("[{ ...
- HTML实现调用百度在线翻译API
HTML实现调用百度在线翻译API 本文章已收录于: <!doctype html> <html lang="en"> <head> < ...