Skip to content

Commit 2d14b5b

Browse files
authored
Allow specifying Authority (#2160)
* Allow specifying Authority * Add authority argument test
1 parent ca59529 commit 2d14b5b

2 files changed

Lines changed: 15 additions & 11 deletions

File tree

src/Microsoft.Identity.Web/MergedOptionsValidation.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public static void Validate(MergedOptions options)
1515
throw new ArgumentNullException(options.ClientId, string.Format(CultureInfo.InvariantCulture, IDWebErrorMessage.ConfigurationOptionRequired, nameof(options.ClientId)));
1616
}
1717

18-
if (string.IsNullOrEmpty(options.Instance))
18+
if (string.IsNullOrEmpty(options.Authority) && string.IsNullOrEmpty(options.Instance))
1919
{
2020
throw new ArgumentNullException(options.Instance, string.Format(CultureInfo.InvariantCulture, IDWebErrorMessage.ConfigurationOptionRequired, nameof(options.Instance)));
2121
}

tests/Microsoft.Identity.Web.Test/MicrosoftIdentityOptionsTests.cs

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -49,20 +49,23 @@ public void IsB2C_NullOrEmptyUserFlow_ReturnsFalse()
4949
}
5050

5151
[Theory]
52-
[InlineData(TestConstants.ClientId, TestConstants.AadInstance, TestConstants.GuestTenantId, null, AzureAd, null)]
53-
[InlineData(null, TestConstants.AadInstance, TestConstants.GuestTenantId, null, null, AzureAd, MissingParam.ClientId)]
54-
[InlineData("", TestConstants.AadInstance, TestConstants.GuestTenantId, null, null, AzureAd, MissingParam.ClientId)]
55-
[InlineData(TestConstants.ClientId, null, TestConstants.GuestTenantId, null, null, AzureAd, MissingParam.Instance)]
56-
[InlineData(TestConstants.ClientId, "", TestConstants.GuestTenantId, null, null, AzureAd, MissingParam.Instance)]
57-
[InlineData(TestConstants.ClientId, TestConstants.AadInstance, null, null, null, AzureAd, MissingParam.TenantId)]
58-
[InlineData(TestConstants.ClientId, TestConstants.AadInstance, "", null, null, AzureAd, MissingParam.TenantId)]
59-
[InlineData(TestConstants.ClientId, TestConstants.B2CInstance, null, TestConstants.B2CSignUpSignInUserFlow, TestConstants.B2CTenant, AzureAdB2C)]
60-
[InlineData(TestConstants.ClientId, TestConstants.B2CInstance, null, TestConstants.B2CSignUpSignInUserFlow, null, AzureAdB2C, MissingParam.Domain)]
61-
[InlineData(TestConstants.ClientId, TestConstants.B2CInstance, null, TestConstants.B2CSignUpSignInUserFlow, "", AzureAdB2C, MissingParam.Domain)]
52+
[InlineData(TestConstants.ClientId, TestConstants.AadInstance, TestConstants.GuestTenantId, null, null, AzureAd, null)]
53+
[InlineData(null, TestConstants.AadInstance, TestConstants.GuestTenantId, null, null, null, AzureAd, MissingParam.ClientId)]
54+
[InlineData("", TestConstants.AadInstance, TestConstants.GuestTenantId, null, null, null, AzureAd, MissingParam.ClientId)]
55+
[InlineData(TestConstants.ClientId, null, TestConstants.GuestTenantId, null, null, null, AzureAd, MissingParam.Instance)]
56+
[InlineData(TestConstants.ClientId, "", TestConstants.GuestTenantId, null, null, null, AzureAd, MissingParam.Instance)]
57+
[InlineData(TestConstants.ClientId, TestConstants.AadInstance, null, null, null, null, AzureAd, MissingParam.TenantId)]
58+
[InlineData(TestConstants.ClientId, TestConstants.AadInstance, "", null, null, null, AzureAd, MissingParam.TenantId)]
59+
[InlineData(TestConstants.ClientId, TestConstants.B2CInstance, null, null, TestConstants.B2CSignUpSignInUserFlow, TestConstants.B2CTenant, AzureAdB2C)]
60+
[InlineData(TestConstants.ClientId, TestConstants.B2CInstance, null, null, TestConstants.B2CSignUpSignInUserFlow, null, AzureAdB2C, MissingParam.Domain)]
61+
[InlineData(TestConstants.ClientId, TestConstants.B2CInstance, null, null, TestConstants.B2CSignUpSignInUserFlow, "", AzureAdB2C, MissingParam.Domain)]
62+
[InlineData(TestConstants.ClientId, null, null, TestConstants.AuthorityWithTenantSpecified, null, null, AzureAd, MissingParam.TenantId)]
63+
[InlineData(null, null, null, TestConstants.AuthorityWithTenantSpecified, null, null, AzureAd, MissingParam.ClientId)]
6264
public void ValidateRequiredMicrosoftIdentityOptions(
6365
string clientId,
6466
string instance,
6567
string tenantid,
68+
string authority,
6669
string signUpSignInPolicyId,
6770
string domain,
6871
string optionsName,
@@ -86,6 +89,7 @@ public void ValidateRequiredMicrosoftIdentityOptions(
8689
ClientId = clientId,
8790
Instance = instance,
8891
TenantId = tenantid,
92+
Authority = authority,
8993
});
9094
}
9195

0 commit comments

Comments
 (0)