用户或管理员未同意使用ID为“<appid>”的应用程序

时间:2017-01-30 15:06:00

标签: azure-active-directory microsoft-dynamics dynamics-ax7

我们在开始使用DYN365O Update 3后不久就开始遇到这个问题。我们的代码工作了一段时间,然后在1月中旬停止了工作。我们有一张进入微软的票,但希望有人找到了解决方法。当我们的代码尝试连接时发生以下错误:

  

响应代码(1004){“错误”:“AADSTS65001:用户或管理员   未同意使用ID为''的应用程序。发送一个   此用户和资源的交互式授权请求。\ r \ nTrace   ID:d1775f71-ac60-4d12-ace5-39b52452a5c7 \ r \ n相关ID:   38e3b5c6-52c2-4ea9-9ad1-67230e246b40 \ r \ n时间戳:2017-01-29   21:42:43Z“}

我能够使用此处的代码(https://github.com/Microsoft/Dynamics-AX-Integration)来重新创建问题。以下是相关部分:

    string aadTenant = ClientConfiguration.Default.ActiveDirectoryTenant;
    string aadClientAppId = ClientConfiguration.Default.ActiveDirectoryClientAppId;
    string aadResource = ClientConfiguration.Default.ActiveDirectoryResource;

    AuthenticationContext authenticationContext = new AuthenticationContext(aadTenant);

    // OAuth through username and password.
    string username = ClientConfiguration.Default.UserName;
    string password = ClientConfiguration.Default.Password;

    // Get token object
    var userCredential = new UserPasswordCredential(username, password);
    AuthenticationResult authenticationResult = authenticationContext.AcquireTokenAsync(
    aadResource,
    aadClientAppId,
    userCredential).Result;
  1. 指向我们的更新2(8月更新)DYN365O实例时 一切都很完美。
  2. 将URI更改为指向Update3,我们开始看到这些错误。
  3. 我搜索了互联网,我已经完成了所有建议,包括:

    1. 在Azure的清单中设置oauth2AllowImplicitFlow = true 应用
    2. 根据AAD中APP的权限,我使用了Grant “为所有帐户授予权限”的权限 目录”。
    3. 更改对AcquireTokenAsync的调用以包含 “提示= admin_consent”。我看到了提示屏幕但是 即使在输入AAD管理员用户名/密码后我也一样 错误。
    4. 尝试其他用户3。
    5. 在DYN365O中验证用户(在系统管理&gt;&gt;下) 用户)在Update2和Update3实例中都是相同的 系统管理员。

0 个答案:

没有答案