零信任评估会检查租户配置,并建议 按照概述中所述提高安全性的方法。
先决条件
- PowerShell 7。 若要安装它,请参阅 在 Windows、Linux 和 macOS 上安装 PowerShell。
- 若要首次连接和同意所需权限,需要是 全局管理员。
- 后续的运行可以使用 全局读取者 角色。
- 如果安装了以前版本的零信任评估,请先 卸载 它,然后再继续。
安装 PowerShell 模块
按照以下步骤安装或更新评估,并连接 Microsoft Graph 和您的租户。
打开新的 PowerShell 7 窗口。
运行以下命令以安装
ZeroTrustAssessment模块:Install-Module ZeroTrustAssessment -Scope CurrentUser
连接到 Microsoft Graph 和 Microsoft Azure
若要运行零信任评估模块,请连接到 Microsoft Graph 并Microsoft Azure。 零信任评估模块首先连接到 Microsoft Graph,然后连接到 Microsoft Azure。
运行以下命令以连接到 Microsoft Graph:
Connect-ZtAssessment
使用 Microsoft Graph PowerShell 进行连接时,它会请求以下权限:
- AuditLog.Read.All
- CrossTenantInformation.ReadBasic.All
- DeviceManagementApps.Read.All
- DeviceManagementConfiguration.Read.All
- DeviceManagementManagedDevices.Read.All
- DeviceManagementRBAC.Read.All
- DeviceManagementServiceConfig.Read.All
- Directory.Read.All
- DirectoryRecommendations.Read.All
- EntitlementManagement.Read.All
- IdentityRiskEvent.Read.All
- IdentityRiskyUser.Read.All
- Policy.Read.All
- Policy.Read.ConditionalAccess
- Policy.Read.PermissionGrant
- PrivilegedAccess.Read.AzureAD
- Reports.Read.All
- RoleManagement.Read.All
- UserAuthenticationMethod.Read.All
注释
仅当 Microsoft Graph PowerShell 应用没有这些权限时,才会显示同意提示。 下次连接时,无需再次同意权限。
登录到 Microsoft Graph
- 以全局管理员身份登录到 Microsoft Graph。
- 选择 “接受”。
登录 Microsoft Azure
此时会打开第二个窗口,用于Microsoft Azure 登录。 出现提示时,以全局管理员身份登录到 Microsoft Azure。
需要Microsoft Azure 登录才能检查审核和登录日志的导出。 如果没有Microsoft Azure,请关闭窗口而不登录,并忽略警告。 评估会跳过依赖于Microsoft Azure的测试。
如果您有多个订阅,当系统提示时请选择一个租户和一个订阅。
运行评估
零信任评估是只读的。 它在本地运行并将所有数据存储在桌面上。 最好在评估完成后安全地存储评估报告,并从本地驱动器中删除生成的文件夹及其内容。
在第一次运行中向全局管理员授予权限后,后续运行可以作为全局读取器执行。
若要运行评估,请使用以下命令:
Invoke-ZtAssessment
评估将结果保存在当前工作文件夹中 .\ZeroTrustReport\ZeroTrustAssessmentReport.html。 评估完成后,报表会在默认浏览器中自动打开。
注意
报表和导出文件夹包含威胁行为者可能利用的敏感租户信息。 仅与组织中的授权人员共享报表和文件夹。
使用 -Path 参数提供用于存储评估报表的自定义位置。 例如,以下命令将报表保存在文件夹中 C:/MyAssessment01/ZeroTrustAssessmentReport.html:
Invoke-ZtAssessment -Path C:\MyAssessment01
小窍门
对于大型租户,零信任评估可能需要超过 24 小时才能完成。 即使评估日志存在警告或错误,也不要在评估运行过程中停止它。
查看评估结果
评估运行后,报表将在默认浏览器中打开“ 概述 ”选项卡。 “ 概述 ”选项卡显示有关租户的关键零信任信息。
“标识和设备”选项卡显示针对租户运行的测试的结果列表。 结果显示每个测试 的风险 和结果 状态 。
若要查看有关测试的更多详细信息,请选择结果。 详细信息描述了经过测试的内容,并列出用于解决租户配置的推荐修正作。 有关每个检查中使用的一些术语的更多详细信息,请参阅 我们的术语表。
删除零信任评估模块
删除零信任评估模块:
- 删除 PowerShell 模块。
- 删除应用注册和同意。
- 删除零信任评估模块创建的文件夹。
FAQs
卸载以前的版本
运行以下命令以确保卸载所有版本的过去模块
Uninstall-Module ZeroTrustAssessment -Force -AllVersions
重启 PowerShell 并 安装最新版本。
无法加载文件或程序集Microsoft.Graph.Authentication
安装 Microsoft Graph PowerShell 的冲突版本时,会发生此错误。
若要修复此错误,建议卸载系统上安装的所有 Microsoft Graph PowerShell 模块。 可以使用帮助程序模块(如 uninstall-graph.merill.net )来运行清理。
卸载 Microsoft Graph 时,还应卸载零信任评估的所有版本,重启 PowerShell,然后 安装最新版本。
Install-Module Uninstall-Graph
Uninstall-Module ZeroTrustAssessment -Force -AllVersions
Uninstall-Graph
如何知道脚本的作用?
此评估的代码是开源的。 请在https://github.com/microsoft/zerotrustassessment/tree/psnext/src/powershell查看。
为什么我会收到异常错误:“‘DuckDB.NET.Data.DuckDBConnectionStringBuilder’的类型初始化器引发了一个异常。”
在新的 Windows 安装中,你可能会看到以下错误:
“DuckDB.NET.Data.DuckDBConnectionStringBuilder”的类型初始值设定项引发异常。 内部异常:无法加载 DLL“duckdb”或其依赖项之一:找不到指定的模块。 (0x8007007E) 内部异常类型:DllNotFoundException
发生此错误是因为你在不包含 Microsoft Visual C++ 2015-2022 Redistributable (x64) - Microsoft.VCRedist.2015+.x64的系统上运行。 安装 Microsoft 产品(如 office Microsoft 或 Microsoft Entra Connect Sync)时,VCRedist 通常会安装。如果使用新设备,可能需要手动安装此组件。 请参阅 最新Microsoft Visual C++ Redistributable 版本。
目前不支持 ARM64 设备上的 Windows。
我如何获取支持?
在 零信任评估 GitHub 存储库上提出支持问题。