3

我正在尝试使用 Windows Azure Active Directory (WAAD) Graph API 将应用程序添加到我的 WAAD 租户。我已成功使用 API 创建用户。使用 API 添加应用程序时,我收到授权异常:

Authorization_RequestDenied:权限不足,无法完成操作

执行相同的步骤来添加用户可以正常工作。

我按照这里的指南:http: //msdn.microsoft.com/en-us/library/windowsazure/dn151791.aspx#BKMK_Configuring和这里的示例:http: //code.msdn.microsoft.com/Write-Sample- App-for-79e55502开始使用。

这是我的代码示例:

//get the tenantName
var tenantName = ClaimsPrincipal.Current.FindFirst("http://schemas.microsoft.com/identity/claims/tenantid").Value;

// retrieve the clientId and password values from the Web.config file
var clientId = ConfigurationManager.AppSettings["ClientId"];
var password = ConfigurationManager.AppSettings["Password"];

// get a token using the helper
var token = DirectoryDataServiceAuthorizationHelper.GetAuthorizationToken(tenantName, clientId, password);

// initialize a graphService instance using the token acquired from previous step
var graphService = new DirectoryDataService(tenantName, token);

// Create and save the application
var application = new Application();
application.availableToOtherTenants = false;
application.displayName = "some display name";
application.homepage = "https://localhost/";
application.identifierUris.Add("https://localhost/");
application.replyUrls.Add("https://localhost/");
graphService.AddTodirectoryObjects(application);
graphService.SaveChanges();

我是否需要设置权限以允许通过 Graph API 创建应用程序?我无法在 Azure 管理控制台中找到允许我执行此操作的位置。

我是否使用正确的代码来添加应用程序?关于如何使用应用程序的示例并不多。我假设我需要使用 AddTodirectoryObjects 来保存应用程序,因为我没有找到应用程序的“AddTo...”方法。

4

1 回答 1

1

您的服务主体似乎扮演了错误的角色。我猜它在用户帐户管理员角色下。尝试将其添加到其他角色,例如:公司管理员用于测试目的......

于 2013-04-19T09:02:59.270 回答