java AD域跨域验证失败

问题描述

使用该方法在同一个域中验证用户成功,但是在不同域中验证失败。例如:有两个域A,B将项目部署在A域中,或取B域中的账户作验证。如果跨域就验证失败。DirContextctx=null;Stringaccount=loginAction.getLoginName();//设置访问账号Stringpassword=loginAction.getPassword();//设置账号密码Stringhost=SaiLunAfterItem.DOMAIN_IP;//AD服务器Stringroot="389";//rootStringdomain=SaiLunAfterItem.DOMAIN;//邮箱的后缀名Stringuser=account.indexOf(domain)>0?account:account+domain;log.info("用户名=="+user);Hashtable<String,String>env=newHashtable<String,String>();env.put(Context.PROVIDER_URL,"ldap://"+host+":"+root);env.put(Context.SECURITY_AUTHENTICATION,"simple");env.put(Context.SECURITY_PRINCIPAL,user);env.put(Context.SECURITY_CREDENTIALS,password);env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");try{ctx=newInitialDirContext(env);log.info("SaiLunLoginActionAD域验证成功!");}catch(AuthenticationExceptione){log.error("SaiLunLoginActionAD域验证失败!!!",e);returnfalse;}catch(Exceptione){log.error("SaiLunLoginActionAD域验证异常!!!",e);returnfalse;}finally{if(ctx!=null){try{ctx.close();}catch(NamingExceptione){log.error("SaiLunLoginActionInitialDirContext关闭异常...",e);}}}

时间: 2024-09-17 03:48:24

java AD域跨域验证失败的相关文章

php main 与 iframe 相互通讯类(同域/跨域)

main 与 iframe 相互通讯类 之前写过一篇<iframe与主框架跨域相互访问方法>,介绍了main与iframe相互通讯的原理,不了解原理的可以先看看. 今天把main与iframe相互通讯的方法封装成类,主要有两个文件, JS:FrameMessage.js 实现调用方法的接口,如跨域则创建临时iframe,调用同域执行者. PHP:FrameMessage.class.php 实现接收到跨域请求时,根据参数返回执行方法的JS code. 功能如下: 1.支持同域与跨域通讯 2.传

Iframe高度自适应(兼容IEFirefox、同域跨域)

在实际的项目进行中,很多地方可能由于历史原因不得不去使用iframe,包括目前正火热的应用开发也是如此. 随之而来的就是在实际使用iframe中,会遇到iframe高度的问题,由于被嵌套的页面长度不固定而显示出来的滚动条,不仅影响美观,还会对用户操作带来不便.于是自动调整iframe的高度就成为本文的重点. 采用JavaScript来控制iframe元素的高度是iframe高度自适应的关键,同时由于JavaScript对不同域名下权限的控制,引发出同域.跨域两种情况. 同域时Iframe高度自适

iframe同域跨域高度自适应的实现

本效果的实现需要父页面和子页面都需要作相应的设置 以下是具体的设置及代码 一.父层页面的设置 1.是父层的iframe引入  代码如下 复制代码 <iframe frameborder="0" scrolling="no" width="100%" src="iframe.html" id="paopaowang"></iframe> 2.父层要设计一个域名的变量 domain  代

Ajax跨域请求 JSON JSONP

同源策略和跨域-总结 目录: 1.同源策略 2.跨域 3.几种跨域技术   1.同源策略 什么叫同源? URL由协议.域名.端口和路径组成,如果两个URL的协议.域名和端口相同,则表示他们同源.相反,只要协议,域名,端口有任何一个的不同,就被当作是跨域. e.g. 对于http://store.company.com/dir/page.html进行同源检测: URL 结果 原因 http://store.company.com/dir2/other.html 成功 仅路径不同 http://st

php利用P3P头实现跨域设置cookie

在开发中,我们碰到的跨域主要还是纠结在IE,页面中的IFRAME或者FRAME或者JS跨域的时候,IE有安全策略限制页面不带cookie,但是如果我们加上P3P,就没有这策略的限制.这也是P3P来突破跨域的可行前提,其实在firefox chorme类浏览器里面是没有这个限制的. 首先我们了解一下P3P是什么? P3P(Platform for Privacy Preferences)是W3C公布的一项隐私保护推荐标准,以为用户提供隐私保护. P3P标准的构想是:Web 站点的隐私策略应该告之访

前端跨域整理

前言 原文地址:前端跨域总结 博主博客地址:Damonare的个人博客 相信每一个前端er对于跨域这两个字都不会陌生,在实际项目中应用也是比较多的.但跨域方法的多种多样实在让人目不暇接.老规矩,碰到这种情况,就只能自己总结一篇博客,作为记录. 正文 1. 什么是跨域? 跨域一词从字面意思看,就是跨域名嘛,但实际上跨域的范围绝对不止那么狭隘.具体概念如下:只要协议.域名.端口有任何一个不同,都被当作是不同的域.之所以会产生跨域这个问题呢,其实也很容易想明白,要是随便引用外部文件,不同标签下的页面引

深入分析Javascript跨域问题_javascript技巧

跨域是什么? 假设a.com/get.html需要获取b.com/data.html中的数据,而这里a.com和b.com并不是同一台服务器,这就是跨域跨域会涉及到Javascript的同源策略,简单来说就是为了保护网站的安全,不被外域(非同源)服务器的js修改本网站内容. 引用一个表格,看一下引起跨因的条件有哪些: 但是有时候我们确实需要这么做,那么我们有哪些方法呢? 1.JsonP 提到跨域不能不先提及jsonp.jsonp其实是JavacScript Object Notation wit

详解AngularJS如何实现跨域请求_AngularJS

跨域,前端开发中经常遇到的问题,AngularJS实现跨域方式类似于Ajax,使用CORS机制. 下面阐述一下AngularJS中使用$http实现跨域请求数据. AngularJS XMLHttpRequest:$http用于读取远程服务器的数据 $http.post(url, data, [config]).success(function(){ ... }); $http.get(url, [config]).success(function(){ ... }); $http.get(ur

Spring MVC 4.2 CORS 跨域访问

跨站 HTTP 请求(Cross-site HTTP request)是指发起请求的资源所在域不同于该请求所指向资源所在的域的 HTTP 请求.比如说,域名A(http://domaina.example)的某 Web 应用程序中通过标签引入了域名B(http://domainb.foo)站点的某图片资源(http://domainb.foo/image.jpg),域名A的那 Web 应用就会导致浏览器发起一个跨站 HTTP 请求.在当今的 Web 开发中,使用跨站 HTTP 请求加载各类资源(