Availability of services for Microsoft Azure operated by 21Vianet

Azure operated by 21Vianet is a physically separated instance of cloud services located in China. It's independently operated and transacted by Shanghai Blue Cloud Technology Co., Ltd. ("21Vianet"), a wholly owned subsidiary of Beijing 21Vianet Broadband Data Center Co., Ltd.

Service availability

Microsoft's goal for Azure in China is to match service availability in Azure. For service availability for Azure in China, see Products available by China regions.

AI + machine learning

This section outlines variations and considerations when using Azure Bot Service, Azure Machine Learning, and Azure AI services.

Product Unsupported, limited, and/or modified features Notes
Azure Machine Learning See Azure Machine Learning feature availability across Azure in China cloud regions.
Azure AI Speech See Azure AI services: Azure in China - Speech service
Azure AI Speech For feature variations and limitations, including API endpoints, see Translator in sovereign clouds.

Microsoft Entra External ID

This section outlines variations and considerations when using Microsoft Entra External ID B2B collaboration.

Product Unsupported, limited, and/or modified features Notes
Microsoft Entra External ID For Microsoft Entra External ID B2B feature variations in Microsoft Azure for customers in China, see Microsoft Entra B2B in national clouds and Microsoft cloud settings (Preview).

Azure Active Directory B2C

This section outlines variations and considerations when using Azure Active Directory B2C services.

Product Unsupported, limited, and/or modified features
Azure Active Directory B2C For Azure Active Directory B2C feature variations in Microsoft Azure for customers in China, see Developer notes for Azure Active Directory B2C.

Media

This section outlines variations and considerations when using Media services.

Product Unsupported, limited, and/or modified features Notes
Azure Media Services For Azure Media Services v3 feature variations in Microsoft Azure for customers in China, see Azure Media Services v3 clouds and regions availability.

Microsoft Authentication Library (MSAL)

This section outlines variations and considerations when using Microsoft Authentication Library (MSAL) services.

Product Unsupported, limited, and/or modified features Notes
Microsoft Authentication Library (MSAL) For feature variations and limitations, see National clouds and MSAL.

Networking

This section outlines variations and considerations when using Networking services.

Product Unsupported, limited, and/or modified features Notes
Private Link
  • For Private Link services availability, see Azure Private Link availability.
  • For Private DNS zone names, see Azure Private Endpoint DNS configuration.
  • Security

    This section outlines variations and considerations when using Security services.

    Product Unsupported, limited, and/or modified features Notes
    Microsoft Sentinel For Microsoft Sentinel availability, see Microsoft Sentinel availability.

    Azure Arc-enabled Kubernetes

    This section outlines variations and considerations when using Azure Arc-enabled Kubernetes.

    Product Unsupported, limited, and/or modified features Notes
    API Management API Management on Arc-enabled Kubernetes isn't supported for Azure in China
    App service App service on Arc-enabled Kubernetes isn't supported for Azure in China
    Azure Monitor container insights Azure Monitor container insights on Arc-enabled Kubernetes isn't supported for Azure in China
    Container Apps Container Apps on Arc-enabled Kubernetes isn't supported for Azure in China
    Dapr Dapr extension for Arc-enabled Kubernetes isn't supported for Azure in China
    Event Grid Event Grid on Arc-enabled Kubernetes isn't supported for Azure in China
    Machine Learning Azure Machine Learning on Arc-enabled Kubernetes isn't supported for Azure in China
    Microsoft Defender for Cloud Microsoft Defender for Cloud on Arc-enabled Kubernetes isn't supported for Azure in China
    Open Service Mesh Open Service Mesh on Arc-enabled Kubernetes isn't supported for Azure in China

    Azure Container Apps

    This section outlines variations and considerations when using Azure Container Apps services.

    Product Unsupported, limited, and/or modified features Notes
    Azure Monitor The Azure Monitor integration isn't supported for Azure in China

    Azure Managed Grafana

    Product Unsupported, limited, and/or modified features Notes
    Azure Managed Grafana See Azure Managed Grafana: Feature availability in sovereign clouds.

    Azure China Commercial Marketplace operated by 21Vianet

    To learn which commercial marketplace features are available in Azure China Commercial Marketplace operated by 21Vianet, as compared to the Azure global commercial marketplace, see Feature availability for Azure China Commercial Marketplace operated by 21Vianet.

    Microsoft Cost Management + Billing

    This section outlines variations and considerations when using Microsoft Cost Management + Billing features and APIs.

    Azure Retail Rates API for China

    The Azure Retail Prices API for China article is applicable only to Azure in China and isn't available in Azure Global.

    Markup - China

    The Markup - China article is applicable only to Azure operated by 21Vianet and isn't available in Azure Global.

    Azure in China Account Sign in

    The table below lists ways to connect to your Azure account in Azure Global vs. Azure in China.

    Sign in description Azure Global Azure in China
    Sign into Azure with an authenticated account for use with Azure Resource Manager Connect-AzureAccount Connect-AzureAccount -Environment AzureChinaCloud
    Sign into Microsoft Entra ID with Microsoft Graph PowerShell Connect-MgGraph Connect-MgGraph -AzureEnvironment China
    Sign into your Azure classic portal account Add-AzureAccount Add-AzureAccount -Environment AzureChinaCloud

    Azure in China REST endpoints

    The table below lists API endpoints in Azure Global vs. Azure in China for accessing and managing some of the more common services.

    For IP rangers for Azure in China, download Azure Datacenter IP Ranges in China.

    Service category Azure Global Azure in China
    Azure (in general) *.windows.net *.chinacloudapi.cn
    Microsoft Entra ID https://login.microsoftonline.com https://login.chinacloudapi.cn
    Azure App Configuration *.azconfig.io *.azconfig.azure.cn
    Azure compute *.cloudapp.net *.chinacloudapp.cn
    Azure data https://{location}.experiments.azureml.net https://{location}.experiments.ml.azure.cn
    Azure storage *.blob.core.windows.net *.queue.core.windows.net *.table.core.windows.net *.dfs.core.windows.net *.blob.core.chinacloudapi.cn *.queue.core.chinacloudapi.cn *.table.core.chinacloudapi.cn *.dfs.core.chinacloudapi.cn
    Azure management https://management.azure.com/ https://management.chinacloudapi.cn/
    Azure service management https://management.core.windows.net https://management.core.chinacloudapi.cn
    Azure Resource Manager https://management.azure.com https://management.chinacloudapi.cn
    Azure portal https://portal.azure.com https://portal.azure.cn
    SQL Database *.database.windows.net *.database.chinacloudapi.cn
    SQL Azure DB management API https://management.database.windows.net https://management.database.chinacloudapi.cn
    Azure Service Bus *.servicebus.windows.net *.servicebus.chinacloudapi.cn
    Azure SignalR Service *.service.signalr.net *.signalr.azure.cn
    Azure Time Series Insights *.timeseries.azure.com *.insights.timeseries.azure.cn *.timeseries.azure.cn *.insights.timeseries.azure.cn
    Azure Access Control Service *.accesscontrol.windows.net *.accesscontrol.chinacloudapi.cn
    Azure HDInsight *.azurehdinsight.net *.azurehdinsight.cn
    SQL DB import/export service endpoint  1. China East https://sh1prod-dacsvc.chinacloudapp.cn/dacwebservice.svc
    2. China North https://bj1prod-dacsvc.chinacloudapp.cn/dacwebservice.svc
    MySQL PaaS *.mysqldb.chinacloudapi.cn
    Azure Service Fabric cluster *.cloudapp.azure.com *.chinaeast.chinacloudapp.cn
    Azure Spring Cloud *.azuremicroservices.io *.microservices.azure.cn
    Microsoft Entra ID *.onmicrosoft.com *.partner.onmschina.cn
    Microsoft Entra logon https://login.microsoftonline.com https://login.partner.microsoftonline.cn
    Microsoft Graph https://graph.microsoft.com https://microsoftgraph.chinacloudapi.cn
    Azure AI services https://api.projectoxford.ai/face/v1.0 https://api.cognitive.azure.cn/face/v1.0
    Azure Bot Services <*.botframework.com> <*.botframework.azure.cn>
    Azure Key Vault API *.vault.azure.net *.vault.azure.cn
    Azure Container Apps Default Domain *.azurecontainerapps.io No default domain is provided for external environment. The custom domain is required.
    Azure Container Apps Event Stream Endpoint \<region\>.azurecontainerapps.dev `<region>.chinanorth3.azurecontainerapps-dev.cn``

    Application Insights

    Note

    Codeless agent/extension based monitoring for Azure App Services is currently not supported. Snapshot Debugger is also not currently available.

    SDK endpoint modifications

    In order to send data from Application Insights in this region, you'll need to modify the default endpoint addresses that are used by the Application Insights SDKs. Each SDK requires slightly different modifications.

    .NET with applicationinsights.config

    <ApplicationInsights>
      ...
      <TelemetryModules>
        <Add Type="Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse.QuickPulseTelemetryModule, Microsoft.AI.PerfCounterCollector">
          <QuickPulseServiceEndpoint>https://quickpulse.applicationinsights.azure.cn/QuickPulseService.svc</QuickPulseServiceEndpoint>
        </Add>
      </TelemetryModules>
        ...
      <TelemetryChannel>
         <EndpointAddress>https://dc.applicationinsights.azure.cn/v2/track</EndpointAddress>
      </TelemetryChannel>
      ...
      <ApplicationIdProvider Type="Microsoft.ApplicationInsights.Extensibility.Implementation.ApplicationId.ApplicationInsightsApplicationIdProvider, Microsoft.ApplicationInsights">
        <ProfileQueryEndpoint>https://dc.applicationinsights.azure.cn/api/profiles/{0}/appId</ProfileQueryEndpoint>
      </ApplicationIdProvider>
      ...
    </ApplicationInsights>
    

    .NET Core

    Modify the appsettings.json file in your project as follows to adjust the main endpoint:

    "ApplicationInsights": {
        "InstrumentationKey": "instrumentationkey",
        "TelemetryChannel": {
          "EndpointAddress": "https://dc.applicationinsights.azure.cn/v2/track"
        }
      }
    

    The values for Live Metrics and the Profile Query Endpoint can only be set via code. To override the default values for all endpoint values via code, make the following changes in the ConfigureServices method of the Startup.cs file:

    using Microsoft.ApplicationInsights.Extensibility.Implementation.ApplicationId;
    using Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse; //place at top of Startup.cs file
    
       services.ConfigureTelemetryModule<QuickPulseTelemetryModule>((module, o) => module.QuickPulseServiceEndpoint="https://quickpulse.applicationinsights.azure.cn/QuickPulseService.svc");
    
       services.AddSingleton(new ApplicationInsightsApplicationIdProvider() { ProfileQueryEndpoint = "https://dc.applicationinsights.azure.cn/api/profiles/{0}/appId" }); 
    
       services.AddSingleton<ITelemetryChannel>(new ServerTelemetryChannel() { EndpointAddress = "https://dc.applicationinsights.azure.cn/v2/track" });
    
        //place in ConfigureServices method. If present, place this prior to   services.AddApplicationInsightsTelemetry("instrumentation key");
    

    Java

    Modify the applicationinsights.xml file to change the default endpoint address.

    <?xml version="1.0" encoding="utf-8"?>
    <ApplicationInsights xmlns="http://schemas.microsoft.com/ApplicationInsights/2013/Settings">
      <InstrumentationKey>ffffeeee-dddd-cccc-bbbb-aaaa99998888</InstrumentationKey>
      <TelemetryModules>
        <Add type="com.microsoft.applicationinsights.web.extensibility.modules.WebRequestTrackingTelemetryModule"/>
        <Add type="com.microsoft.applicationinsights.web.extensibility.modules.WebSessionTrackingTelemetryModule"/>
        <Add type="com.microsoft.applicationinsights.web.extensibility.modules.WebUserTrackingTelemetryModule"/>
      </TelemetryModules>
      <TelemetryInitializers>
        <Add type="com.microsoft.applicationinsights.web.extensibility.initializers.WebOperationIdTelemetryInitializer"/>
        <Add type="com.microsoft.applicationinsights.web.extensibility.initializers.WebOperationNameTelemetryInitializer"/>
        <Add type="com.microsoft.applicationinsights.web.extensibility.initializers.WebSessionTelemetryInitializer"/>
        <Add type="com.microsoft.applicationinsights.web.extensibility.initializers.WebUserTelemetryInitializer"/>
        <Add type="com.microsoft.applicationinsights.web.extensibility.initializers.WebUserAgentTelemetryInitializer"/>
      </TelemetryInitializers>
      <!--Add the following Channel value to modify the Endpoint address-->
      <Channel type="com.microsoft.applicationinsights.channel.concrete.inprocess.InProcessTelemetryChannel">
      <EndpointAddress>https://dc.applicationinsights.azure.cn/v2/track</EndpointAddress>
      </Channel>
    </ApplicationInsights>
    

    Spring Boot

    Modify the application.properties file and add:

    azure.application-insights.channel.in-process.endpoint-address= https://dc.applicationinsights.azure.cn/v2/track
    

    Node.js

    var appInsights = require("applicationinsights");
    appInsights.setup('INSTRUMENTATION_KEY');
    appInsights.defaultClient.config.endpointUrl = "https://dc.applicationinsights.azure.cn/v2/track"; // ingestion
    appInsights.defaultClient.config.profileQueryEndpoint = "https://dc.applicationinsights.azure.cn/api/profiles/{0}/appId"; // appid/profile lookup
    appInsights.defaultClient.config.quickPulseHost = "https://quickpulse.applicationinsights.azure.cn/QuickPulseService.svc"; //live metrics
    appInsights.Configuration.start();
    

    The endpoints can also be configured through environment variables:

    Instrumentation Key: “APPINSIGHTS_INSTRUMENTATIONKEY”
    Profile Endpoint: “https://dc.applicationinsights.azure.cn/api/profiles/{0}/appId”
    Live Metrics Endpoint: "https://quickpulse.applicationinsights.azure.cn/QuickPulseService.svc"
    

    JavaScript

    <script type="text/javascript">
    var sdkInstance="appInsightsSDK";window[sdkInstance]="appInsights";var aiName=window[sdkInstance],aisdk=window[aiName]||function(e){function n(e){i[e]=function(){var n=arguments;i.queue.push(function(){i[e].apply(i,n)})}}var i={config:e};i.initialize=!0;var a=document,t=window;setTimeout(function(){var n=a.createElement("script");n.src=e.url||"https://az416426.vo.msecnd.net/next/ai.2.min.js",a.getElementsByTagName("script")[0].parentNode.appendChild(n)});try{i.cookie=a.cookie}catch(e){}i.queue=[],i.version=2;for(var r=["Event","PageView","Exception","Trace","DependencyData","Metric","PageViewPerformance"];r.length;)n("track"+r.pop());n("startTrackPage"),n("stopTrackPage");var o="Track"+r[0];if(n("start"+o),n("stop"+o),!(!0===e.disableExceptionTracking||e.extensionConfig&&e.extensionConfig.ApplicationInsightsAnalytics&&!0===e.extensionConfig.ApplicationInsightsAnalytics.disableExceptionTracking)){n("_"+(r="onerror"));var s=t[r];t[r]=function(e,n,a,t,o){var c=s&&s(e,n,a,t,o);return!0!==c&&i["_"+r]({message:e,url:n,lineNumber:a,columnNumber:t,error:o}),c},e.autoExceptionInstrumented=!0}return i}
    (
    	{
    	instrumentationKey:"INSTRUMENTATION_KEY",
    	endpointUrl: "https://dc.applicationinsights.azure.cn/v2/track"
      }
    );
    window[aiName]=aisdk,aisdk.queue&&0===aisdk.queue.length&&aisdk.trackPageView({});
    </script>
    
    

    Remote Management

    Azure portal

    You can sign in to the Azure portal to manage workloads in Azure operated by 21Vianet anywhere globally.

    Work with administrator roles

    One account administrator role is created per Azure account, typically the person who signed up for or bought the Azure subscription. This role is authorized to use the Account Center to perform management tasks.

    To sign in, the account administrator uses the organization ID (Org ID) created when the subscription was purchased.

    Create a service administrator to manage the service deployment

    One service administrator role is created per Azure account, and is authorized to manage services in the Azure portal. With a new subscription, the account administrator is also the service administrator.

    Create a co-administrator

    Account administrators can create up to 199 co-administrator roles per subscription. This role has the same access privileges as the service administrator, but can't change the association of subscriptions to Azure directories.