【问题标题】:How can you detect which edition of Azure AD is in use via C#?如何通过 C# 检测正在使用的 Azure AD 版本?
【发布时间】:2018-11-10 04:51:40
【问题描述】:

我需要确定正在使用的 AzureAD 版本是否为高级版。

如何在 C# 中确定?

【问题讨论】:

    标签: azure azure-active-directory microsoft-graph-api azure-sdk-.net azure-sdk


    【解决方案1】:

    您可以通过 Microsoft Graph .NET Client Library 或直接 HTTP 调用来使用 Microsoft Graph API。相关API是:

    另外,请注意,有关 Azure AD 版本的信息,您可以在同一个 Azure AD 中启用多种服务,并按用户购买/分配许可证。

    上面提到的 SubscribedSkus API 非常详细,它为您提供有关启用的功能以及可用的许可数量、使用的许可等信息。

    这是 MSDN 论坛上的一个类似帖子,您也应该看看,它只讨论门户但仍然是相关的概念:How to check Azure AD edition

    以下示例将打印包含 Azure AD Premium 服务计划的所有活动订阅 SKU:

    // There are various Azure AD versions and editions. Here we're only counting
    // Azure AD Premium Plan 1 and Azure AD Premium Plan 2. 
    var azureAdPlans = new[] { "AAD_PREMIUM", "AAD_PREMIUM_P2" };
    
    // Get all subscribed SKUs
    var subscribedSkus = graphClient
        .SubscribedSkus
        .Request().GetAsync().GetAwaiter().GetResult();
    
    // Filter down the results to only active subscribed SKUs with Azure AD service plans.
    var skusWithAzureAd = subscribedSkus
        .Where(sku => (sku.CapabilityStatus == "Enabled" || sku.CapabilityStatus == "Warning")
                    && (sku.ServicePlans.Any(p => azureAdPlans.Contains(p.ServicePlanName))));
    
    // Print out the results
    foreach (var sku in skusWithAzureAd)
    {
        Console.WriteLine(
            "{0} ({1}/{2} seats used)", 
            sku.SkuPartNumber, 
            sku.ConsumedUnits, 
            sku.PrepaidUnits.Enabled + sku.PrepaidUnits.Warning);
    }
    

    【讨论】:

    • 谢谢。您与另一个线程的链接带来了一件有趣的事情。可能有一个间接提供 AAD 溢价的 sku。你怎么能检测到呢?检查 AAD_PREMIUM 还是 EMS?还有其他需要注意的 sku 吗?
    • @DanaEpp 即使我不确定所有这些可能的值,但我已经看到 AAD_PREMIUM 和 ENTERPRISEPREMIUM
    • @DanaEpp 要获取所有包含 Azure AD Premium 服务计划的 SKU,您可能需要过滤每个 SubscribedSku 对象的 ServicePlan 属性。我添加了一个带有示例的编辑。
    • 太完美了。感谢各位大侠的见解。我发现此链接在尝试找出提供 AAD_PREMIUM 的内容时很有用:docs.microsoft.com/en-us/azure/active-directory/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-22
    • 1970-01-01
    • 2010-09-08
    • 1970-01-01
    • 2022-01-06
    • 2018-05-27
    • 1970-01-01
    相关资源
    最近更新 更多