我正在一个项目上运行安全性和合规性搜索。这将由多个用户使用,并且该项目将集中于此操作。由于某些原因,我想在安全与合规中心之外进行此操作。在此处创建基于用户操作运行的PowerShell脚本的想法。
为此,我正在研究使用Azure Automation Runbook作为运行脚本进行搜索的方法。最终目标是运行New-ComplianceSearch
,以便在邮箱中搜索符合给定条件的电子邮件。
但是,远程连接存在一些问题,概述如下:
上周,远程连接有时可以正常工作(乐观地大约占40%-50%),但是大多数情况下它会由于访问被拒绝错误而失败,但是PowerShell脚本并没有什么不同,并且凭据绝对正确。 这周我只收到“访问被拒绝”错误,该帐户或脚本没有任何反应。
使用Microsoft Exchange Online PowerShell模块,我可以毫无问题地连接,但这仅用于测试过程,不能用于实现项目目标。
连接代码,除获得凭据外,没有以前的代码:
$session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.compliance.protection.outlook.com/powershell-liveid/ -Credential $cred -Authentication Basic -AllowRedirection
拒绝访问错误消息:
New-PSSession : [ps.compliance.protection.outlook.com] Connecting to remote server ps.compliance.protection.outlook.com
failed with the following error message: Access is denied. For more information, see the about_Remote_Troubleshooting
Help topic.
At line:31 char:16
+ ... $session = New-PSSession -ConfigurationName Microsoft.Exchange -Conn ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [New-PSSession],
PSRemotingTransportException
+ FullyQualifiedErrorId : AccessDenied,PSSessionOpenFailed
我也一直尝试使用相同的方法连接到outlook.office365.com,并且也遇到了相同的错误。
是否有人遇到过类似的问题,其中凭据和访问对于连接是正确的,但是他们仍然得到Access is Denied
?
在办公室365的事物或网络(端口打开等)方面是否存在某些配置可能会阻止访问?
或者,有人知道另一种方法来有效地搜索邮箱中符合给定条件的电子邮件吗?