Powershell 比较AD和Exchange的用户登录时间
今天早上朋友问我如何获取指定某个时间段的AD用户登录时间和相关的邮箱登录时间。
豆子公司的Exchange已经转移到Office365上,首先远程的导入AD模块,本地导入MSOnline的模块,这样我就可以远程访问AD和Office365了
下面是一个例子,判断90天没有登录的AD账号,并把其中30天没有登陆邮箱的账号都找出来
# 导入AD模块 $s= New-PSSession -ComputerName "syddc01" Invoke-Command -Session $s {Import-Module activedirectory} Import-PSSession -Session $s -Module activedirectory #导入MSOnline模块 $cred = Get-Credential "yli@syd.ddb.com" Import-Module MSOnline Set-ExecutionPolicy remotesigned Connect-MsolService -Credential $cred#连接到Office365 $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell/ -Credential $Cred -Authentication Basic -AllowRedirection Import-PSSession $session$when1=((get-date).AddDays(-90)).Date $when2=((get-date).AddDays(-30)).Date#获取90天内未登陆的账号信息 $users=get-aduser -Filter {(lastlogontimestamp -like '*') -and (emailaddress -like '*')} -Properties * | select name, lastlogontimestamp, @{n="Logon";e={[datetime]::FromFileTime($_.lastlogontimestamp.tostring())}} | Where-Object {$_.Logon -lt $when1}#获取其中30天未登录邮箱的账号信息 foreach($user in $users){ if($a=Get-Mailbox $user.Name -ErrorAction SilentlyContinue ){ $a | get-mailboxstatistics | Where-Object { $_.lastlogontime -lt $when2} | select displayname,lastlogontime } }
结果如下
这只是一个测试的脚本,验证一下思路,并不完善,比如信息的过滤可以考虑用filter 而不是where-object;缺少异常处理,用户登录账号加密,后期自动发送结果给管理员,缺少参数化等等;如果需要的话可以慢慢进行优化处理。
Powershell 比较AD和Exchange的用户登录时间相关推荐
- 查看用户登录时间以及命令历史
查看用户登录时间以及命令历史 文章目录: 你有没有遇到这种情况,就是有一台服务器,上面有多个人登陆使用,但是突然右某一天,服务器突然出现了问题,然后你没有操作,但是此时你却成为了怀疑的对象,搞出问题的 ...
- ad用户和计算机的使用方法,AD技巧之指定用户登录和指定计算机登陆
在域环境中我们往往默认情况下,域用户是可以在非域控机器上进行本地登录的,这里就涉及一个域安全问题 今天有人问我能否限制 某个用户只能登陆某台计算机?某台计算机只能由某个用户登录? 某个用户只能登陆某台 ...
- linux 用户管理(3)----查看用户登录时间以及命令历史
1.查看当前登录用户信息 who命令: who缺省输出包括用户名.终端类型.登陆日期以及远程主机. who /var/log/wtmp 可以查看自从wtmp文件创建以来的每一次登陆情况 (1 ...
- java记录登陆时间_Spring security如何实现记录用户登录时间功能
一.原理分析 spring security提供了一个接口 AuthenticationSuccessHandler,该接口中只有一个方法,用来进行登录成功后的操作 public interface ...
- 在AD环境中限定用户登录到指定的计算机
作用: 在微软AD环境中,默认情况下,使用任意一个域帐户是可以登录除DC(域控)以外的任何域成员计算机的,这就给企业信息安全带了一个很大的隐患.试想一下,如果一个不怀好意的员工利用这个疏漏来登录其他员 ...
- AWS托管AD + Yearning配置LDAP认证登录
AWS托管AD配置 具体创建过程不再赘述, 这里使用我之前创建好的一个AD, 主要是记录下来AD的两个DNS地址, 可以从控制台中查看到 EC2实例配置 先使用Amazon Linux 2 AMI启动 ...
- ubuntu下如何查看用户登录及系统授权相关信息【转】
转自:http://www.tuicool.com/articles/ia67Bj 如何在ubuntu下查看相关用户登录历史,进行系统的日志跟踪和分析,以便发现系统登录问题,进行安全策略防护呢?ubu ...
- 过滤器实现单一用户登录
单一系统的登录要保证同一时间内不允许pc,app,微信同时登录,在一个时间内只保留最后一次登录状态.这样的设计是我们容易忽略的.下面通过过滤器的方式进行实现: 首先在web.xml文件中添加: < ...
- DeDecms任意用户登录,管理员密码重置漏洞
基本信息 漏洞编号:SSV-97087 实验版本:dedecms v5.7SP2 下载地址:http://updatenew.dedecms.com/base-v57/package/DedeCMS- ...
最新文章
- 怎么看电脑电源多少w_电脑电源供电不足会怎么样 电脑电源供电不足坏处介绍【详解】...
- Spring MVC Boot Cloud 技术教程汇总
- python使用glob模块匹配文件及路径
- 接口测试工具ApiPost 发送报 socket hangup 的解决方案
- TamperIE - 一个小巧的XSS漏洞检测辅助工具
- 周五,放松心情,听我来分享问题背后的背后(二)
- SQL数据查询语句(一)
- zotero文献管理工具的下载安装
- 计算机软件 属于特许权,​软件使用权是否属于无形资产
- 主板怎么开启csm_B460主板BIOS设置CSM选项无法开启的解决方法
- .NET Standard
- 怎样合并磁盘分区?看这里~
- 重庆php就业前景,重庆就业前景最好的十大专业是哪些_中职中专网
- JS防抖(Debouncing)和节流(Throttling)
- soul_admin之使用zookeeper数据同步
- Word文件的编辑密码忘记了怎么办?
- Multisim电路仿真与面包板的使用
- 使用AntV L7实现地图/世界地图GeoJson资源分享
- 嵌入式linux usb wifi移植[s3c6410平台原创]
- matlap之零输入响应