Skip to content

Commit 0e87e7e

Browse files
committed
ADFS cleanup
1 parent 40a6b06 commit 0e87e7e

13 files changed

Lines changed: 51 additions & 243 deletions

msal4j-sdk/src/integrationtest/java/com.microsoft.aad.msal4j/AcquireTokenInteractiveIT.java

Lines changed: 20 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import org.junit.jupiter.api.AfterEach;
88
import org.junit.jupiter.api.BeforeEach;
99
import org.junit.jupiter.api.Test;
10+
import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
1011
import org.slf4j.Logger;
1112
import org.slf4j.LoggerFactory;
1213
import org.junit.jupiter.api.TestInstance;
@@ -46,26 +47,15 @@ void acquireTokenInteractive_ManagedUser() {
4647
assertAcquireTokenCommon(user, labResponse.getApp().getAppId(), cfg.commonAuthority(), cfg.graphDefaultScope());
4748
}
4849

49-
// TODO: labapi2 doesn't have on-prem ADFS user configuration yet - will be pulled from MSAL.NET
50-
// @Test()
51-
// @DisabledIfSystemProperty(named = "adfs.disabled", matches = "true")
52-
// void acquireTokenInteractive_ADFSv2019_OnPrem() {
53-
// LabResponse labResponse = LabUserHelper.getOnPremAdfsUser(LabServiceParameters.FederationProvider.ADFS_V2019);
54-
// LabUser user = labResponse.getUser();
55-
// assertAcquireTokenCommon(user, TestConstants.ADFS_AUTHORITY, TestConstants.ADFS_SCOPE);
56-
// }
57-
58-
// TODO: labapi2 doesn't have ADFS v4 specific user helper yet - will be pulled from MSAL.NET
59-
// @ParameterizedTest
60-
// @MethodSource("com.microsoft.aad.msal4j.EnvironmentsProvider#createData")
61-
// @DisabledIfSystemProperty(named = "adfs.disabled", matches = "true")
62-
// void acquireTokenInteractive_ADFSv4_Federated(String environment) {
63-
// cfg = new Config(environment);
64-
//
65-
// LabResponse labResponse = LabUserHelper.getFederatedAdfsUser(environment, LabServiceParameters.FederationProvider.ADFS_V4);
66-
// LabUser user = labResponse.getUser();
67-
// assertAcquireTokenCommon(user, cfg.organizationsAuthority(), cfg.graphDefaultScope());
68-
// }
50+
//TODO: need to sort out ADFS 2022 configuration
51+
@Test()
52+
@DisabledIfSystemProperty(named = "adfs.disabled", matches = "true")
53+
void acquireTokenInteractive_ADFSv2022() {
54+
LabResponse labResponse = LabUserHelper.getDefaultAdfsUser();
55+
56+
LabUser user = labResponse.getUser();
57+
assertAcquireTokenCommon(user, labResponse.getApp().getAppId(), labResponse.getApp().getAuthority() + "organizations/", TestConstants.ADFS_SCOPE);
58+
}
6959

7060
@Test
7161
void acquireTokenWithAuthorizationCode_B2C_Local() {
@@ -85,15 +75,14 @@ void acquireTokenWithAuthorizationCode_B2C_LegacyFormat() {
8575
assertAcquireTokenB2C(user, TestConstants.B2C_AUTHORITY_LEGACY_FORMAT);
8676
}
8777

88-
// TODO: labapi2 needs cross-cloud instance aware test configuration - will be pulled from MSAL.NET
89-
// @Test
90-
// void acquireTokenInteractive_ManagedUser_InstanceAware() {
91-
// cfg = new Config(AzureEnvironment.AZURE);
92-
//
93-
// LabResponse labResponse = LabUserHelper.getDefaultUser(AzureEnvironment.AZURE_US_GOVERNMENT);
94-
// LabUser user = labResponse.getUser();
95-
// assertAcquireTokenInstanceAware(user);
96-
// }
78+
@Test
79+
void acquireTokenInteractive_ManagedUser_InstanceAware() {
80+
cfg = new Config();
81+
82+
LabResponse labResponse = LabUserHelper.getArlingtonUser();
83+
LabUser user = labResponse.getUser();
84+
assertAcquireTokenInstanceAware(user, labResponse.getApp().getAppId(), labResponse.getLab().getTenantId());
85+
}
9786

9887
@Test
9988
void acquireTokenInteractive_Ciam() {
@@ -169,8 +158,8 @@ private void assertAcquireTokenB2C(LabUser user, String authority) {
169158
IntegrationTestHelper.assertAccessAndIdTokensNotNull(result);
170159
}
171160

172-
private void assertAcquireTokenInstanceAware(LabUser user) {
173-
PublicClientApplication pca = IntegrationTestHelper.createPublicApp(user.getAppId(), TestConstants.MICROSOFT_AUTHORITY_HOST + user.getTenantId());
161+
private void assertAcquireTokenInstanceAware(LabUser user, String appId, String tenantId) {
162+
PublicClientApplication pca = IntegrationTestHelper.createPublicApp(appId, TestConstants.MICROSOFT_AUTHORITY_HOST + tenantId);
174163

175164
IAuthenticationResult result = acquireTokenInteractive_instanceAware(user, pca, cfg.graphDefaultScope());
176165

msal4j-sdk/src/integrationtest/java/com.microsoft.aad.msal4j/AcquireTokenSilentIT.java

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -88,32 +88,6 @@ void acquireTokenSilent_ForceRefresh() throws Exception {
8888
assertEquals(TokenSource.IDENTITY_PROVIDER, resultAfterRefresh.metadata().tokenSource());
8989
}
9090

91-
// TODO: labapi2 doesn't have ADFS v4 specific user helper yet - will be pulled from MSAL.NET
92-
// @ParameterizedTest
93-
// @MethodSource("com.microsoft.aad.msal4j.EnvironmentsProvider#createData")
94-
// @DisabledIfSystemProperty(named = "adfs.disabled", matches = "true")
95-
// void acquireTokenSilent_MultipleAccountsInCache_UseCorrectAccount(String environment) throws Exception {
96-
// cfg = new Config(environment);
97-
//
98-
// IPublicClientApplication pca = getPublicClientApplicationWithTokensInCache();
99-
//
100-
// // get lab user for different account
101-
// LabResponse labResponse = LabUserHelper.getFederatedAdfsUser(environment, LabServiceParameters.FederationProvider.ADFS_V4);
102-
// LabUser user = labResponse.getUser();
103-
//
104-
// // acquire token for different account
105-
// acquireTokenUsernamePassword(user, pca, cfg.graphDefaultScope());
106-
//
107-
// Set<IAccount> accounts = pca.getAccounts().join();
108-
// IAccount account = accounts.stream().filter(
109-
// x -> x.username().equalsIgnoreCase(
110-
// user.getUpn())).findFirst().orElse(null);
111-
//
112-
// IAuthenticationResult result = acquireTokenSilently(pca, account, cfg.graphDefaultScope(), false);
113-
// assertResultNotNull(result);
114-
// assertEquals(result.account().username(), user.getUpn());
115-
// }
116-
11791
@Test
11892
void acquireTokenSilent_usingCommonAuthority_returnCachedAt() throws Exception {
11993
acquireTokenSilent_returnCachedTokens(cfg.organizationsAuthority());

msal4j-sdk/src/integrationtest/java/com.microsoft.aad.msal4j/AuthorizationCodeIT.java

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import com.microsoft.aad.msal4j.labapi2.*;
77
import org.junit.jupiter.api.AfterEach;
88
import org.junit.jupiter.api.BeforeEach;
9+
import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
910
import org.slf4j.Logger;
1011
import org.slf4j.LoggerFactory;
1112
import org.junit.jupiter.api.Test;
@@ -48,19 +49,6 @@ public void acquireTokenWithAuthorizationCode_ManagedUser() {
4849
assertAcquireTokenAAD(user, labResponse.getApp().getAppId(), null);
4950
}
5051

51-
// TODO: labapi2 doesn't have ADFS v4 specific user helper yet - will be pulled from MSAL.NET
52-
// @ParameterizedTest
53-
// @MethodSource("com.microsoft.aad.msal4j.EnvironmentsProvider#createData")
54-
// @DisabledIfSystemProperty(named = "adfs.disabled", matches = "true")
55-
// public void acquireTokenWithAuthorizationCode_ADFSv4_Federated(String environment) {
56-
// cfg = new Config(environment);
57-
//
58-
// LabResponse labResponse = LabUserHelper.getFederatedAdfsUser(environment, LabServiceParameters.FederationProvider.ADFS_V4);
59-
// LabUser user = labResponse.getUser();
60-
//
61-
// assertAcquireTokenAAD(user, null);
62-
// }
63-
6452
@Test
6553
public void acquireTokenWithAuthorizationCode_B2C_Local() {
6654
cfg = new Config();
@@ -105,12 +93,22 @@ public void acquireTokenWithAuthorizationCode_CiamCud() throws Exception {
10593
assertEquals(resultSilent.account().username(), result.account().username());
10694
}
10795

108-
private void assertAcquireTokenADFS2019(LabUser user) {
96+
//TODO: need to sort out ADFS 2022 configuration
97+
@Test
98+
@DisabledIfSystemProperty(named = "adfs.disabled", matches = "true")
99+
void acquireTokenWithAuthorizationCode_ADFSv2022() {
100+
LabResponse labResponse = LabUserHelper.getDefaultAdfsUser();
101+
102+
LabUser user = labResponse.getUser();
103+
assertAcquireTokenADFS(user, labResponse.getApp().getAppId(), labResponse.getApp().getAuthority() + "organizations/");
104+
}
105+
106+
private void assertAcquireTokenADFS(LabUser user, String appId, String authority) {
109107
PublicClientApplication pca;
110108
try {
111109
pca = PublicClientApplication.builder(
112-
TestConstants.ADFS_APP_ID).
113-
authority(TestConstants.ADFS_AUTHORITY).
110+
appId).
111+
authority(authority).
114112
build();
115113
} catch (MalformedURLException ex) {
116114
throw new RuntimeException(ex.getMessage());

msal4j-sdk/src/integrationtest/java/com.microsoft.aad.msal4j/AzureEnvironmentIT.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,6 @@
1313
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
1414
class AzureEnvironmentIT {
1515

16-
// TODO: labapi2 doesn't have Azure China user configuration yet - will be pulled from MSAL.NET
17-
// @Test
18-
// void acquireTokenWithUsernamePassword_AzureChina() throws Exception {
19-
// assertAcquireTokenCommon(AzureEnvironment.AZURE_CHINA);
20-
// }
21-
2216
@Test
2317
void acquireTokenWithUsernamePassword_AzureGovernment() throws Exception {
2418
LabResponse labResponse = LabUserHelper.getArlingtonUser();

msal4j-sdk/src/integrationtest/java/com.microsoft.aad.msal4j/SeleniumTest.java

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,22 +25,13 @@ public void startUpBrowser() {
2525

2626
void runSeleniumAutomatedLogin(LabUser user, AbstractClientApplicationBase app) {
2727
AuthorityType authorityType = app.authenticationAuthority.authorityType;
28+
2829
if (authorityType == AuthorityType.B2C) {
29-
switch (user.getB2cProvider().toLowerCase()) {
30-
case "local":
31-
SeleniumExtensions.performLocalLogin(seleniumDriver, user);
32-
break;
33-
case "google":
34-
SeleniumExtensions.performGoogleLogin(seleniumDriver, user);
35-
break;
36-
case "facebook":
37-
SeleniumExtensions.performFacebookLogin(seleniumDriver, user);
38-
break;
39-
}
30+
SeleniumExtensions.performLocalLogin(seleniumDriver, user);
4031
} else if (authorityType == AuthorityType.AAD) {
4132
SeleniumExtensions.performADOrCiamLogin(seleniumDriver, user);
4233
} else if (authorityType == AuthorityType.ADFS) {
43-
SeleniumExtensions.performADFS2019Login(seleniumDriver, user);
34+
SeleniumExtensions.performADFSLogin(seleniumDriver, user);
4435
} else if (authorityType == AuthorityType.CIAM || authorityType == AuthorityType.OIDC) {
4536
SeleniumExtensions.performADOrCiamLogin(seleniumDriver, user);
4637
}

msal4j-sdk/src/integrationtest/java/com.microsoft.aad.msal4j/TokenCacheIT.java

Lines changed: 0 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -49,59 +49,6 @@ void singleAccountInCache_RemoveAccountTest() throws Exception {
4949
assertEquals(pca.getAccounts().join().size(), 0);
5050
}
5151

52-
// TODO: labapi2 doesn't have ADFS v4 specific user helper yet - will be pulled from MSAL.NET
53-
// @Test
54-
// @DisabledIfSystemProperty(named = "adfs.disabled", matches = "true")
55-
// void twoAccountsInCache_RemoveAccountTest() throws Exception {
56-
//
57-
// LabResponse managedResponse = LabUserHelper.getDefaultUser(AzureEnvironment.AZURE);
58-
// LabUser managedUser = managedResponse.getUser();
59-
//
60-
// PublicClientApplication pca = PublicClientApplication.builder(
61-
// managedResponse.getApp().getAppId()).
62-
// authority(TestConstants.ORGANIZATIONS_AUTHORITY).
63-
// build();
64-
//
65-
// assertEquals(pca.getAccounts().join().size(), 0);
66-
//
67-
// pca.acquireToken(UserNamePasswordParameters.
68-
// builder(Collections.singleton(TestConstants.GRAPH_DEFAULT_SCOPE),
69-
// managedUser.getUpn(),
70-
// managedUser.getPassword().toCharArray())
71-
// .build())
72-
// .get();
73-
//
74-
// assertEquals(pca.getAccounts().join().size(), 1);
75-
//
76-
// // get lab user for different account
77-
// LabResponse adfsResponse = LabUserHelper.getFederatedAdfsUser(AzureEnvironment.AZURE, LabServiceParameters.FederationProvider.ADFS_V4);
78-
// LabUser adfsUser = adfsResponse.getUser();
79-
//
80-
// // acquire token for different account
81-
// pca.acquireToken(UserNamePasswordParameters.
82-
// builder(Collections.singleton(TestConstants.GRAPH_DEFAULT_SCOPE),
83-
// adfsUser.getUpn(),
84-
// adfsUser.getPassword().toCharArray())
85-
// .build())
86-
// .get();
87-
//
88-
// assertEquals(pca.getAccounts().join().size(), 2);
89-
//
90-
// Set<IAccount> accounts = pca.getAccounts().join();
91-
// IAccount accountLabResponse1 = accounts.stream().filter(
92-
// x -> x.username().equalsIgnoreCase(
93-
// managedUser.getUpn())).findFirst().orElse(null);
94-
//
95-
// pca.removeAccount(accountLabResponse1).join();
96-
//
97-
// assertEquals(pca.getAccounts().join().size(), 1);
98-
//
99-
// IAccount accountLabResponse2 = pca.getAccounts().get().iterator().next();
100-
//
101-
// // Check that the right account was left in the cache
102-
// assertEquals(accountLabResponse2.username(), adfsUser.getUpn());
103-
// }
104-
10552
// TODO: labapi2 doesn't have guest user configuration yet - will be pulled from MSAL.NET
10653
// @Test
10754
// @DisabledIfSystemProperty(named = "adfs.disabled", matches = "true")

msal4j-sdk/src/integrationtest/java/com.microsoft.aad.msal4j/UsernamePasswordIT.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,6 @@ private void assertAcquireTokenCommon(LabUser user, String authority, String sco
7171
authority(authority).
7272
build();
7373

74-
System.out.println("Scope: " + scope);
75-
System.out.println("UPN: " + user.getUpn());
7674
IAuthenticationResult result = pca.acquireToken(UserNamePasswordParameters.
7775
builder(Collections.singleton(scope),
7876
user.getUpn(),

msal4j-sdk/src/integrationtest/java/com/microsoft/aad/msal4j/labapi2/LabServiceParameters.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ public enum FederationProvider {
1010
ADFS_V4,
1111
@Deprecated // ADFSv3 is out of support, do not use. The Arlington lab is federated to ADFSv3, so this value is needed
1212
ADFS_V3,
13-
ADFS_2022,
13+
ADFSv2022,
1414
CIAM, // CIAM
1515
CIAMCUD, // CIAM CUD
1616
}

msal4j-sdk/src/integrationtest/java/com/microsoft/aad/msal4j/labapi2/LabUserHelper.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -259,10 +259,6 @@ public static LabResponse getB2CMsaAccount() {
259259
return getLabUserData(UserQuery.b2cMsaAccountQuery());
260260
}
261261

262-
public static LabResponse getAdfs2022User() {
263-
return getLabUserData(UserQuery.adfs2022UserQuery());
264-
}
265-
266262
public static LabResponse getCiamOboUser() {
267263
return getLabUserData(UserQuery.ciamOboUserQuery());
268264
}

msal4j-sdk/src/integrationtest/java/com/microsoft/aad/msal4j/labapi2/UserQuery.java

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -43,18 +43,6 @@ public static UserQuery arlingtonUserQuery() {
4343
return query;
4444
}
4545

46-
/**
47-
* Gets an ADFS 2022 federated user from the lab.
48-
* Uses the Lab API to query for a user with ADFS 2022 federation.
49-
*/
50-
public static UserQuery adfs2022UserQuery() {
51-
UserQuery query = new UserQuery();
52-
query.setAzureEnvironment(AzureEnvironment.AZURE);
53-
query.setFederationProvider(FederationProvider.ADFS_2022);
54-
query.setUserType(UserType.FEDERATED);
55-
return query;
56-
}
57-
5846
/**
5947
* Gets a B2C local account (username/password) from the lab.
6048
*/

0 commit comments

Comments
 (0)