跨子域域验证

【Windows Server 2019】活动目录 (Active Directory) ——子域的安装和验证 博文详细介绍了在同一个区域内将一台服务器提升为子域控制器,同时验证DNS,子域控制器和子域和父域的信任关系。 阅读详情

 public class CommonFun
    {
     

        /// <summary>
        /// [获取/设置]认证类型,比如NTLM等
        /// </summary>
        public string AuthType
        {
            get
            {
                return fAuthType;
            }
            set
            {
                fAuthType = value;
            }
        }

        /// <summary>
        /// 验证用户帐号是否OK,如果成功,返回true,否则返回false
        /// </summary>
        /// <returns></returns>
        public bool Authentication(string userCode, string password)
        {
            if (string.IsNullOrEmpty(userCode))
            {
                return false;
            }
            try
            {
                userCode = this.GetDomainPrefixName() + @"\" + userCode;
                DirectoryEntry entry = new DirectoryEntry(fLDAPPath, userCode, password);
                Object obj = entry.NativeObject;
                DirectorySearcher search = new DirectorySearcher(entry);
                search.Filter = string.Format("(AccountName={0})", GetNoDomainPrefixName(userCode));
                search.PropertiesToLoad.Add("cn");
                SearchResult result = search.FindOne();
                if (result == null)
                {
                    return false;
                }

                // 更新目录中的用户的新路径
                fLDAPPath = result.Path;
                fFilterAttribute = (string)result.Properties["cn"][0];
                return true;
            }
            catch (Exception ex)
            {
                return false;
            }

        }

        /// <summary>
        /// 检查域中是否包含该帐号(不需要密码也可以验证)
        /// </summary>
        /// <returns></returns>
        public bool CheckExist(string userCode)
        {
            //检查是否有重复的帐号
            DirectoryEntry entry = new DirectoryEntry(fLDAPPath);
            Object obj = entry.NativeObject;
            DirectorySearcher search = new DirectorySearcher(entry);
            search.Filter = string.Format("(AccountName={0})", GetNoDomainPrefixName(userCode));
            search.PropertiesToLoad.Add("cn");
            SearchResult result = search.FindOne();
            return (result != null);
        }
        /// <summary>
        /// 修改密码,修改成功后返回true,否则false
        /// </summary>
        /// <param name="newPassword"></param>
        /// <returns></returns>
        public bool ChangePassword(string userCode,string oldPassword,string newPassword)
        {
            if (string.IsNullOrEmpty(userCode))
            {
                return false;
            }

            try
            {
                userCode = this.GetDomainPrefixName() + @"\" + userCode;
                DirectoryEntry entry = new DirectoryEntry(fLDAPPath, userCode, oldPassword);
                Object obj = entry.NativeObject;
                DirectorySearcher search = new DirectorySearcher(entry);
                search.Filter = string.Format("(AccountName={0})", GetNoDomainPrefixName(userCode));
                search.PropertiesToLoad.Add("cn");
                SearchResult result = search.FindOne();
                if (result == null)
                {
                    throw new Exception(string.Format("找不到相应的用户:{0}", userCode));
                }
                fLDAPPath = result.Path;
                fFilterAttribute = (string)result.Properties["cn"][0];
                entry.Path = fLDAPPath;

                entry.Invoke("ChangePassword", oldPassword, newPassword);
                entry.CommitChanges();
                return true;
            }
            catch(Exception ex)
            {
                return false;
            }
        }

        /// <summary>
        /// 返回没有域前缀的名称

        /// </summary>
        /// <returns></returns>
        private string GetNoDomainPrefixName(string userCode)
        {
            string userName = userCode;
            if (userName.IndexOf("\\") != -1)
            {
                userName = userName.Remove(0, userName.IndexOf("\\") + 1);
            }
            return userName;
        }
        private string GetDomainPrefixName()
        {
            string domainPrefixName = "";
            int preDI = fLDAPPath.IndexOf(".");
            if (preDI> 7)
            {
                domainPrefixName = fLDAPPath.Substring(7, preDI);
            }
            return domainPrefixName;
        }
    }

【web】SESSION的原理以及跨域验证 一、适用范围 仅限于web端的身份验证,和app端使用的jwt验证是不同的。 二、SESSION 为什么存在SESSION 首先,HTTP是无状态的,每次请求相互独立,这样就会造成,你不认识我,我也不认识你。 但显然这样是不能满足需求的,对于用户体系的网址,我们需要知道每次请求的用户是谁,这样才可以在这个基础上对用户的数据进行操作。 那么,如果服务器保存一个用户标识,每次客户端请求数据都带着标识,这个服务器就知道是哪个用户进行的操作,这也就是为什么存在SESSION SESSION的生成和校验 客户端第一 阅读详情

相关推荐

windows2008 server子域加入父域时提示错误 域已经存在

windows2008 server子域加入父域时提示错误:域已经存在 原因: 克隆多台虚拟机的操作系统的SID都一样 修改SID: 打开如下位置,运行C:\Windows \System32\sysprep\sysprep.exe(生产环境慎用,初始化很多项目) 勾选通用项,并开始。 总结 以上所述是小编给大家介绍的windows2008 server子域加入父域时提示错误 域已经存在,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对软件开发网网站的支持! 如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

客户机加入子域时遇到的小问题及解决方法

近日学习域,主域是itet.com,子域是tianjin.itet.com。主域的IP地址为192.168.11.101,子域的IP地址为192.168.11.105,要加入子域的客户机IP地址为192.168.11.108 在客户机要加入子域的时候出现了如下图所示的小错误 我们点击详细信息看看到底是怎么回事 经过查看详细信息,我们可以初步判断出是子域...

weixin_33910460的博客 418

智能车数字图像处理算法入门及C语言实现

智能车图像的最最基本入门算法介绍及C语言实现,二值化 - 特征识别 - 补线 - 中心巡线 - 偏差曲率计算。

不想随波逐流的大学生一枚,我们每个人都在努力奔跑 5109

ASP.NET应用域验证失败

表象:网页域验证失败,能ping通域服务器,但telnet指定端口失败。 系统日志:Netlogon 服务报错,RPC 服务器不可用。   管用大招:重启机器 下回估计:手工启动失败的相关服务。(等待下回出错)   诱因未知,待查。   诱因是因为操作系统没有打补丁MS10-101。 打上安全补丁,问题解决。(2012-12-07)

老友记茶舍 470

微信小程序URL Link全解析:从生成原理到实战应用(附Java代码)

本文深入解析微信小程序URL Link的生成原理与实战应用。URL Link是微信官方提供的智能路由协议,通过中间页实现外部链接安全跳转至小程序指定页面。文章详细阐述了其权限模型、环境版本差异及跳转机制,并提供了包含令牌管理、异常处理和性能优化的健壮Java实现方案,助力开发者构建高可用的链接生成服务。

weixin_29327525的博客 1214

MagicDraw小白必看:BDD图中模块的5种属性详解(含SysML v1.6最新端口配置指南)

本文面向MagicDraw初学者,详细解析SysML BDD图中模块的五种核心结构属性,包括组成部分、引用、值、约束属性及端口。重点阐述了SysML v1.6中端口设计的范式转移,对比了完整端口与代理端口的区别与应用场景,并通过实战案例指导如何利用代理端口进行清晰的接口定义与系统架构设计。

rum55的博客 372

跨域SSO的实现

翻译自CodeProject网站ASP.NET9月份最佳文章:Single Sign On (SSO) for cross-domain ASP.NET applications。 翻译不妥之处还望大家多多指导、相互交流。 文章分为两部分:架构设计和程序实现,此为第一篇即:架构设计或者叫设计蓝图(Part-I - The design blue print)。:) 简介 周一...

weixin_30900589的博客 103

压缩包密码破解工具ZIP Cracker2.0.1.2 正式版

一款多功能文件密码破解工具,支持ZIP、RAR、Office等主流加密格式,提供CPU/GPU双模式破解。该软件采用黑客风格界面,具备环境自检修复功能,支持实时监控硬件使用率。内置hashcat等专业破解工具,通过拖拽文件即可快速破解,GPU模式速度可达CPU的10-100倍。最新版本优化了中文路径支持,并提升了启动速度。

bfq05234214的博客 480

翻译:Single Sign-On for Everyone

  前一阵写了一篇Blog,给出了一些SSO的资料(http://www.cnblogs.com/AndersLiu/archive/2007/05/25/760041.html)。现在把其中的一篇翻译出来。 翻译:Single Sign-On for Everyone 原文地址:http://bbs.hidotnet.com/22656/ShowPost.aspx 单点登录(Single S...

weixin_34258838的博客 95

RNA-seq分析:Step4(比对)

预处理之后的fastq文件,可以使用HISAT2软件将reads比对至参考基因组上。HISAT2软件将reads比对至参考基因组上的步骤如下:1. 对参考基因组进行建索引。对参考基因组进行预处理,生成索引文件,包括基因组序列的FM索引和SA索引。2. 将原始的reads进行预处理。包括去除接头序列、去除低质量的碱基,以及进行过滤,得到质量较高的、可靠的reads。3. 利用建立的FM索引和SA索引,将处理后的reads与参考基因组进行比对。首先,通过FM索引,快速找到与reads匹配的可能位置;

沉香best的博客 2599

【推荐100个unity插件之10】Unity Cinemachine最全的最详细的虚拟相机介绍,详细案例讲解,快速上手

相信很多同学都用过Unity的Cinemachine插件,使用它可以很方便地实现一些摄像机效果,比如摄像机追踪、推拉镜头、分镜等效果。Cinemachine的知识特别的多又很常用,本来是想做一期来讲一下的,结果搜索发现已经有人做过了,而且内容挺全的,但是内容可能比较啰嗦,还有部分没有补充,所以我就先转载下来,后续有时间再优化修改补充,觉得内容不错的,很欢迎大家去支持原作者。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 2万+

域名/子域名接管漏洞

子域接管发生在一个组织的子域名指向了一个已不再控制的资源(例如,SaaS服务、云存储、第三方服务等),从而使得攻击者可以注册该资源并接管子域名。这种漏洞可能导致各种安全问题,包括数据泄漏、钓鱼攻击、会话劫持等。公司有一个子域名(如sub.example.com),该子域名曾经指向某个外部服务(如GitHub Pages、Heroku、AWS S3等)。

大河之犬的博客 1518

ThingsBoard3.9.1规则引擎方式发送钉钉通知消息

thingsboard3.9.1/4.0规则链方式发送钉钉通知消息。

hssjf的专栏 529

子域名接管劫持

子域名接管

qq_50854662的博客 1151

手把手教你学Simulink--基于微电网的建模与仿真场景实例:独立运行模式下微电网的能量管理系统设计

本文详细介绍了使用Simulink对独立运行微电网能量管理系统进行建模与仿真的完整流程。主要包括:系统结构设计(分布式能源、储能系统、负荷等模块)、建模步骤(从创建项目到实现能量管理策略)、仿真设置与结果分析。通过建立基于规则的控制逻辑和优化调度算法,实现微电网的自主运行和能量优化管理。文章还提供了参数优化和多目标改进建议,为新能源和智能电网领域的研究与应用提供了实用指导。

MHD0815的博客 8581

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

深入解析子域名接管(Subdomain Takeover)漏洞

  最近在HackerOne上看到了几个子域名接管方面的漏洞,几个漏洞都可以轻松就对子域获得控制权,并且获得了来自企业的高额奖金。在国外看到了这篇文章,粗略翻译了下,也顺便围绕这个话题说说吧,相关漏洞案例可以去H1搜索“subdomain takeover”查看。 0x01 前言 子域名接管漏洞通常被滥用于以下几个目的:恶意软件分发、网络钓鱼/鱼叉式网络钓鱼、XSS 、身份验证绕过等等。...

玄道的网安博客 5867

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Nginx跨域配置

Nginx跨域配置

虫虫的博客 2万+

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

攻克B站评论爬取难题:Cookie域验证失败的10种实战解决方案

你是否在使用BilibiliCommentScraper时频繁遭遇"登录状态失效"?是否被Cookie相关的PermissionError反复折磨?本文将深入剖析B站评论爬虫中的Cookie域验证问题,提供从基础排查到高级绕过的完整解决方案,让你的爬虫7×24小时稳定运行。 ## 问题诊断:Cookie失效的典型症状与影响范围 B站评论爬虫依赖Cookie维持用户会话状态,当Cookie域验证...

gitblog_07588的博客 600

Nginx 跨域

原文地址 文章目录一 跨域概述1.1 同源策略1.2 跨域简介1.3 跨域处理流程二 CORS介绍2.1 CORS实现2.2 请求类型三 Nginx跨域配置3.1 配置语法2.2 配置示例三 跨域配置环境准备3.1 Nginx02环境预设3.2 Nginx03环境预设四 简单请求跨域4.1 单域名配置4.2 单域名确认验证4.3 多域名配置方法一4.4 方法一确认验证4.5 多域名配置方法二4.6 方法二确认验证4.7 多域名配置方法三4.8 方法三确认验证五 复杂请求跨域5.1 复杂请求5.2 复杂请求配

@日月空@的博客 637

SpringBoot处理跨域问题详解

跨域的本质是浏览器的同源策略(Same Origin Policy)导致的安全限制:浏览器会阻止前端页面从一个「源」去请求另一个「源」的资源,只有满足「同源」条件的请求才会被允许。「源」由协议 + 域名(IP) + 端口三者共同组成,三者全部相同才是「同源」,任意一个不同则为「跨域」。示例场景是否同源原因→是协议、域名、端口全相同→否端口不同→否协议不同(http vs https)→否域名不同(主域相同但子域不同)→否IP(域名)不同。

秃了也弱了 1077

内网后渗透攻击--跨域攻击

主要介绍内网后渗透中的跨域攻击

hj06112的博客 1241

百度 AJAX跨域访问

[code="java"] AJAX跨域验证 AJAX跨域验证 var xmlHttp; function createXMLHttpRequest() {     if (window.ActiveXObject) {         xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");     }     else...

张玉龙 368

跨域SSO

跨域SSO的实现之一:架构设计 翻译自CodeProject网站ASP.NET9月份最佳文章:Single Sign On (SSO) for cross-domain ASP.NET applications。 翻译不妥之处还望大家多多指导、相互交流。 文章分为两部分:架构设计和程序实现,此为第一篇即:架构设计或者叫设计蓝图(Part-I - The design

石头视角 491

跨域SSO的实现之一:架构设计

作者:Parry  来源:博客园  时间:2010-11-02  阅读:503 次  原文链接   [收藏]   整页浏览<br />小提示:点击可切换浏览摘要:翻译自CodeProject网站ASP.NET9月份最佳文章:Single Sign On (SSO) for cross-domain ASP.NET applications。 翻译不妥之处还望大家多多指导、相互交流。 ......<br /> [1] 跨域SSO的实现之一:架构设计<br />[2] 跨域SSO的实现之一:架构设计 <br

Houluoxuan_168的专栏 1181
上一篇: 玩转dtree
下一篇: ExcelHelper
萧萧西风
博客等级 码龄18年 18粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值