管理员指南:将 PowerShell 与 Azure 信息保护统一客户端一同使用

适用于:Azure 信息保护、Windows 11、Windows 10、Windows 8.1、Windows 8、Windows Server 2019、Windows Server 2016、Windows Server 2012 R2、Windows Server 2012

如果 2010 Windows 7 或 Office,请参阅AIP和旧版 Windows Office 版本。

相关内容:适用于 Windows 的 Azure 信息保护统一Windows。

安装 Azure 信息保护统一标签客户端时,PowerShell 命令会自动安装为 AzureInformationProtection 模块的一部分,并带有用于标记的 cmdlet。

使用 AzureInformationProtection 模块,可以运行自动化脚本的命令来管理客户端。

例如:

AzureInformationProtection模块安装在\ProgramFiles (x86) \Microsoft Azure Information Protection文件夹中,然后将此文件夹添加到PSModulePath系统变量。 此模块.dll名为AIP.dll。

重要

AzureInformationProtection模块不支持配置标签或标签策略的高级设置。

对于这些设置,需要安全Office 365 & 中心 PowerShell。 有关详细信息,请参阅 Azure 信息保护统一标签客户端 的自定义配置

提示

若要使用路径长度大于 260 个字符的 cmdlet,请使用从版本1607 开始可用的Windows 10策略设置:
本地计算机策略计算机配置管理模板所有设置启用 Win32 长路径

对于Windows Server 2016,可以在安装最新的管理模板 (.admx) Windows 10 时使用相同的组策略Windows 10。

有关详细信息,请参阅开发人员文档中的"最大路径长度限制Windows 10部分。

使用 AzureInformationProtection 模块的先决条件

除了安装 AzureInformationProtection 模块的先决条件外,使用 Azure 信息保护的标签 cmdlet 时,还有额外的先决条件:

  • 必须激活 Azure Rights Management 服务

    如果未激活 Azure 信息保护租户,请参阅从 Azure 信息保护激活 保护服务的说明

  • 若要删除他人使用自己的帐户的文件保护,请:

    • 必须为 组织 启用超级用户功能。
    • 帐户必须配置为 Azure Rights Management 的超级用户。

    例如,出于数据发现或恢复考虑,可能需要删除对其他人的保护。 如果使用标签来应用保护,可以通过设置不应用保护的新标签来删除该保护,也可以删除该标签。

    若要删除保护,请使用 Set-AIPFileLabel cmdlet 和 RemoveProtection 参数。 删除保护功能默认已禁用,必须先使用 Set-LabelPolicy cmdlet 启用。

RMS 到统一标签 cmdlet 映射

如果从 Azure RMS 迁移,请注意,与 RMS 相关的 cmdlet 已弃用,用于统一标签。

某些旧 cmdlet 已替换为用于统一标签的新 cmdlet。 例如,如果使用New-RMSProtectionLicense和 RMS 保护,并且已迁移到统一标签,请改为使用New-AIPCustomPermissions。

下表将 RMS 相关的 cmdlet 与用于统一标签的更新 cmdlet 映射:

RMS cmdlet 统一标签 cmdlet
Get-RMSFileStatus Get-AIPFileStatus
Get-RMSServer 与统一标签不相关。
Get-RMSServerAuthentication Set-AIPAuthentication
Clear-RMSAuthentication Set-AIPAuthentication
Set-RMSServerAuthentication Set-AIPAuthentication
Get-RMSTemplate 与统一标签不相关
New-RMSProtectionLicense New-AIPCustomPermissionsSet-AIPFileLabel,具有 CustomPermissions 参数
Protect-RMSFile Set-AIPFileLabel,具有 RemoveProtection 参数

如何为 Azure 信息保护以非交互方式标记文件

默认情况下,运行用于标记的 cmdlet 时,这些命令在交互式 PowerShell 会话中在你自己的用户上下文中运行。

有关详细信息,请参阅:

注意

如果计算机无法访问 Internet,则无需在应用程序中创建应用Azure AD Set-AIPAuthentication cmdlet。 相反,请按照断开连接的计算机 的说明进行操作

无人参与运行 AIP 标记 cmdlet 的先决条件

若要在无人参与的情况下运行 Azure 信息保护标记 cmdlet,请使用以下访问详细信息:

  • 一Windows可交互登录的登录帐户。

  • 一Azure AD帐户,用于委托访问权限。 为了便于管理,请使用从 Active Directory 同步到 Azure AD。

    对于委派的用户帐户:

    要求 详细信息
    标签策略 确保为此帐户分配了标签策略,并且该策略包含想要使用的已发布标签。

    如果为不同的用户使用标签策略,可能需要创建一个新的标签策略来发布所有标签,并仅将策略发布到此委派的用户帐户。
    解密内容 如果此帐户需要解密内容(例如,重新保护文件并检查其他人保护的文件,请使其成为 Azure 信息保护的超级用户,并确保启用超级用户功能)。
    载入控件 如果已针对 分阶段部署实施 载入控件,请确保此帐户包含在配置的载入控件中。
  • 一Azure AD访问令牌,用于设置和存储委派用户的凭据,以向 Azure 信息保护进行身份验证。 当令牌过期Azure AD,必须再次运行 cmdlet 才能获取新令牌。

    Set-AIPAuthentication的参数使用应用中应用注册过程中的值Azure AD。 有关详细信息,请参阅为Set-AIPAuthentication Azure AD和配置应用程序。

首先通过运行 Set-AIPAuthentication cmdlet 以非交互方式运行标签 cmdlet。

运行AIPAuthentication cmdlet 的计算机将下载分配给合规性中心的委派用户帐户的标签Microsoft 365策略。

创建和Azure AD应用程序Set-AIPAuthentication

Set-AIPAuthentication cmdlet 需要AppIdAppSecret参数的应用注册。

对于最近从经典客户端迁移并且为以前的 WebAppIDNativeAppId 参数创建了应用注册的用户,需要为统一标签客户端创建新的应用注册。

若要为统一标签客户端创建新的应用注册,Set-AIPAuthentication cmdlet:

  1. 在新的浏览器窗口中,登录到Azure门户Azure AD Azure 信息保护使用的新租户。

  2. 导航到Azure Active Directory应用注册",然后选择"新建注册"。

  3. 在"注册应用程序"窗格中,指定以下值,并单击"注册":

    Option
    名称 AIP-DelegatedUser
    根据需要指定其他名称。 该名称必须每个租户唯一。
    支持的帐户类型 选择"仅此组织目录中的帐户"。
    重定向 URI (可选) 选择 "Web",然后输入
  4. "AIP-DelegatedUser" 窗格中,复制"应用程序" (客户端) ID" 的值

    值类似于以下示例 77c3c1c3-abf9-404e-8b2b-4652836c8c66 :。

    运行Set-AIPAuthentication cmdlet时,此值用于AppId参数。 粘贴并保存该值供以后参考。

  5. 在边栏中,选择"管理证书机密 "。

    然后,在"AIP-DelegatedUser - 证书 机密"窗格中的"客户端机密"部分中,选择"新建客户端机密"。

  6. 对于"添加客户端机密",请指定以下内容,然后选择"添加":

    字段
    说明 Azure Information Protection unified labeling client
    Expires 指定选择的持续时间 (为 1 年、2 年或永不)
  7. 返回"AIP-DelegatedUser - 证书 机密"窗格,在"客户端机密"部分中,复制VALUE的字符串。

    此字符串类似于以下示例 OAkk+rnuYc/u+]ah2kNxVbtrDGbS47L4 :。

    若要确保复制所有字符,请选择"复制到 剪贴板"图标

    重要

    保存此字符串非常重要,因为它不会再次显示,并且无法检索。 与使用的任何敏感信息一样,安全存储已保存的值并限制对它的访问。

  8. 在边栏中,选择"管理API 权限"。

    "AIP-DelegatedUser - API 权限"窗格中,选择"添加权限"。

  9. "请求 API 权限"窗格中,确保位于"Microsoft API"选项卡上,然后选择"Azure Rights Management Services"。

    当系统提示输入应用程序所需的权限类型时,请选择"应用程序权限"。

  10. 对于"选择权限",展开"内容",选择以下内容,然后选择"添加权限"。

    • Content.DelegatedReader
    • Content.DelegatedWriter
  11. 返回 "AIP-DelegatedUser - API 权限 "窗格,再次 选择"添加权限 "。

    在"请求 AIP 权限"窗格中,选择"我的组织使用的 API",搜索"Microsoft 信息保护服务"。

  12. 在"请求 API 权限"窗格中,选择"应用程序权限"。

    对于"选择权限",展开"UnifiedPolicy",选择"UnifiedPolicy.Tenant.Read",然后选择"添加权限"。

  13. 返回"AIP-DelegatedUser - API权限"窗格,选择"授予管理员同意租户名称",然后选择"是"作为确认提示。

    API 权限应如下图所示:

    已注册应用的 API 权限Azure AD

现在,你已完成此应用与机密的注册,可以运行Set-AIPAuthentication参数 AppIdAppSecret。 此外,还需要租户 ID。

提示

可以使用 Azure 门户快速复制租户 ID:Azure Active Directory"属性目录 ID"。

运行 Set-AIPAuthentication cmdlet

  1. 使用Windows PowerShell"以管理员方式运行"选项打开"脚本"。

  2. 在 PowerShell 会话中,创建一个变量来存储Windows以非交互方式运行的用户帐户的凭据。 例如,如果为扫描程序创建了服务帐户:

    $pscreds = Get-Credential "CONTOSO\srv-scanner"
    

    系统会提示输入此帐户的密码。

  3. 使用OnBeHalfOf参数运行Set-AIPAuthentication cmdlet,将创建的变量指定为其值。

    此外,请指定应用注册值、租户 ID 以及应用程序中委派的用户帐户Azure AD。 例如:

    Set-AIPAuthentication -AppId "77c3c1c3-abf9-404e-8b2b-4652836c8c66" -AppSecret "OAkk+rnuYc/u+]ah2kNxVbtrDGbS47L4" -TenantId "9c11c87a-ac8b-46a3-8d5c-f4d0b72ee29a" -DelegatedUser scanner@contoso.com -OnBehalfOf $pscreds
    

PowerShell cmdlet 的常见参数

有关常用参数的信息,请参阅 关于通用参数

下一步

有关在 PowerShell 会话中使用 cmdlet 的帮助,请键入 Get-Help <cmdlet name> -online 。 例如:

Get-Help Set-AIPFileLabel -online

有关详细信息,请参阅: