C# 使用MIP SDK从MS 365个人帐户解密加密的office 365电子邮件

C# 使用MIP SDK从MS 365个人帐户解密加密的office 365电子邮件,c#,azure,office365,exchangewebservices,microsoft-information-protection,C#,Azure,Office365,Exchangewebservices,Microsoft Information Protection,当用户和应用程序位于同一Azure AD环境中时,我使用MIP SDK(1.6.113)成功地对rpmsg进行了解密。如果我试图解密从MS 365个人帐户发送的rpmsg,我将无法解密 AcquireToken代码被调用两次。调用AddingineAsync时,第一次调用acquire token时,会有传入的PARM: identity=Microsoft.InformationProtection.identity authority=”“ resource=“” 索赔=“” 在调用Crea

当用户和应用程序位于同一Azure AD环境中时,我使用MIP SDK(1.6.113)成功地对rpmsg进行了解密。如果我试图解密从MS 365个人帐户发送的rpmsg,我将无法解密

AcquireToken代码被调用两次。调用AddingineAsync时,第一次调用acquire token时,会有传入的PARM:

identity=Microsoft.InformationProtection.identity
authority=”“
resource=“”
索赔=“”

在调用CreateFileHandlerAsync时,第二次调用acquire token时,有传入的PARM:

identity=Microsoft.InformationProtection.identity
authority=”“
resource=“”
索赔=“”

然后代码给出了以下异常:

System.AggregateException
HResult=0x80131500
Message=One or more errors occurred.
Source=mscorlib

StackTrace:
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
at System.Threading.Tasks.Task`1.get_Result()
at MipSdkDotNetQuickstart.Action.CreateFileHandler(FileOptions options) in C:\MyGitHub\MipSdk-Dotnet-File-ServicePrincipalAuth-master\mip-sdk-dotnet-file-SPA\Action.cs:line 179
at MipSdkDotNetQuickstart.Action.RemoveProtection(FileOptions options) in C:\MyGitHub\MipSdk-Dotnet-File-ServicePrincipalAuth-master\mip-sdk-dotnet-file-SPA\Action.cs:line 212
at MipSdkDotNetQuickstart.Program.Main(String[] args) in C:\MyGitHub\MipSdk-Dotnet-File-ServicePrincipalAuth-master\mip-sdk-dotnet-file-SPA\Program.cs:line 111

This exception was originally thrown at this call stack:
[External Code]
MipSdkDotNetQuickstart.Action.CreateFileHandler.AnonymousMethod__0() in Action.cs

Inner Exception 1:
AccessDeniedException: The service didn't accept the auth token. Challenge:['Bearer resource="https://aadrm.com", realm="54485d23-c432-40fe-8436-6091d627118c", authorization="https://login.windows.net/54485d23-c432-40fe-8436-6091d627118c/oauth2/authorize"'], CorrelationId=f63bb5f6-009f-4b9f-a4b7-621df958845b, CorrelationId.Description=FileEngine
这里可能有什么问题?


如果您使用MSAL获得代币,请感谢

  • 使用资源调用AcquireToken时“https://syncservice.o365syncservice.com/“ 您必须调用app.AcquireTokenSilent(新[]{”https://psor.o365syncservice.com/UnifiedPolicy.User.Read“},firstAccount。)ExecuteAsync()

  • 使用资源调用AcquireToken时“https://aadrm.com“ 您必须调用app.AcquireTokenSilent(新[]{”https://aadrm.com/user_impersonation“},firstAccount。)ExecuteAsync()


问题似乎在于您的身份验证令牌,从您的错误日志中发送的身份验证令牌无效或已过期>服务未接受身份验证令牌。我正在代码中获取该令牌,因此它是新的。有趣的是,如果我将ADAL与此一起使用,则第二个acquire令牌将针对Contoso演示进行登录授权。因此,我假设这是一个Contoso演示应用程序。这怎么会发生?