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

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

作者:精品下载站 日期:2024-12-14 06:47:23 浏览:16 分类:玩电脑

使用客户端密钥连接到 Microsoft Graph PowerShell


Microsoft Graph PowerShell v2 的发布给我们带来了更快、功能更丰富的体验。

在本教程中,我将向您展示如何在该模块的 v2 中使用新的 -ClientSecretCredential 参数通过客户端密钥连接到 Microsoft Graph PowerShell。

将 Microsoft Graph 更新到 v2

-ClientSecretCredential 仅包含在 Graph PowerShell 模块的版本 2 中,因此我们必须首先升级到最新版本。

在升级之前,我们应该检查模块的最新版本是什么,我们可以通过运行以下命令来做到这一点

Find-Module -Name Microsoft.Graph -AllVersions -AllowPrerelease select-Object -First 5

您的输出将如下所示

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

要升级到最新版本的 Microsoft Graph Powershell,您可以运行以下脚本

$latest = Find-Module -Name Microsoft.Graph -AllVersions -AllowPrerelease select-Object -First 1
$current = Get-InstalledModule Where-Object {$_.Name -eq "Microsoft.Graph"}

If ($latest.version -gt $current.version) {
    try {Update-Module -Name Microsoft.Graph -RequiredVersion $latest.version -AllowPrerelease
         Write-host "Microsoft Graph PowerShell module updated successfully to" $latest.Version -ForegroundColor Green}
    catch {Write-Host "Unable to update Microsoft Graph PowerShell module" -ForegroundColor Red}
} else {
    write-host "Latest version of Microsoft Graph is not newer than the current" -ForegroundColor yellow
}

脚本运行后,使用以下命令检查是否已安装最新版本。

检查版本列以确认您现在正在运行最新版本。

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

在 Azure AD 中注册应用程序

1. 首先以全局管理员身份登录 Azure AD 管理门户
https://aad.portal.azure.com/

2. 选择应用注册,然后选择新注册

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

3. 为您的应用程序选择一个有意义的名称,然后选择仅此组织目录中的帐户。将所有其他设置保留为默认值,然后单击注册

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

4. 创建完成后,申请页面将自动打开。复制应用程序 ID,因为接下来您将需要此信息,然后选择证书和机密

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

5. 选择新客户端密钥

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

6. 选择客户端密钥的描述并定义过期时间。持续时间应设置为满足您的具体要求。

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

7. 复制字段,因为接下来我们还需要它。

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

将权限应用于我们注册的应用程序

现在我们已经注册了我们的应用程序,我们可以为我们想要执行的操作应用必要的权限。

1. 在应用程序注册页面上选择您的应用程序。

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

2. 选择API 权限

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

3. 选择添加权限

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

4. 选择 Microsoft API 选项卡下的 Microsoft Graph

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

5. 选择应用程序权限

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

6. 从列表中选择您的权限,然后选择添加权限

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

7. 选择向授予管理员同意,然后单击

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

使用客户端密钥连接到 Microsoft Graph

现在我们已经注册了一个应用程序,我们可以使用 -ClientSecretCredential 参数和 Connect-MgGraph 连接到我们的租户。

首先,您需要记下前面步骤中的以下信息

  • 租户 ID(可在 Azure Active Directory > 概述中找到)
  • 客户端 ID(位于应用注册 > 您的应用 > 概述> 应用程序(客户端)ID)。
  • 客户端密钥值(可在应用注册 > 您的应用 > 证书和密钥 > 中找到)。

现在打开 PowerShell 并运行以下命令(请务必更改上面记下的值)。

$ApplicationId = "<value>"
$SecuredPassword = "<value>"
$tenantID = "<value>"

$SecuredPasswordPassword = ConvertTo-SecureString `
-String $SecuredPassword -AsPlainText -Force

$ClientSecretCredential = New-Object `
-TypeName System.Management.Automation.PSCredential `
-ArgumentList $ApplicationId, $SecuredPasswordPassword

如果您不将安全密码转换为安全字符串,您可能会遇到以下错误

“New-Object 无法找到“PSCredential”的重载且参数计数为“2”。”

现在,您可以运行以下命令来连接到 Microsoft Graph,而无需交互式提示。

Connect-MgGraph -TenantId $tenantID -ClientSecretCredential $ClientSecretCredential

您可以通过运行与您授予应用程序的权限相匹配的 cmdlet 来测试此功能是否有效。 (以下信息现已删除)。

[玩转系统] 使用客户端密钥连接到 Microsoft Graph PowerShell

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

取消回复欢迎 发表评论:

关灯