我正在尝试像往常一样通过 Powershell 连接到 Office 365,但无论什么原因,它都不起作用。
我正在运行 Windows 10 企业版,我注意到的一件事是,适用于 IT 专业人员的 Microsoft Online Service 登录助手不适用于 Windows 10。这让我想到也许它默认内置在 Windows 10 中,但它不起作用,所以也许情况并非如此。
以下是我尝试在 Powershell 中连接到 O365 所采取的步骤:
$Credential = Get-Credential
Import-Module MsOnline
Connect-MsolService -Credential $credential
$ExchangeSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri "https://outlook.office365.com/powershell-liveid/" -Credential $credential -Authentication "Basic" -AllowRedirection
Import-PSSession $ExchangeSession
我也尝试过这个但没有成功:
$Credential = Get-Credential
Import-Module MsOnline
Connect-MsolService -Credential $credential
$ExchangeSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $Cred -Authentication Basic -AllowRedirection #PS 5.0+
Import-PSSession $ExchangeSession
我收到的错误是这样的:
Connect-MsolService : The type initializer for 'Microsoft.Online.Administration.Automation.ConnectMsolService' threw
an exception.
At C:\Users\xxxxx\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1:3 char:1
+ Connect-MsolService -Credential $credential
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : OperationStopped: (:) [Connect-MsolService], TypeInitializationException
+ FullyQualifiedErrorId : System.TypeInitializationException,Microsoft.Online.Administration.Automation.ConnectMso
lService
我运行了下面的命令,发现我正在使用 Windows Azure AD Module v1.0.8262.2
PS C:\Users\xxxxx> (get-item C:\Windows\System32\WindowsPowerShell\v1.0\Modules\MSOnline\Microsoft.Online.Administrati
on.Automation.PSModule.dll).VersionInfo.FileVersion
1.0.8262.2
我已经在 Google 上搜索了很多次,但没有找到任何可以帮我实现这一点的方法。我思考这应该是 SuperUser 与 ServerFault 之间的问题,因为这是我的笔记本电脑的问题,但如果您认为它更适合 ServerFault,请随意移动它。
提前感谢任何帮助!
答案1
Microsoft Online 登录助手是必需的,通常在首次安装 Azure AD 模块之前安装。如果您已经部署了 O365 - 您可能刚刚安装了这些应用程序(O365 pro plus、visio、OneDrive sync 等)。
虽然我知道有一些较新的版本 - 为了使用 Azure AD,我相信仍然建议使用助手的 RTW 版本(这是我在使用时安装的版本)。该工具的较新版本可能会给您的 Azure AD 模块带来问题。
**编辑** Azure AD PowerShell V1 仍受支持,但 Microsoft 正在将命令移植到 V2。这些命令不可互操作,因为 V2 使用 Microsoft Graph(不同的 API)。命令使用 AzureAD 而不是 MSOL。
如果您运行的是 WMF 5.0,则可以使用以下方法之一直接安装模块:
Install-Module AzureAD
Install-Module AzureADPreview
它们可以并排安装,我建议这样做,因为预览模块中的某些命令是某些操作所必需的,但在 GA 版本中不存在。
这些模块支持现代身份验证和 MFA,一旦加载,就可以轻松连接Connect-AzureAD
打开 Web 窗口的命令。
答案2
我曾使用 Windows 10 PowerShell 连接到 Office 365,没有任何问题,我不记得必须安装登录助手/azure 模块等......
我经常使用的连接脚本如下,自 Windows 7 以来一直对我有用。
Set-executionpolicy unrestricted -force
$UserCredential = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
Import-PSSession $Session
答案3
Microsoft 提供两个版本的 Microsoft Online Services 登录助手(适用于 IT 专业人员 LTW)。下载页面乍一看似乎完全相同。请确保获取 2014 年 2 月 17 日发布的版本 7.250.4556.0https://www.microsoft.com/en-us/download/details.aspx?id=41950)。其他可用版本(2.1,发布于 2012 年 6 月 8 日https://www.microsoft.com/en-us/download/details.aspx?id=28177) 将无法按预期工作。