Microsoft 信息保护 (MIP) SDK 的安装和配置
快速入门和教程文章以构建使用 MIP SDK 库和 API 的应用程序为中心。 本文介绍如何安装和配置 Microsoft 365 订阅和客户端工作站,为使用 SDK 做准备。
先决条件
在开始之前,请务必查看以下主题:
重要
为了尊重用户隐私,必须在启用自动日志记录之前征得用户同意。 以下示例是 Microsoft 用于记录通知的标准消息:
打开错误和性能日志记录,即表示你同意将错误和性能数据发送给 Microsoft。 Microsoft 将通过 Internet 收集错误和性能数据(简称“数据”)。 Microsoft 使用此“数据”提供并改善 Microsoft 产品与服务的质量、安全性和完整性。 例如,分析性能和可靠性,包括你所使用的功能、功能的响应速度、设备性能、用户界面交互以及使用产品时遇到的任何问题。 “数据”还将包括有关软件配置的信息,例如目前你正在运行的软件和 IP 地址。
注册 Office 365 订阅
许多 SDK 示例需要访问 Office 365 订阅。 如果还没有,请务必注册以下订阅类型之一:
名称 | 注册 |
---|---|
Office 365 企业版 E3 试用(30 天免费试用) | https://go.microsoft.com/fwlink/p/?LinkID=403802 |
Office 365 企业版 E3 或 E5 | https://www.microsoft.com/microsoft-365/enterprise/office-365-e3 |
企业移动性和安全性 E3 或 E5 | https://www.microsoft.com/security |
Azure 信息保护高级版 P1 或 P2 | Microsoft 365 安全性与合规性许可指南 |
Microsoft 365 E3、E5 或 F1 | https://www.microsoft.com/microsoft-365/enterprise/microsoft365-plans-and-pricing |
配置敏感度标签
如果你当前使用的是 Azure 信息保护,则必须将标签迁移到 Office 365 安全与合规中心。 有关该过程的详细信息,请参阅如何将 Azure 信息保护 标签迁移到 办公室 365 安全与合规中心。
配置客户端工作站
接下来,完成以下步骤以确保客户端计算机已正确安装和配置。
如果使用的是 Windows 10 工作站:
使用 Windows 更新,将计算机更新到 Windows 10 Fall Creators Update(版本 1709)或更高版本。 若要验证当前的版本,请执行以下操作:
- 单击左下角的 Windows 图标。
- 键入“电脑信息”,然后按“Enter”键。
- 向下滚动到“Windows 规范”,然后查看“版本”。
如果使用的是 Windows 11 或 Windows 10 工作站:
确保在工作站上启用了“开发人员模式”:
- 单击左下角的 Windows 图标。
- 当看到“使用开发人员功能”项显示时,键入“使用开发人员功能”并按“Enter”键。
- 在“设置”对话框的“适用于开发人员”选项卡的“使用开发人员功能”下,选择“开发人员模式”选项。
- 关闭设置对话框。
安装具有以下工作负载和可选组件的 Visual Studio 2019:
-
因为安装模块需要管理员权限,所以首先需要:
- 使用具有管理员权限的帐户登录计算机。
- 以提升的权限运行(以管理员身份运行)Windows PowerShell 会话。
然后运行
install-module -name adal.ps
cmdlet。PS C:\WINDOWS\system32> install-module -name adal.ps Untrusted repository You are installing the modules from an untrusted repository. If you trust this repository, change its InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure you want to install the modules from 'PSGallery'? [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "N"): A PS C:\WINDOWS\system32>
下载文件:
MIP SDK 在以下平台上受支持,每种支持的平台/语言都有单独的下载:
操作系统 版本 下载 说明 Ubuntu 20.04 C++ tar.gz
Java(预览版)tar.gz
.NET Core NuGet(预览版)Ubuntu 22.04 C++ tar.gz
Java(预览版)tar.gz
.NET Core NuGet(预览版)RedHat Enterprise Linux 7 8 和 9 C++ tar.gz Debian 10 和 11 C++ tar.gz macOS 所有支持的版本 C++ .zip Xcode 开发需要 13 或更高版本。 Windows 所有支持的版本,32/64 位 C++
C++/.NET NuGet
Java(预览版).zipAndroid 9.0 及更高版本 C++ .zip 仅保护和策略 SDK。 iOS 所有支持的版本 C++ .zip 仅保护和策略 SDK。 Tar.gz/.Zip 下载
Tar.gz 和 .Zip 下载包含压缩文件,每个 API 一个。 这些压缩文件的命名如下,其中 <API> =
file
、protection
或upe
,<OS> = 平台:mip_sdk_<API>_<OS>_1.0.0.0.zip (or .tar.gz)
。 例如,Debian 上的保护 SDK 二进制文件和标头文件将是:mip_sdk_protection_debian9_1.0.0.0.tar.gz
。 每个包含的 .tar.gz/.zip 都分为三个目录:- Bins:为每个平台架构编译的二进制文件(如果适用)。
- Include:头文件 (C++)。
- Samples:示例应用程序的源代码。
NuGet 包
如果你正在进行 Visual Studio 开发,也可以通过 NuGet 包管理器控制台安装 SDK:
Install-Package Microsoft.InformationProtection.File Install-Package Microsoft.InformationProtection.Policy Install-Package Microsoft.InformationProtection.Protection
如果不使用 NuGet 包,请将 SDK 二进制文件的路径添加到 PATH 环境变量。 PATH 变量允许客户端应用程序在运行时找到依赖的二进制文件 (DLL)(可选):
如果使用的是 Windows 11 或 Windows 10 工作站:
单击左下角的 Windows 图标。
当你看到“编辑系统环境变量”项显示时,键入“路径”并按“Enter”键。
在“系统属性”对话框中,单击“环境变量”。
在“环境变量”对话框中,单击“<user> 的用户变量”下的“路径”变量行,然后单击“编辑...”。
在“编辑环境变量”对话框中,单击“新建”,这将创建一个新的可编辑行。 使用每个
file\bins\debug\amd64
、protection\bins\debug\amd64
和upe\bins\debug\amd64
子目录的完整路径,为每个子目录添加一个新行。 SDK 目录以<API>\bins\<target>\<platform>
格式存储,其中:- <API> =
file
、protection
、upe
- <target> =
debug
、release
- <platform> =
amd64
(x64)、x86
等
- <API> =
完成更新“路径”变量后,单击“确定”。 然后,在返回到“环境变量”对话框时,单击“确定”。
从 GitHub 下载 SDK 示例(可选):
- 请先创建一个 GitHub 配置文件(如果还没有)。
- 然后,安装最新版本的软件自由保护组织的 Git 客户端工具 (Git Bash)
- 使用 Git Bash,下载感兴趣的示例:
- 使用以下查询查看存储库: https://github.com/Azure-Samples?utf8=%E2%9C%93&q=MipSdk。
- 使用 Git Bash,使用
git clone https://github.com/azure-samples/<repo-name>
下载每个示例存储库。
使用 Microsoft Entra ID 注册客户端应用程序
在 Microsoft 365 订阅预配过程中,将创建关联的 Microsoft Entra 租户。 Microsoft Entra 租户为 Microsoft 365 用户帐户和应用程序帐户提供身份和访问管理。 需要访问安全 API(例如 MIP API)的应用程序需要应用程序帐户。
对于运行时的身份验证和授权,帐户由安全主体表示,该主体派生自帐户的标识信息。 代表应用程序帐户的安全主体称为服务主体。
在 Microsoft Entra ID 中注册应用程序帐户以用于快速入门和 MIP SDK 示例:
重要
若要访问 Microsoft Entra 租户管理以创建帐户,需要使用属于订阅的“所有者”角色成员的用户帐户登录 Azure 门户。 根据租户的配置,可能还需要成为“全局管理员”目录角色的成员才能注册应用程序。 我们建议使用受限帐户进行测试。 确保该帐户仅有权访问必要的 SCC 终结点。 通过命令行传递的明文密码可能会被日志记录系统收集。
按照使用 Microsoft Entra ID 注册应用程序,注册新应用程序部分中的步骤操作。 出于测试目的,请在执行指南步骤时为给定属性使用以下值:
- 支持的帐户类型 - 选择“仅限此组织目录中的帐户”。
- 重定向 URI - 将重定向 URI 类型设置为“公共客户端 (移动 & 桌面)”。如果应用程序使用 Microsoft 身份验证库 (MSAL),请使用
http://localhost
。 否则,请使用<app-name>://authorize
格式的内容。
完成后,将返回到“已注册的应用”页面以进行新的应用程序注册。 复制 GUID 并将其保存在“应用程序(客户端) ID”字段中,因为你将在快速入门中需要它。
然后,单击“API 权限”,添加客户端将需要访问的 API 和权限。 单击“添加权限”以打开“请求 API 权限”边栏选项卡。
现在,你将添加应用程序在运行时需要的 MIP API 和权限:
- 在“选择 API”页面上,单击“Azure Rights Management Services”。
- 在“Azure Rights Management Services”API 页面上,单击“委托的权限”。
- 在“选择权限”部分,勾选“user_impersonation”权限。 此权限允许应用程序代表用户创建和访问受保护的内容。
- 单击“添加权限”以保存。
重复步骤 #4,但这次当你进入“选择 API”页面时,将需要搜索 API。
- 在“选择 API”页面上,单击“我的组织使用的 API”,然后在搜索框中输入“Microsoft 信息保护同步服务”并选择它。
- 在“Microsoft 信息保护同步服务”API 页面上,单击“委托的权限”。
- 展开“UnifiedPolicy”节点,然后勾选“UnifiedPolicy.User.Read”
- 单击“添加权限”以保存。
返回“API 权限”页面后,单击“为(租户名称)授予管理员同意”,然后单击“是”。 此步骤预先同意使用此注册的应用程序访问指定权限下的 API。 如果以全局管理员身份登录,则会记录租户中运行应用程序的所有用户的同意;否则,它仅适用于你的用户帐户。
完成后,应用程序注册和 API 权限应类似于以下示例:
有关向注册添加 API 和权限的详细信息,请参阅配置客户端应用程序以访问 Web API。 在这里,你将找到有关添加客户端应用程序所需的 API 和权限的信息。
申请信息保护集成协议 (IPIA)
在可以向公众发布使用 MIP 开发的应用程序之前,必须申请并完成与 Microsoft 的正式协议。
注意
仅供内部使用的应用程序不需要此协议。
通过向 IPIA@microsoft.com 发送包含以下信息的电子邮件来获取你的 IPIA:
主题:为 Company Name 申请 IPIA
在电子邮件的正文中,包括:
- 应用程序和产品名称
- 申请者的姓名
- 申请者的电子邮件地址
收到你的 IPIA 申请时,我们会向你发送一个表单(以 Word 文档形式)。 请查看 IPIA 的条款和条件,并将包含以下信息的表单返回给 IPIA@microsoft.com:
- 公司的法定名称
- 公司所在的州/省(美国/加拿大)或国家/地区
- 公司 URL
- 联系人的电子邮件地址
- 公司的其他地址(可选)
- 公司应用程序的名称
- 应用程序的简短说明
- Azure 租户 ID
- 应用程序的应用 ID
- 用于紧急情况通信的公司联系人、电子邮件和电话
收到你的窗体后,我们将向你发送最终 IPIA 链接来进行电子签名。 在你签名后,相应的 Microsoft 代表将对其进行签名,从而完成协议。
已拥有已签名的 IPIA?
如果你已拥有已签名的 IPIA 并且希望为你发布的应用程序添加新的应用 ID,请向 IPIA@microsoft.com 发送电子邮件并向我们提供以下信息:
- 公司应用程序的名称
- 应用程序的简短说明
- Azure 租户 ID(即使与之前的相同也要提供)
- 应用程序的应用 ID
- 用于紧急情况通信的公司联系人、电子邮件和电话
在发送电子邮件时,请留出最多 72 小时来等待接收确认。
确保应用具有所需的运行时
注意
仅当将应用程序部署到没有 Visual Studio 的计算机上,或者 Visual Studio 安装缺少 Visual C++ 运行时组件时,才需要执行此步骤。
使用 MIP SDK 构建的应用程序需要安装 Visual C++ 2015 或 Visual C++ 2017 运行时(如果尚未安装)。
- Microsoft Visual C++ 2015 Redistributable 更新 3
- Microsoft Visual C++ Redistributable for Visual Studio 2017
这些仅在应用程序已生成为“发布”时才有效。 如果应用程序生成为“调试”,则 Visual C++ 运行时调试 DLL 必须包含在应用程序中或安装在计算机上。
后续步骤
- 如果你是 C++ 开发人员
- 在开始快速入门部分之前,请务必阅读观察程序概念,以了解 C++ API 的异步特性。
- 当你准备好使用 SDK 获得一些经验时,请从快速入门:客户端应用程序初始化 (C++) 开始。
- 如果你是 C# 开发人员,当你准备好使用 SDK 获得一些经验时,请从快速入门:客户端应用程序初始化 (C#) 开始。