【发布时间】:2020-10-01 03:30:55
【问题描述】:
我们正在开发一个应用程序,以使用 MIP SDK(我们目前使用版本 1.6.103)打开和编辑受保护的 PDF 文件。 到目前为止,我们能够打开使用不同版本的 Microsoft 保护(包括 MicrosoftIRMServices 版本 1)保护的文件。
我们现在遇到了一位客户的问题。他们将文件保存在 SharePoint 2016 目录中,该目录配置为自动为所有上传的文件添加保护。他们所有的环境都在本地,并且使用 AD RMS 服务进行保护。他们在服务器端没有 Azure IP。
当我们下载生成的文件并尝试打开时,我们创建一个 mipns::FileEngine,然后调用 CreateFileHandlerAsync() 来创建一个 mipns::FileHandler。此调用失败并出现以下 mipns::NetworkError:
NetworkError : Content protected by on prem servers is unsupported., NetworkError.Category=FailureResponseCode, HttpRequest.SanitizedUrl=https://api.aadrm.com/my/v2/enduserlicenses,
正如错误所暗示的,我怀疑问题出在使用本地保护。 我认为它可能会按照以下说明解决 https://docs.microsoft.com/en-us/information-protection/develop/quick-app-adrms#configuring-protection-api-in-c-to-use-ad-rms 所以,按照这些说明,我创建了 FileEngine
ProtectionEngine::Settings engineSettings("", authDelegate, "");
engineSettings.SetProtectionCloudEndpointBaseUrl("http://<my server>/_wmcs/licensing");
但到目前为止没有成功,虽然错误已经改变并且现在是
NetworkError : The protection service is unavailable., NetworkError.Category=FailureResponseCode, HttpRequest.SanitizedUrl=https://<my server>/my/v1/enduserlicenses,
(当然<my server> 被替换为本地服务)
我是不是走错了方向?如果不是,也许我使用了错误的端点?如何按照链接页面中的建议找到要传递给 SetProtectionCloudEndpointBaseUrl 的端点 URL?
谢谢
【问题讨论】:
标签: microsoft-information-protection