【发布时间】:2015-02-16 12:46:11
【问题描述】:
对 PowerShell 和 Office365 cmdlet 相当陌生。
目前我已经创建了一个脚本,它可以从我的 Office365 服务中获取所有电子邮件地址(大约 140,000 个)。在它使用 get-mailbox cmdlet 检索到所有电子邮件后,我使用 get-mailboxStatistics cmdlet 来获取 Last-Logon-Date。它将所有这些输出到一个 CSV 文件,所以我最终得到一个用户上次登录日期的电子邮件地址。
脚本当前正在按预期运行,但脚本运行后会随机提示 PowerShell 凭据请求。据我所见,它会完全随机提示,有时需要几个小时才能提示,有时只需要 10 分钟。该脚本计划每年运行一次,我不想每次都手动运行它并重新输入我的详细信息。
我环顾四周,找不到任何可以解决我的问题的方法。 Office 365 登录代码如下。
$password = ConvertTo-SecureString -String $arg -AsPlainText -Force
$msolcred = New-Object –TypeName System.Management.Automation.PSCredential –ArgumentList $username, $password
connect-msolservice -credential $msolcred
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $msolcred -Authentication Basic -AllowRedirection
Import-PSSession $Session
注意事项:
-我很确定我的连接没有丢失。
- 脚本很可能总共需要大约 10 个小时才能运行。
如果有人需要更多详细信息,请随时询问。
【问题讨论】:
标签: powershell office365