Skip to content

Commit 76b95b3

Browse files
CopilotbgavrilMS
andcommitted
Add sovereign cloud enum values and update GetCloudUrl method
Co-authored-by: bgavrilMS <12273384+bgavrilMS@users.noreply.github.com>
1 parent 50aa1a3 commit 76b95b3

3 files changed

Lines changed: 27 additions & 0 deletions

File tree

src/client/Microsoft.Identity.Client/AppConfig/AuthorityInfo.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -261,6 +261,12 @@ internal static string GetCloudUrl(AzureCloudInstance azureCloudInstance)
261261
return "https://login.microsoftonline.de";
262262
case AzureCloudInstance.AzureUsGovernment:
263263
return "https://login.microsoftonline.us";
264+
case AzureCloudInstance.AzureBleu:
265+
return "https://login.sovcloud-identity.fr";
266+
case AzureCloudInstance.AzureDelos:
267+
return "https://login.sovcloud-identity.de";
268+
case AzureCloudInstance.AzureGovSG:
269+
return "https://login.sovcloud-identity.sg";
264270
default:
265271
throw new ArgumentException(nameof(azureCloudInstance));
266272
}

src/client/Microsoft.Identity.Client/AppConfig/AzureCloud.cs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,5 +31,20 @@ public enum AzureCloudInstance
3131
/// US Government cloud. Maps to https://login.microsoftonline.us
3232
/// </summary>
3333
AzureUsGovernment,
34+
35+
/// <summary>
36+
/// Azure Bleu sovereign cloud (France). Maps to https://login.sovcloud-identity.fr
37+
/// </summary>
38+
AzureBleu,
39+
40+
/// <summary>
41+
/// Azure Delos sovereign cloud (Germany). Maps to https://login.sovcloud-identity.de
42+
/// </summary>
43+
AzureDelos,
44+
45+
/// <summary>
46+
/// Azure GovSG sovereign cloud (Singapore). Maps to https://login.sovcloud-identity.sg
47+
/// </summary>
48+
AzureGovSG,
3449
};
3550
}

tests/Microsoft.Identity.Test.Unit/AppConfigTests/PublicClientApplicationBuilderTests.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -358,6 +358,12 @@ public void EnsureCreatePublicClientWithAzureAdMyOrgAndValidTenantSucceeds()
358358
[DataRow(AzureCloudInstance.AzureChina, AadAuthorityAudience.AzureAdMultipleOrgs, "https://login.chinacloudapi.cn/organizations/", DisplayName = "AzureChina + AzureAdMultipleOrgs")]
359359
[DataRow(AzureCloudInstance.AzureChina, AadAuthorityAudience.AzureAdAndPersonalMicrosoftAccount, "https://login.chinacloudapi.cn/common/", DisplayName = "AzureChina + AzureAdAndPersonalMicrosoftAccount")]
360360
[DataRow(AzureCloudInstance.AzureChina, AadAuthorityAudience.PersonalMicrosoftAccount, "https://login.chinacloudapi.cn/consumers/", DisplayName = "AzureChina + PersonalMicrosoftAccount")]
361+
[DataRow(AzureCloudInstance.AzureBleu, AadAuthorityAudience.AzureAdMultipleOrgs, "https://login.sovcloud-identity.fr/organizations/", DisplayName = "AzureBleu + AzureAdMultipleOrgs")]
362+
[DataRow(AzureCloudInstance.AzureBleu, AadAuthorityAudience.AzureAdAndPersonalMicrosoftAccount, "https://login.sovcloud-identity.fr/common/", DisplayName = "AzureBleu + AzureAdAndPersonalMicrosoftAccount")]
363+
[DataRow(AzureCloudInstance.AzureDelos, AadAuthorityAudience.AzureAdMultipleOrgs, "https://login.sovcloud-identity.de/organizations/", DisplayName = "AzureDelos + AzureAdMultipleOrgs")]
364+
[DataRow(AzureCloudInstance.AzureDelos, AadAuthorityAudience.AzureAdAndPersonalMicrosoftAccount, "https://login.sovcloud-identity.de/common/", DisplayName = "AzureDelos + AzureAdAndPersonalMicrosoftAccount")]
365+
[DataRow(AzureCloudInstance.AzureGovSG, AadAuthorityAudience.AzureAdMultipleOrgs, "https://login.sovcloud-identity.sg/organizations/", DisplayName = "AzureGovSG + AzureAdMultipleOrgs")]
366+
[DataRow(AzureCloudInstance.AzureGovSG, AadAuthorityAudience.AzureAdAndPersonalMicrosoftAccount, "https://login.sovcloud-identity.sg/common/", DisplayName = "AzureGovSG + AzureAdAndPersonalMicrosoftAccount")]
361367
public void TestAuthorityPermutations(
362368
AzureCloudInstance cloudInstance,
363369
AadAuthorityAudience audience,

0 commit comments

Comments
 (0)