Nationale clouds, ook wel onafhankelijke clouds genoemd, zijn fysiek geïsoleerde exemplaren van Azure. Deze regio's van Azure helpen ervoor te zorgen dat de vereisten voor gegevenslocatie, soevereiniteit en naleving binnen geografische grenzen worden nageleefd.
Naast de wereldwijde Microsoft-cloud kunnen microsoft authentication library (MSAL) toepassingsontwikkelaars in nationale clouds tokens verkrijgen om beveiligde web-API's te verifiëren en aan te roepen. Deze web-API's kunnen Microsoft Graph of andere Microsoft-API's zijn.
Inclusief de wereldwijde Azure-cloud wordt Microsoft Entra ID geïmplementeerd in de volgende nationale clouds:
Deze handleiding laat zien hoe u zich aanmeldt bij werk- en schoolaccounts, een toegangstoken opvragen en de Microsoft Graph API aanroept in de Azure Government-cloudomgeving .
Microsoft Azure Duitsland (Microsoft Cloud Deutschland)
Waarschuwing
Azure Duitsland (Microsoft Cloud Deutschland) wordt gesloten op 29 oktober 2021. Services en toepassingen die u ervoor kiest om vóór die datum niet naar een regio in Azure te migreren, zullen ontoegankelijk worden.
Als u uw toepassing nog niet hebt gemigreerd vanuit Azure Duitsland, volgt u microsoft Entra-informatie voor de migratie van Azure Duitsland om aan de slag te gaan.
Vereiste voorwaarden
Voordat u begint, moet u ervoor zorgen dat u aan deze vereisten voldoet.
De juiste identiteiten kiezen
Azure Government-toepassingen kunnen Microsoft Entra Government-identiteiten en openbare Microsoft Entra-identiteiten gebruiken om gebruikers te verifiëren. Omdat u een van deze identiteiten kunt gebruiken, moet u bepalen welk instantie-eindpunt u moet kiezen voor uw scenario:
- Microsoft Entra Public: wordt vaak gebruikt als uw organisatie al een openbare Microsoft Entra-tenant heeft ter ondersteuning van Microsoft 365 (openbaar of GCC) of een andere toepassing.
- Microsoft Entra Government: wordt vaak gebruikt als uw organisatie al een Microsoft Entra Government-tenant heeft ter ondersteuning van Office 365 (GCC High of DoD) of als u een nieuwe tenant maakt in Microsoft Entra Government.
Nadat u hebt besloten, is een speciale overweging waar u uw app-registratie uitvoert. Als u Openbare Microsoft Entra-identiteiten kiest voor uw Azure Government-toepassing, moet u de toepassing registreren in uw openbare Microsoft Entra-tenant.
Een Azure Government-abonnement ophalen
Zie Beheren en verbinding maken met uw abonnement in Azure Government om een Azure Government-abonnement op te halen.
Als u geen Abonnement op Azure Government hebt, maakt u een gratis account voordat u begint.
Kies het tabblad dat overeenkomt met uw taal voor meer informatie over het gebruik van een nationale cloud met een bepaalde programmeertaal:
U kunt MSAL.NET gebruiken om gebruikers aan te melden, tokens te verkrijgen en de Microsoft Graph API aan te roepen in nationale clouds.
In de volgende zelfstudies ziet u hoe u een ASP.NET Core-web-app bouwt. De app maakt gebruik van OpenID Connect om gebruikers aan te melden met een werk- en schoolaccount in een organisatie die deel uitmaakt van een nationale cloud.
Uw MSAL.js-toepassing inschakelen voor onafhankelijke clouds:
- Registreer uw toepassing in een specifieke portal, afhankelijk van de cloud. Raadpleeg app-registratie-eindpunten voor meer informatie over het kiezen van de portal
- Gebruik een van de voorbeelden uit de opslagplaats met enkele wijzigingen in de configuratie, afhankelijk van de cloud, die hierna wordt vermeld.
- Gebruik een specifieke instantie, afhankelijk van de cloud waarin u de toepassing hebt geregistreerd. Raadpleeg Microsoft Entra-verificatie-eindpunten voor meer informatie over autoriteiten voor verschillende clouds.
- Voor het aanroepen van de Microsoft Graph API is een eindpunt-URL vereist die specifiek is voor de cloud die u gebruikt. Als u Microsoft Graph-eindpunten voor alle nationale clouds wilt vinden, raadpleegt u de basiseindpunten van de service Microsoft Graph en Graph Explorer.
Hier volgt een voorbeeldinstantie:
"authority": "https://login.microsoftonline.us/Enter_the_Tenant_Info_Here"
Hier volgt een voorbeeld van een Microsoft Graph-eindpunt met bereik:
"endpoint" : "https://graph.microsoft.us/v1.0/me"
"scope": "User.Read"
Hier volgt de minimale code voor het verifiëren van een gebruiker met een onafhankelijke cloud en het aanroepen van Microsoft Graph:
const msalConfig = {
auth: {
clientId: "Enter_the_Application_Id_Here",
authority: "https://login.microsoftonline.us/Enter_the_Tenant_Info_Here",
redirectUri: "/",
}
};
// Initialize MSAL
const msalObj = new PublicClientApplication(msalConfig);
// Get token using popup experience
try {
const graphToken = await msalObj.acquireTokenPopup({
scopes: ["User.Read"]
});
} catch(error) {
console.log(error)
}
// Call the Graph API
const headers = new Headers();
const bearer = `Bearer ${graphToken}`;
headers.append("Authorization", bearer);
fetch("https://graph.microsoft.us/v1.0/me", {
method: "GET",
headers: headers
})
Uw MSAL Python-toepassing inschakelen voor onafhankelijke clouds:
Registreer uw toepassing in een specifieke portal, afhankelijk van de cloud. Raadpleeg app-registratie-eindpunten voor meer informatie over het kiezen van de portal
Gebruik een van de voorbeelden uit de opslagplaats met enkele wijzigingen in de configuratie, afhankelijk van de cloud, die hierna wordt vermeld.
Gebruik een specifieke instantie, afhankelijk van de cloud waarin u de toepassing hebt geregistreerd. Raadpleeg Microsoft Entra-verificatie-eindpunten voor meer informatie over autoriteiten voor verschillende clouds.
Hier volgt een voorbeeldinstantie:
"authority": "https://login.microsoftonline.us/Enter_the_Tenant_Info_Here"
Voor het aanroepen van de Microsoft Graph API is een eindpunt-URL vereist die specifiek is voor de cloud die u gebruikt. Als u Microsoft Graph-eindpunten voor alle nationale clouds wilt vinden, raadpleegt u de basiseindpunten van de service Microsoft Graph en Graph Explorer.
Hier volgt een voorbeeld van een Microsoft Graph-eindpunt met bereik:
"endpoint" : "https://graph.microsoft.us/v1.0/me"
"scope": "User.Read"
Uw MSAL-toepassing voor Java inschakelen voor soevereine clouds:
- Registreer uw toepassing in een specifieke portal, afhankelijk van de cloud. Raadpleeg app-registratie-eindpunten voor meer informatie over het kiezen van de portal
- Gebruik een van de voorbeelden uit de opslagplaats met enkele wijzigingen in de configuratie, afhankelijk van de cloud, die hierna worden vermeld.
- Gebruik een specifieke instantie, afhankelijk van de cloud waarin u de toepassing hebt geregistreerd. Raadpleeg Microsoft Entra-verificatie-eindpunten voor meer informatie over autoriteiten voor verschillende clouds.
Hier volgt een voorbeeldinstantie:
"authority": "https://login.microsoftonline.us/Enter_the_Tenant_Info_Here"
Hier volgt een voorbeeld van een grafiekeindpunt, met bereik:
"endpoint" : "https://graph.microsoft.us/v1.0/me"
"scope": "User.Read"
MSAL voor iOS en macOS kan worden gebruikt voor het verkrijgen van tokens in nationale clouds, maar vereist extra configuratie bij het maken MSALPublicClientApplication.
Als u bijvoorbeeld wilt dat uw toepassing een toepassing met meerdere tenants is in een nationale cloud (hier de Amerikaanse overheid), kunt u het volgende schrijven:
MSALAADAuthority *aadAuthority =
[[MSALAADAuthority alloc] initWithCloudInstance:MSALAzureUsGovernmentCloudInstance
audienceType:MSALAzureADMultipleOrgsAudience
rawTenant:nil
error:nil];
MSALPublicClientApplicationConfig *config =
[[MSALPublicClientApplicationConfig alloc] initWithClientId:@"<your-client-id-here>"
redirectUri:@"<your-redirect-uri-here>"
authority:aadAuthority];
NSError *applicationError = nil;
MSALPublicClientApplication *application =
[[MSALPublicClientApplication alloc] initWithConfiguration:config error:&applicationError];
MSAL voor iOS en macOS kan worden gebruikt voor het verkrijgen van tokens in nationale clouds, maar vereist extra configuratie bij het maken MSALPublicClientApplication.
Als u bijvoorbeeld wilt dat uw toepassing een toepassing met meerdere tenants is in een nationale cloud (hier de Amerikaanse overheid), kunt u het volgende schrijven:
let authority = try? MSALAADAuthority(cloudInstance: .usGovernmentCloudInstance, audienceType: .azureADMultipleOrgsAudience, rawTenant: nil)
let config = MSALPublicClientApplicationConfig(clientId: "<your-client-id-here>", redirectUri: "<your-redirect-uri-here>", authority: authority)
if let application = try? MSALPublicClientApplication(configuration: config) { /* Use application */}
Volgende stappen
Zie Nationale cloudverificatie-eindpunten voor een lijst met de URL's en tokeneindpunten van Azure Portal voor elke cloud.
Documentatie nationale clouds: