odoo10实现单点登陆绕过登陆集成页面
背景:由于需要集成odoo平台在其他页面,需要绕开登陆。
解决办法:开辟一个自动登陆的路由用与集成页面。
1、修改web模块中controller/main.py文件,在class名字为Home中添加登陆路由:
dbname:指定登陆数据库名称
username:用户名
password:密码
@http.route('/web/login_(自定义路由名称)', type='http', auth="none")
def web_login_(方法名称)(self, redirect=None, **kw):
if request.httprequest.method == 'GET':
old_uid = request.uid
uid = request.session.authenticate('dbname', 'username', 'password')
if uid is not False:
request.params['login_success'] = True
if not redirect:
redirect = '/web'
return http.redirect_with_hash(redirect)
request.uid = old_uid
values['error'] = _("Wrong login/password")
return request.render('web.login', values)
2、访问路由(访问前需要先调用清除cookie的方法)。在class名字为Session中添加页面访问路由的方法
@http.route('/web/(访问路由名称)', type='http', auth="none")
def logout_login(self, redirect='/web'):
request.session.logout(keep_db=True)
return http.redirect_with_hash('/web/login_(自定义路由名称)') #从定向到上面定义的路由名称
3、重启odoo、访问第二步中的路由就能直接进入odoo
odoo10实现单点登陆绕过登陆集成页面的更多相关文章
- selenium自动化测试通过localstorage绕过登陆
引言: 做自动化测试,尤其是通过page object模式做UI自动化测试,登陆是个很麻烦的事情,比如你想对某个页面进行测试,一般直接链接到那个页面是不可能的,总是需要先登陆,然后刷新页面才能到想要的 ...
- 添加cookie绕过登陆
添加cookie绕过登陆 #!/usr/bin/env python # -*- coding: utf-8 -*- from selenium import webdriver import tim ...
- 后台js返回验证登陆绕过
思路: 程序员通过JS的返回数据来决定是否登陆成功.返回码为0000的时候表示登陆成功,将返回数据改为其登陆成功的即可. 具体过程: 后台登陆地址http://127.0.0.1/manager/ad ...
- ubuntu 和 win7 远程登陆 + vnc登陆
ubuntu 和 win7 远程登陆: 第一种(通过win7自带的远程桌面来连接ubuntu) 1. windows7配置 我的电脑->属性->远程设置.-----允许远程连接 2. ub ...
- [置顶] ubuntu 和 win7 远程登陆 + vnc登陆
ubuntu 和 win7 远程登陆: 第一种(通过win7自带的远程桌面来连接ubuntu) 1. windows7配置 我的电脑->属性->远程设置.-----允许远程连接 2. ub ...
- SQL Server 限制IP登陆(登陆触发器运用)
原文:SQL Server 限制IP登陆(登陆触发器运用) 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 补 ...
- wex5 教程 之 图文讲解 登陆,注册,页面跳转
视频教程地址:http://v.youku.com/v_show/id_XMTc3OTE0Nzg0NA==.html 效果预览: 登陆页面 首页用windowContainer装载 注册页面 登陆 ...
- DEDE首页会员部分,后台登陆,会员登录相关页面
首页会员涉及部分 \templets\default\style\page.css \member\ajax_loginsta.php 会员登录页面涉及部分 \member\templets\inde ...
- Filter过滤器 不登陆无法访问其他页面
package com.cscy.Filter; import java.io.IOException; import javax.servlet.Filter; import javax.servl ...
随机推荐
- Web大文件分片上传
在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 先说下要求: PC端全平台支持,要求支持Windows,Mac,Linux 支持所 ...
- Hibernate 4 升级到 5 后显示未知实体错误
提示的错误信息如下: org.hibernate.MappingException: Unknown entity: com.ossez.reoc.common.crm.DoNotCall at or ...
- 作为新手对于初次接触matlab的一些感受。
使用matlab时的个人感受:1.建立一个matlab的M文件函数function xxx=aaa(b,c,d) 其中返回值为xxx,函数名为aaa,函数变量为b,c,d 要将其写在一个M文件之中,并 ...
- Java并发指南开篇:Java并发编程学习大纲
Java并发编程一直是Java程序员必须懂但又是很难懂的技术内容. 这里不仅仅是指使用简单的多线程编程,或者使用juc的某个类.当然这些都是并发编程的基本知识,除了使用这些工具以外,Java并发编程中 ...
- 预处理、const、static与sizeof-sizeof与strlen有哪些区别
1:它们的区别如下: (1)sizeof是操作符,strlen是函数. (2)sizeof操作符的结果类型是size_t,它在头文件中typedef为unsignedint类型,该类型保证能容纳实现所 ...
- Leetcode题目96.不同的二叉搜索树(动态规划-中等)
题目描述: 给定一个整数 n,求以 1 ... n 为节点组成的二叉搜索树有多少种? 示例: 输入: 3 输出: 5 解释: 给定 n = 3, 一共有 5 种不同结构的二叉搜索树: 1 3 3 2 ...
- Redis 4.x RCE 复现学习
攻击场景: 能够访问远程redis的端口(直接访问或者SSRF) 对redis服务器可以访问到的另一台服务器有控制权 实际上就是通过主从特性来 同步传输数据,同时利用模块加载来加载恶意的用来进行命令执 ...
- [学习]sentinel中的DatatSource(二) WritableDataSource
sentinel是今年阿里开源的高可用防护的流量管理框架. git地址:https://github.com/alibaba/Sentinel wiki:https://github.com/alib ...
- 基于角色的权限控制系统(role-based access control)
role-based access control(rbac),指对于不同角色的用户,拥有不同的权限 .用户对应一个角色,一个角色拥有若干权限,形成用户-角色-权限的关系,如下图所示.当一个用户进行访 ...
- Kotlin中单例Singleton模式
package loaderman.bar class Singlenton private constructor(){ public var value:Singlenton?=null priv ...