【问题标题】:Does Azure SDK 4 .NET support Azure gov?Azure SDK 4 .NET 是否支持 Azure gov?
【发布时间】:2018-07-17 01:09:19
【问题描述】:

尝试在 Azure Gov 中获取 Subscription 的操作,但 Azure ManagementClient 的默认 api 端点是全局端点:https://management.azure.com/

在我将 azure gov (https://management.usgovcloudapi.net/) 的端点指定给 ManagementClient 的构造方法之后

例如 var managementClient = new ManagementClient(credentials, new Uri("https://management.usgovcloudapi.net/") 它返回缺少 api 版本.. 在我将 api-version 作为后缀添加到 uri 之后,它返回未找到订阅 id..

有人知道它也适用于 azure gov 吗?

请任何人或任何帮助。

【问题讨论】:

    标签: azure-sdk-.net azure-gov


    【解决方案1】:

    Azure SDK 4 .NET 是否支持 Azure gov?

    是的,我们可以使用以下SdkContext.AzureCredentialsFactory 来选择 Azure 环境。下面是demo代码,大家可以参考。

    var tenantId = "tenant Id";
    var secretKey = "secret Key ";
    var clientId = "Application Id";
    var subscriptionId = "subscription Id";
    credentials = SdkContext.AzureCredentialsFactory.FromServicePrincipal(clientId, secretKey, tenantId,AzureEnvironment.AzureUSGovernment);
    var resourceManagementClient = new ResourceManagementClient(credentials)
                {
                    SubscriptionId = subscriptionId 
                };
    

    【讨论】:

    • 如果我需要使用管理证书而不是 AAD 应用程序进行身份验证怎么办?
    • 我使用Microsoft.WindowsAzure.Management命名空间下的ManagementClient类,并通过调用获取操作日志:await managementClient.Subscriptions.ListOperationsAsync(listOperationsParameters,cancellationToken);
    • 建议使用Azure fluent SDK操作Azure资源。
    • Microsoft.WindowsAzure.Management 自 2015 年起未更新。由于所有 azure 资源都迁移到 Azure 门户。它使用资源管理模式进行管理。推荐使用 Azure Fluent SDK 操作 Azure 资源。 SdkContext.AzureCredentialsFactory.FromServicePrincipal(String, X509Certificate2, String, AzureEnvironment)
    猜你喜欢
    • 2022-06-21
    • 1970-01-01
    • 2016-09-22
    • 1970-01-01
    • 2014-11-06
    • 1970-01-01
    • 1970-01-01
    • 2019-06-15
    • 1970-01-01
    相关资源
    最近更新 更多