使用 MIP SDK 解密加密的 office 365 电子邮件

Decrypting an encrypted office 365 email using MIP SDK

我正在关注论坛主题:

我有兴趣了解解密加密的 Office 365 电子邮件的步骤。 能否请您对以下内容发表评论:

  1. 正如您提到的,必须将电子邮件转换为 .msg 文件,所以我的问题是,在将电子邮件(我认为是 Mime 流)写入 msg 文件后,文件是否会保留加密?

  2. 当我们使用EWS阅读邮件时,.rpmsg文件在解密中的作用是什么,它是加密邮件中的附件api?

  3. 我探索了 MIP 保护和文件 Api。因此,要使用 SetLabel 加密文件,我们需要一个敏感度标签(来自 Office 365 Compliance),我认为我们必须使用相同的标签来解密电子邮件,使用它,电子邮件被加密。同样,是否可以从转换后的 .msg 文件中获取标签?

  4. 我在上面提到的论坛 link 中提到的 FileHandler 对象中找不到 Inspect method\function。您能否建议如何找到它?

所以总而言之,只想知道解密加密电子邮件的步骤,使用 FileHandler.RemoveProtection() 后跟 FileHandler.CommitAsync()。

谢谢

我们正在为 office365 电子邮件开发电子数据展示解决方案,并一直在等待代码示例来解密加密的 office 365 电子邮件。对于我们,对于使用 MIP|AIP 保护 office 365 电子邮件的客户来说,它是一个表演障碍。

我们也有几乎相同的问题,直到示例发布在 MIP SDK 的示例页面上: https://docs.microsoft.com/en-us/samples/browse/?products=azure&term=mip%20sdk

谢谢。 大卫

有一个步骤是随 SDK bin (https://aka.ms/mipsdkbins) 一起提供的示例应用程序。我们有一个准备好在文档中发布的草稿,但我不希望它在一两周内可用。

如果您使用的是 C#,则可以使用它来启用功能标志。

var customSettings = new List<KeyValuePair<string, string>>();
customSettings.Add(new KeyValuePair<string, string>("enable_msg_file_type", "true"));

// Create a FileEngineSettings object, then use that to add an engine to the profile.
var engineSettings = new FileEngineSettings("user1@tenant.com", "", "en-US");
engineSettings.Identity = new Identity("user1@tenant.com");

//set custom settings for the engine
engineSettings.CustomSettings = customSettings;

这将使您的应用程序能够解密 MSG 文件并使用 Inspect 功能将 message.rpmsg 文件解密为字节流。

请务必注意,我们不直接支持解密 EML(符合 MIME 的)邮件。您需要转换为 MSG 或解密从 MIME 消息中提取的 message.rpsmg 文件。

回答您的问题:

  1. 是的。将 EML 转换为 MSG,加密仍然存在。你应该能够解密。
  2. Message.rpmsg是一个加密信封,包含明文邮件正文和所有附件。您可以使用 Inspect 函数来获取解密的字节和附件。请记住,附件也可能已加密,您需要自行递归解密。
  3. 您不需要标签信息来解密邮件。如果您指的是 MSG 文件,则可以使用 FileHandler.RemoveProtection() 函数或 GetDecryptedTemporaryFileAsync()(或流选项)。
  4. 如果您使用的是 .NET,我们没有在 1.5 中公开它(仅限 C++)。我们计划在下周发布 MIP SDK 1.6,它将在那里可用。