java 中怎么访问windows安全日志
发表于:2025-12-04 作者:千家信息网编辑
千家信息网最后更新 2025年12月04日,本篇文章给大家分享的是有关java 中怎么访问windows安全日志,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。//查询window日
千家信息网最后更新 2025年12月04日java 中怎么访问windows安全日志
本篇文章给大家分享的是有关java 中怎么访问windows安全日志,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
//查询window日志public void queryWindowsData(String ip,String user,String space,String password,String domain){ try { //创建session认证连接 JISession dcomSession =JISession.createSession(domain,user,password); dcomSession.useSessionSecurity(true); JIProgId progId = JIProgId.valueOf("WbemScripting.SWbemLocator"); progId.setAutoRegistration(true); JIComServer comServer = new JIComServer(progId, ip, dcomSession); IJIDispatch wbemLocator = (IJIDispatch) JIObjectFactory.narrowObject(comServer.createInstance().queryInterface(IJIDispatch.IID)); //parameterstoconnecttoWbemScripting.SWbemLocator JIVariant[] results = wbemLocator.callMethodA("ConnectServer", new Object[]{ JIVariant.OPTIONAL_PARAM(), (space == null) ? JIVariant.OPTIONAL_PARAM() : new JIString(space) , JIVariant.OPTIONAL_PARAM(), JIVariant.OPTIONAL_PARAM(), JIVariant.OPTIONAL_PARAM() , JIVariant.OPTIONAL_PARAM() , 0 , JIVariant.OPTIONAL_PARAM() }); IJIDispatch wbemServices=(IJIDispatch)JIObjectFactory.narrowObject(results[0].getObjectAsComObject()); //String sql = "SELECT * FROM Win32_ComputerSystem"; SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Calendar cc=Calendar.getInstance(); //utc时间-8 //eventcode = 4769 表示通过加域登录的用户 cc.add(Calendar.HOUR_OF_DAY, -9);//1小时前 ,8是减去UTC时间 String dateString = sdf.format(cc.getTime()); //WQL查询日志 String QUERY_FOR_ALL_LOG_EVENTS = "Select * from Win32_NTLogEvent Where Logfile = 'Security' and " + "EventCode = '4769' and EventType = 4 and TimeWritten >' "+dateString+"'"; try { results = wbemServices.callMethodA("ExecQuery", new Object[]{new JIString(QUERY_FOR_ALL_LOG_EVENTS), JIVariant.OPTIONAL_PARAM(), JIVariant.OPTIONAL_PARAM(), JIVariant.OPTIONAL_PARAM()}); IJIDispatch wOSd = (IJIDispatch) JIObjectFactory.narrowObject((results[0]).getObjectAsComObject()); int count = wOSd.get("Count").getObjectAsInt(); IJIComObject enumComObject = wOSd.get("_NewEnum").getObjectAsComObject(); IJIEnumVariant enumVariant = (IJIEnumVariant) JIObjectFactory.narrowObject(enumComObject.queryInterface(IJIEnumVariant.IID)); IJIDispatch wbemObject_dispatch = null; for (int c = 0; c < count; c++) { Object[] values = enumVariant.next(1); JIArray array = (JIArray) values[0]; Object[] arrayObj = (Object[]) array.getArrayInstance(); for (int j = 0; j < arrayObj.length; j++) { // (IJIDispatch) JIObjectFactory.narrowObject(((JIVariant) arrayObj[j]). wbemObject_dispatch = (IJIDispatch) JIObjectFactory.narrowObject(((JIVariant) arrayObj[j]).getObjectAsComObject()); } String str = (wbemObject_dispatch.callMethodA("GetObjectText_", new Object[]{1}))[0] .getObjectAsString2(); query(str); } } catch (JIException e) { e.printStackTrace(); } } catch (Exception e) { e.printStackTrace(); }}以上就是java 中怎么访问windows安全日志,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
日志
安全
时间
更多
知识
篇文章
查询
实用
小时
就是
工作会
文章
用户
看吧
知识点
行业
详情
资讯
资讯频道
跟着
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
关系型数据库的实际意义
point数据库中怎么翻译
多益网络技术岗五险一金
搭建红月服务器
初中生软件开发需要学什么
网络安全技术人员
清理其他帐号聊天数据库
如何修改服务器的安全设置
丰润区企业网络技术售后服务
如何检查服务器的网络是否正常
hp服务器系统重装
浪潮服务器安装无线网卡
网络安全教育发言稿400字
学术奖励数据库
软件开发过程监控有什么用
安卓软件开发拟器
哨兵数据库
怎么配置提交服务器的脚本
数据库money类型
信息安全需要学数据库系统吗
数据库表字段存储
上海岑茂网络技术有限公司
爬山虎翻译软件开发
工信部服务器安全备案
服务器清空硬盘数据
云服务器公网流量收费标准
学习通显示无法连接到服务器
怎么给服务器漏洞打安全补丁
数据库来了
dbt数据库