如何访问Azure Management API China

时间:2015-05-26 00:26:53

标签: c# azure azure-management azure-management-api

我已经编写了一个工具来设置Azure Web Apps,数据库,存储帐户等。 对于一般Azure来说,它工作得很好。但是,我现在想将其应用于 Azure中国。现在,我正在寻找正确的Urls,以便从Active Directory获取令牌,甚至可以访问API端点。

我正在执行这些说明:https://msdn.microsoft.com/en-us/library/azure/dn722415.aspx Azure的这些设置完美运行:

oAuthAuthorizationEndpoint="https://login.microsoftonline.com/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/oauth2/authorize?api-version=1.0" apiEndpoint="https://management.core.windows.net/"

这些是我使用的Azure中国网址:

oAuthAuthorizationEndpoint="https://login.chinacloudapi.cn/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/oauth2/authorize?api-version=1.0" apiEndpoint="https://management.core.chinacloudapi.cn/"

我现在可以使用TokenCloudCredentials和上述设置成功登录。

this.Credentials = new TokenCloudCredentials(config.SubscriptionId, this.AuthenticationResult.AccessToken);
this.ResourceManagement = new ResourceManagementClient(this.Credentials, new Uri(config.ApiEndpoint));
var resourceGroups = this.ResourceManagement.ResourceGroups.ListAsync(new ResourceGroupListParameters(), CancellationToken.None).Result.ResourceGroups;
Console.WriteLine("ResourceGroupe: {0}", string.Join(", ", resourceGroups.Select(x => string.Format("{0}", x.Name)).ToArray()));

但是,只要我尝试访问API,如上所示,我就会遇到以下异常: 的 ForbiddenError: The server failed to authenticate the request. Verify that the certificate is valid and is associated with this subscription.

通过调用this.ResourceManagement.Providers.RegisterAsync("Microsoft.Storage")

引发同样的异常

是否有人能够成功使用Azure中国的管理API?你是怎么做到的?

我非常确信我的所有Guids都有效且所有权限都已正确设置。因为我将它与我的Azure工作人员进行了比较。

(Guids显然是蒙面的)

0 个答案:

没有答案