【问题标题】:unable to connect azure automation and exchange online无法连接azure自动化和在线交换
【发布时间】:2020-11-06 03:08:12
【问题描述】:

我在尝试使用自动化帐户中的服务帐户连接到 Exchange Online 时收到此错误。我认为问题也可能是我的 $credential 变量没有传递到我的 $session 变量中,但我想不出任何原因会发生这种情况。


错误:

New-PSSession : [outlook.office365.com] 连接到远程服务器 outlook.office365.com 失败,出现以下问题 错误消息:访问被拒绝。有关详细信息,请参阅 about_Remote_Troubleshooting 帮助主题。 在 line:5 char:12

  • $session = New-PSSession -ConfigurationName Microsoft.Exchange -Conne ...
  •        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    • CategoryInfo : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [New-PSSession], PSRemotingTransportException
    • FullyQualifiedErrorId : AccessDenied,PSSessionOpenFailed Import-PSSession:无法验证参数“会话”的参数。参数为空。为 参数,然后尝试再次运行该命令。 在 line:6 char:42
  • Import-Module (Import-PSSession -Session $session -DisableNameCheckin ...
  •                                      ~~~~~~~~
    

脚本:

参数 ( [字符串] $Employee = "" ) $credential = Get-AutomationPSCredential -Name 'admin@crafthub.onmicrosoft.com' $session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri 'https://outlook.office365.com/powershell-liveid/' -Credential $credential -Authentication Basic -AllowRedirection 导入模块(导入 PSSession -Session $session -DisableNameChecking -AllowClobber)-全局 $mailbox = 获取邮箱 -Identity $Employee 写输出$邮箱


我们将非常感谢您的帮助

【问题讨论】:

    标签: azure exchange-server azure-automation


    【解决方案1】:

    是的,看起来$credential 变量没有传递到$session 变量中。

    在您的代码中,您已将 Azure 自动化凭据名称指定为“admin@crafthub.onmicrosoft.com”,因此请仔细检查您是否创建了具有确切名称“admin@crafthub.onmicrosoft.com”的 Azure 自动化凭据。

    您可能已经知道,但只是让您知道在创建 Azure 自动化凭据时必须提供 Office 365 服务帐户的凭据。要创建 Azure 自动化凭据,请转到 Azure 门户 -> 您的 Azure 自动化帐户 -> “凭据”磁贴 -> 单击“+ 添加凭据” -> 在“名称”下提供 Azure 自动化凭据的名称,提供 Office 365 服务帐户的在“用户名”下的名称,在“密码”和“确认密码”下提供 Office 365 服务帐户的密码 -> 点击“创建”。

    然后,在代码的 Get-AutomationPSCredential 命令行中提供该 Azure 自动化凭据的名称,即$credential = Get-AutomationPSCredential -Name '<Above_Provided_Azure_Automation_Credential_Name>'

    如果您已经完成所有这些操作而没有任何问题,那么我建议您尝试最新的“Exchange Online PowerShell V2”方式,即导入“ExchangeOnlineManagement”Azure 自动化模块,如下所示,然后使用Connect-ExchangeOnline cmdlet 进行连接而不是New-PSSession cmdlet。稍后,当您尝试获取邮箱详细信息时,请使用Get-EXOMailbox cmdlet 而不是Get-Mailbox cmdlet。有关详细信息,请参阅 this 文档。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-13
      • 2020-08-11
      • 2019-01-25
      • 2021-11-28
      • 2011-06-13
      • 2020-09-28
      • 2020-10-19
      • 2020-07-16
      相关资源
      最近更新 更多