当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] Exchange Online PowerShell V2 中的现代身份验证和无人值守脚本

作者:精品下载站 日期:2024-12-14 08:27:26 浏览:14 分类:玩电脑

Exchange Online PowerShell V2 中的现代身份验证和无人值守脚本


通常,管理员将存储的凭据用于无人值守的 PowerShell 脚本。随着安全默认值的引入和基本身份验证的弃用,有必要采用 MFA 进行身份验证。由于 MFA 需要用户交互来创建 Exchange 会话,因此人们开始使用条件访问策略来绕过 MFA。但条件访问需要 Azure AD Premium 许可证。

因此,大多数管理员想要一种通过现代身份验证和无人值守身份验证来执行 PowerShell 脚本的方法。

经过几个月的等待,Microsoft 发布了使用现代身份验证的非交互式 PowerShell 脚本的 EXO V2 预览模块。

2023 年 2 月更新:Exchange Online PowerShell 中的远程 PowerShell (RPS) 停用

由于 RPS 停用,您无法使用 EXO V1 和 V2 模块连接 Exchange Online PowerShell。因此管理员必须安装/更新 EXO V3 模块才能执行 Exchange 管理任务。

随着这一新功能的推出,

- 您无需使用条件访问政策排除服务帐户。

-您不需要将凭证存储在本地文件中

-您可以使用现代身份验证轻松自动化脚本调度程序

要自动登录 Exchange Online PowerShell,您需要 EXO V2 PowerShell 模块版本 2.0.3 预览版或更高版本。此无人值守脚本身份验证使用 Azure AD 应用程序、证书和新式身份验证。

要安装 EXO V2 模块预览版,请运行以下 cmdlet。

Install-Module -Name ExchangeOnlineManagement -RequiredVersion 2.0.3-Preview -AllowPrerelease

要从早期版本的 EXO V2 模块进行更新,请运行以下 cmdlet。

Update-Module -Name ExchangeOnlineManagement -AllowPrerelease

如何使用 EXO V2 模块进行无人值守脚本?

您可以使用 Exchange Online PowerShell V2 模块预览通过 MFA/现代身份验证自动执行脚本计划程序。

以下示例演示如何将 Exchange Online PowerShell V2 模块与仅应用程序身份验证结合使用。

注意:管理员可以创建自签名证书并将其用于内部和测试目的,从而避免需要昂贵的第三方证书颁发机构 (CA) 证书

使用本地证书连接到 Exchange Online PowerShell:

您需要将Connect-ExchangeOnline与CertificateFilePath和其他必要参数结合使用。此方法支持使用基于证书的身份验证通过远程 PowerShell 执行非交互式脚本。

Connect-ExchangeOnline -CertificateFilePath "C:\Users\admin\Desktop\automation-cert.pfx" -AppID "Testing App" -Organization "contoso.onmicrosoft.com"

使用证书指纹连接到 Exchange Online PowerShell:

要使用证书指纹,您需要将Connect-ExchangeOnline与CertificateThumbPrint参数结合使用。

Connect-ExchangeOnline -CertificateThumbPrint "TESTINGTHUMBPRINT" -AppID "Testing Aoo" -Organization "contoso.onmicrosoft.com"

当您使用CertificateThumbPrint参数时,需要在运行该命令的计算机上安装证书。该证书应安装在用户证书存储中。

使用现有服务主体和客户端密钥连接到 Exchange Online PowerShell:

要将 Exchange 在线连接到现有服务主体和客户端密钥,您需要执行以下步骤。

第 1 步:使用 Active Directory 身份验证库 (ADAL) PowerShell 获取 OAuth 访问令牌。

第 2 步:创建 PSCredential 对象

$AppCredential= New-Object System.Management.Automation.PSCredential(<UPN>,<Token>)

步骤 3:将 PSCredential 传递给 EXO V2 模块。

Connect-ExchangeOnline -Credential $AppCredential

要设置仅应用程序身份验证,您可以按照此 Microsoft 文档进行操作。

此功能是对 EXO V2 PowerShell 模块的宝贵补充。它可以帮助用户创建非交互式 PowerShell 脚本并通过仅应用身份验证连接到 Exchange Online PowerShell。您是否已开始升级现有的 PowerShell 脚本以采用这种新方法?请与其他管理员和我们分享您的经验。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯