• 关于

    SSO

    的搜索结果

问题

iframe与session之间的问题!

小旋风柴进 2019-12-01 20:07:37 3353 浏览量 回答数 1

问题

gitlab集成自定义omniauth报错?报错

爱吃鱼的程序员 2020-06-12 14:16:42 0 浏览量 回答数 1

问题

SSO到期

1484095123330170 2019-12-01 18:54:58 299 浏览量 回答数 1

阿里云试用中心,为您提供0门槛上云实践机会!

0元试用32+款产品,最高免费12个月!拨打95187-1,咨询专业上云建议!

问题

SAP的产品如何与阿里云服务器上部署的web 应用设置 SSO

游客r3gy2zbsk7bam 2020-11-18 15:30:41 22 浏览量 回答数 1

回答

回1楼鬼才神兵的帖子 ╮(╯▽╰)╭    , 犯了个低级错误! 可遇到这个问题吗!   ------------------------- ReNginxTomcat域名下无法获取用户登录的sessian 过IP访问,登录成功可以获得session,但是配置到域名下后,能正常访问,就是登录后无法获取session,提交登录的域跟当前访问的域是一样,后台控制台有打印登录成功的日志包括用户账号以及sessionid, 登录是ajax登录返回成功后刷新页面,页面头部的状态还是跟没登录前一样,页面获取session打印是空的!   ------------------------- ReNginxTomcat域名下无法获取用户登录的sessian 问题解决了 nginx + tomcat 导致session丢失的问题 niginx 在做反向代理的时候,如果代理的目录地址和用户访问的目录地址不在同一个层级下的时候,即 server {listen 80;server_name www.bzf.com;location / {proxy_pass http://127.0.0.1:8090/sso;}} 如上所示,若用户访问 www.bzf.com,则会被nginx代理到本地8090端口下的sso项目下, tomcat是通过cookie中的JsessionId来判断是否是一个新用户的,使用上述代理方式时,tomcat会将JsessionId写入www.bzf.com域名下的/sso路径下面。 用户下次再访问 www.bzf.com 的时候,发送给服务器的请求拿不到 /sso 路径下的 JsessionId,因此tomcat 会一直认为是一个新用户,这从/sso 路径下的 JSessionId会一直变化也可以看到。 上述分析表明,我们要让用户拿到它上次写入的JsessionId才可以,因为用户访问的域名是 www.dzf.com,这我们不能改变,因此应改变保存JSessionId的cookie的路径,将该路径变为 “/” 即可,这可通过nginx 的 proxy_cookie_path 来设置,将 tomcat 写入的 /sso 路径下的cookie 变为"/"路径下,添加两行代码如下: server {listen 80;server_name www.bzf.com;location / {proxy_pass http://127.0.0.1:8090/sso;proxy_cookie_path /sso/ /;proxy_cookie_path /sso /;}} http://www.thinksaas.cn/group/topic/277531/

aston008 2019-12-02 00:02:18 0 浏览量 回答数 0

问题

SSO

李博 bluemind 2019-12-01 19:32:46 280 浏览量 回答数 2

问题

基于Spring Security OAuth2.0实现单点登录SSO

李博 bluemind 2019-12-01 19:32:46 780 浏览量 回答数 1

问题

怎么解决sso cookie被拷贝泄密问题

爵霸 2019-12-01 20:04:08 977 浏览量 回答数 1

回答

应该是父类里请求了id为sso的action,项目里没有对其进行定义,致使notfound<divclass='ref'> 引用来自“looqy”的评论应该是父类里请求了id为sso的action,项目里没有对其进行定义,致使notfound<divclass='ref'><divclass='ref'> 引用来自“looqy”的评论应该是父类里请求了id为sso的action,项目里没有对其进行定义,致使notfound

爱吃鱼的程序员 2020-06-12 14:16:59 0 浏览量 回答数 0

回答

RAM允许在一个云账号下创建并管理多个身份,并允许给单个身份或一组身份分配不同的权限,从而实现不同用户拥有不同资源访问权限的目的。RAM的功能特性如下: • 集中控制RAM用户及其密钥:管理每个RAM用户及其访问密钥,为用户绑定多因素认证(MFA)设备。 • 集中控制RAM用户的访问权限:控制每个RAM用户访问资源的权限。 • 集中控制RAM用户的资源访问方式:确保RAM用户在指定的时间和网络环境下,通过安全信道访问特定的阿里云资源。 • 集中控制云资源:对RAM用户创建的实例或数据进行集中控制。当用户离开组织时,实例或数据不会丢失。 • 单点登录管理(SSO):支持与企业身份提供商(IdP)进行用户SSO或角色SSO。

LiuWH 2020-03-25 22:15:50 0 浏览量 回答数 0

问题

单点登录sso,从我们自己开发的系统sso到对方的OA系统报错 

kun坤 2020-06-10 10:02:43 3 浏览量 回答数 1

回答

网上的SSO与你这个需求无关。你需要做的是两个系统的账号加以绑定(比如为两个系统设相同密码/或后台账号信息同步一下),然后在你的系统中调用OA原有的页面用程序模拟人的手工登录即可。######既然是两个系统之间的切换,都由你们开发,那完全可以用同一套账号啊,绑定啥的都免了。如果不是统一的账号(两套账号),一般做法都会开发一个库来保存账号之间的匹配关系,然后通过查表获取另一个系统的对应账号并登陆。######首先,你现在的这个做法和SSO没有关系,当然,你也可以改变你们的需求,用SSO来实现整套的单点登录功能。 其次,对于你现在的需求,可以直接建立一个账号的映射关系,然后,两边都可以通过这个映射关系来登录对方的系统。

kun坤 2020-06-11 11:14:23 0 浏览量 回答数 0

问题

测试企业后台管理免登

一痕沙 2019-12-01 21:48:26 3464 浏览量 回答数 5

问题

SSO CAS 单点登录疑问-请教下大家:报错

kun坤 2020-06-06 14:49:54 0 浏览量 回答数 1

问题

ISV 获取管理员免登用户信息失败

简道云 2019-12-01 21:58:52 5240 浏览量 回答数 3

回答

主要看你的用途了,B/S项目加密也没有用。密文用户是看不到的,并且你的加密算法也是明文的。如果仅仅是不想在url中显示这些信息,可以采用post方式进行提交。或者考虑SSO方案。######我现在只是想要验证这种方式的可行性,SSO在后面可能会考, 我只是用这种方式做一个简单,认证->下载服务器,只是不想用HTTPS, 且提交参数不是的明文的,两端的加解密方式只有开发者知道. 客服务端的加密是通过SDK包装发出去.######请大家指导一下方向与思路.######我发现在这个思路有问题, 加密HTTPS是少不了的. ######如果是向服器单向传送是可以的。但应该用rsa非对称加密。如果是双向的,还不如用https 简单。###### 引用来自“lirenqing2000”的评论主要看你的用途了,B/S项目加密也没有用。密文用户是看不到的,并且你的加密算法也是明文的。如果仅仅是不想在url中显示这些信息,可以采用post方式进行提交。或者考虑SSO方案。 这个方案在一些支付网站和开放平台就是这样做的,使用了动态密码、token等技术。可以研究下淘宝、拍拍、支付宝或者paypal等API,这些对你会有帮助。加密和解密模块可以在提交请求和接收请求数据的时候处理。以前采用Rest方式,在项目中使用过。可以采用AES、DES等对称加密算法。增加加密和解密模块对性能有一些影响,这个需要考虑。

kun坤 2020-06-14 09:57:50 0 浏览量 回答数 0

回答

Cookie是一个伟大的发明,它允许Web开发者保留他们的用户的登录状态。但是当你的站点有一个以上的域名时就会出现问题了。在Cookie规范上说,一个cookie只能用于一个域名,不能够发给其它的域名。因此,如果在浏览器中对一个域名设置了一个cookie,这个cookie对于其它的域名将无效。如果你想让你的用户从你的站点中的其中一个进行登录,同时也可以在其它域名上进行登录,这可真是一个大难题。跨二级域名 我们知道cookie是可以跨二级域名来访问,这个很好理解,例如你 www.test1.com 在的web应用程序创建了一个cookie,要想在bbs.test1.com这样的二级域名对应的应用程序中访问,就必须你在创建cookie的时候设置domain参数domain=test1.com。 以asp.net为例 代码如下: [csharp] view plaincopy HttpCookie cookie = new HttpCookie("name", "www.Admin10000.com"); cookie.Domain = "test1.com"; cookie.Path = "/"; Response.Cookies.Add(cookie); 跨顶级域名   如果我不是二级域名而是完全在不同顶级域名中,例如 www.test1.com 所在的web应用程序创建了一个cookie,想要在 www.test2.com 或其二级域名的应用程序中访问,改怎么办呢?我们知道靠常规反的方法是访问不了的,关键我们就是看看有没有方法可以访问。事实是Cookie可以在一定条件下跨域,而不是随心所欲的实现跨域。   我们来做个测试,看看两个站点 www.test1.com 和 www.test2.com 如何实现cookie跨域访问。 按照常规我们需要有2个顶级域名,并且有DNS服务器才能够配置域名,否则我们是无法验证的,但是这里我们也没有必要那么麻烦,我们可以通过修改hosts文件来模拟。在 c:windowssystem32driversetc 中有 hosts文件,在末尾添加上 127.0.0.1 www.test1.com127.0.0.1 www.test2.com 两行,就可以将本机用上面的域名访问本机回环地址了。我们只需要在IIS上部署一套程序,ip为本机回环地址,用两个域名分别访问就可以了。   我们新建三个页面,分别是 Default.aspx、SSO.ashx、GetCookie.aspx。   其中Default.aspx是 www.test1.com 的页面,访问的地址是 http://www.test1.com/Default.aspx。看一下前台代码,它没有任何后台代码 [html] view plaincopy <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Admin10000.Web.Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <script type="text/javascript"> var _frm = document.createElement("iframe"); _frm.style.display = "none"; _frm.src = "http://www.test2.com/SSO.ashx"; document.body.appendChild(_frm); </script> </div> </form> </body> </html> 另外一个是 SSO.ashx 页面,我们认为它是 www.test2.com 的页面,前台没有任何代码,后台代码如下: [csharp] view plaincopy using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Services; using System.Web.SessionState; namespace Admin10000.Web { /// <summary> /// $codebehindclassname$ 的摘要说明 /// </summary> [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class SSO : IHttpHandler { public void ProcessRequest(HttpContext context) { HttpCookie cookie = new HttpCookie("name", "www.Admin10000.com"); cookie.Domain = "test2.com"; cookie.Path = "/"; cookie.Expires = DateTime.Now.AddMinutes(10000); context.Response.Cookies.Add(cookie); context.Response.ContentType = "text/plain"; context.Response.AddHeader("P3P", "CP=CAO PSA OUR"); context.Response.Write(""); } public bool IsReusable { get { return false; } } } } 最后是 GetCookie.aspx 页面,它同样是www.test2.com下的页面,没有前台代码,只有后台代码: [csharp] view plaincopy using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace Admin10000.Web { public partial class GetCookie : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (Request.Cookies["name"] != null) { Response.Write(Request.Cookies["name"].Value); } } } } 好了,现在我们访问测试,通过访问 ttp://www.test1.com/Default.aspx 之后,这时会通过iframe载入调用SSO.ashx这个页面,执行后台代码创建cookie,然后访问 http://www.test2.com/GetCookie.aspx 我们得到了相应的cookie。说明在www.test1.com下创建的cookie在www.test2.com下是可以访问到的。 要注意的地方:   admin10000.com 提示 SSO.ashx 的后台代码中有一句:context.Response.AddHeader("P3P", "CP=CAO PSA OUR"); 是用来设置P3P响应头。是因为IE浏览器支持的P3P导致iframe跨站点时cookie被阻止,无法创建cookie。(FireFox目前还不支持P3P安全特性,FireFox自然也不存在此问题。不需要添加P3P响应头。)   通过iframe的src属性将test1.com域下的cookie值作为get参数重定向到test2.com域下SSO.ashx页面上,SSO.ashx获取test1.com域中所传过来的cookie值,并将所获取到值写入cookie中,这样就简单的实现了cookie跨域的访问。   另外Default.aspx页面也可改为JS调用形式: [html] view plaincopy <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Admin10000.Web.Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <script type="text/javascript" src="http://www.test2.com/SSO.ashx"></script> </div> </form> </body> </html>

小旋风柴进 2019-12-02 02:00:58 0 浏览量 回答数 0

回答

遇到这种问题,我的回答总是一样的: 别瞎JB折腾了,在后台自己封装一次,然后在同一个域名之下调用吧! ######少了一个callback参数,并且服务返回的内容必须是callback包的###### 看下我的这个例子,我当初模仿京东和淘宝做单点登录,跨域问题处理 <script>varsuccess_count=0;varerror_count=0;$.ajax({type:"get",dataType:"jsonp",url:"http://sso:8080/getAllDomain?callback=?",crossDomain:true,success:function(domains){if(domains){$.each(domains,function(){$.ajax({type:"get",dataType:"jsonp",url:this,crossDomain:true,success:function(data){success_count++;console.log("success");},error:function(){error_count++;}});})}}});</script> 这是后端 @RequestMapping("getExitAllDomain")publicvoidgetExitAllDomain(HttpServletRequesthttpServletRequest,HttpServletResponsehttpServletResponse){List<String>allDomain=newArrayList<String>();allDomain.add("http://sso:8080/delCookie?t=a:8080&callback=?");allDomain.add("http://sso:8080/delCookie?t=b:8080&callback=?");allDomain.add("http://sso:8080/delCookie?t=c:8080&callback=?");allDomain.add("http://sso:8080/delCookie?t=d:8080&callback=?");PrintWriterout=null;try{out=httpServletResponse.getWriter();}catch(IOExceptione){e.printStackTrace();}Stringcallback=httpServletRequest.getParameter("callback");out.println(callback+String.format("(%s);",JSON.toJSONString(allDomain)));}  ######如果用jsonp看下服务器返回的是不是回调函数类型,跨域建议使用cors###### 别人说设置jsonp是说在jquery的ajax方法的时候,你封装的那个不知道...###### 在jQuery的ajax方法下用jsonp,你那个封装方法虽然看起来差不多但是具体里面对跨域的处理不知道写了什么,只能自己另外做处理###### 先研究一下jsonp的实现方法再用###### 可以看我的这篇,https://my.oschina.net/tp123/blog/1506646 希望对你有帮助###### 解决了###### Stringorigin=request.getHeader( "Origin") ; if(StringUtils. isNotBlank(origin)){response.setHeader( "Access-Control-Allow-Origin" ,origin) ; //允许访问的域 response.setHeader( "Access-Control-Allow-Methods" , "POST,GET") ; //允许GET、POST的外域请求 response.setHeader( "Access-Control-Allow-Credentials" , "true") ; //允许请求带cookie到服务器 response.setContentType( "application/json;charset=utf-8") ; //设定JSON格式标准输出、及编码}

优选2 2020-06-09 15:44:15 0 浏览量 回答数 0

回答

遇到这种问题,我的回答总是一样的: 别瞎 JB 折腾了,在后台自己封装一次,然后在同一个域名之下调用吧! ######少了一个callback参数,并且服务返回的内容必须是callback包的###### 看下我的这个例子,我当初模仿京东和淘宝做单点登录,跨域问题处理 <script> var success_count = 0; var error_count = 0; $.ajax({ type: "get", dataType: "jsonp", url: "http://sso:8080/getAllDomain?callback=?", crossDomain: true, success: function (domains) { if (domains) { $.each(domains, function () { $.ajax({ type: "get", dataType: "jsonp", url: this, crossDomain: true, success: function (data) { success_count++; console.log("success"); }, error: function () { error_count++; } }); }) } } }); </script> 这是后端 @RequestMapping("getExitAllDomain") public void getExitAllDomain(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { List<String> allDomain = new ArrayList<String>(); allDomain.add("http://sso:8080/delCookie?t=a:8080&callback=?"); allDomain.add("http://sso:8080/delCookie?t=b:8080&callback=?"); allDomain.add("http://sso:8080/delCookie?t=c:8080&callback=?"); allDomain.add("http://sso:8080/delCookie?t=d:8080&callback=?"); PrintWriter out = null; try { out = httpServletResponse.getWriter(); } catch (IOException e) { e.printStackTrace(); } String callback = httpServletRequest.getParameter("callback"); out.println(callback + String.format("(%s);", JSON.toJSONString(allDomain))); }  ######如果用jsonp看下服务器返回的是不是回调函数类型,跨域建议使用cors###### 别人说设置jsonp是说在jquery的 ajax方法的时候,你封装的那个不知道...###### 在jQuery的ajax方法下用jsonp,你那个封装方法虽然看起来差不多但是具体里面对跨域的处理不知道写了什么,只能自己另外做处理###### 先研究一下jsonp的实现方法再用###### 可以看我的这篇,https://my.oschina.net/tp123/blog/1506646  希望对你有帮助###### 解决了###### String origin = request.getHeader("Origin"); if(StringUtils.isNotBlank(origin)){ response.setHeader("Access-Control-Allow-Origin", origin); // 允许访问的域 response.setHeader("Access-Control-Allow-Methods", "POST,GET");// 允许GET、POST的外域请求 response.setHeader("Access-Control-Allow-Credentials", "true"); // 允许请求带cookie到服务器 response.setContentType("application/json; charset=utf-8"); // 设定JSON格式标准输出、及编码 }

爱吃鱼的程序员 2020-05-31 13:06:55 0 浏览量 回答数 0

回答

Re建议阿里云oss增加图片缩略功能 完全同意,用sso的图片类应该很多,多点对图片的操作很是需要

k_bryant 2019-12-02 01:17:56 0 浏览量 回答数 0

问题

CAS SSO配置后,客户端请求登陆成功、回跳的时候报错 :报错

kun坤 2020-06-14 17:56:27 0 浏览量 回答数 1

问题

CAS SSO配置后,客户端请求登陆成功、回跳的时候报错:配置报错 

kun坤 2020-06-02 16:43:05 0 浏览量 回答数 1

问题

CorpSecret

棒槌宝宝 2019-12-01 21:52:05 770 浏览量 回答数 0

问题

CAS SSO配置后,客户端请求登陆成功、回跳的时候报错-配置报错

montos 2020-06-01 21:22:12 0 浏览量 回答数 1

回答

http://ddtalk.github.io/dingTalkDoc/?spm=a3140.7785475.0.0.BxVeQf#微应用后台管理员免登 可以参考一下这部分文档 啊,sso的部分是用于oa管理后台免登的

谦吉 2019-12-02 01:54:59 0 浏览量 回答数 0

问题

获取部门信息失败:errcode40014errmsg不合法的accesstoken

略~~~ 2019-12-01 21:13:52 8354 浏览量 回答数 3

问题

服务器,域名,和安全证数

1821732788988341 2019-12-01 19:06:58 213 浏览量 回答数 2

问题

关于ios版钉钉内置浏览器安全证书问题

shengqi1 2019-12-01 21:23:28 2798 浏览量 回答数 1

问题

免登CODE没问题Accesstoken没问题但是最终确有问题

hqs316 2019-12-01 21:18:14 1374 浏览量 回答数 1

回答

是的,会自动跳到B节点不能可以在Tomcat之间做session复制 ,但是ession 复制会有一些副作用,最好使用第三方共享内存(Memcached、Redis等)来作SSO。在共享内存中保存用户会话,客户端Cookie中保存会话的Id。为保证万无一失,还可以建一张表,用于保存用户会话(共享内存不可用时,保证用户登录的正常)。

落地花开啦 2019-12-02 02:21:05 0 浏览量 回答数 0
阿里云大学 云服务器ECS com域名 网站域名whois查询 开发者平台 小程序定制 小程序开发 国内短信套餐包 开发者技术与产品 云数据库 图像识别 开发者问答 阿里云建站 阿里云备案 云市场 万网 阿里云帮助文档 免费套餐 开发者工具 企业信息查询 小程序开发制作 视频内容分析 企业网站制作 视频集锦 代理记账服务 企业建站模板