Skip to content

Commit 66dea81

Browse files
committed
Merge branch 'avdunn/nimbus-removal' of https://github.com/AzureAD/microsoft-authentication-library-for-java into avdunn/nimbus-utils
# Conflicts: # msal4j-sdk/src/test/java/com/microsoft/aad/msal4j/HelperAndUtilityTests.java
2 parents f264456 + cd495fa commit 66dea81

31 files changed

+346
-143
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Quick links:
1616
The library supports the following Java environments:
1717
- Java 8 (or higher)
1818

19-
Current version - 1.20.0
19+
Current version - 1.20.1
2020

2121
You can find the changes for each version in the [change log](https://github.com/AzureAD/microsoft-authentication-library-for-java/blob/main/msal4j-sdk/changelog.txt).
2222

@@ -28,13 +28,13 @@ Find [the latest package in the Maven repository](https://mvnrepository.com/arti
2828
<dependency>
2929
<groupId>com.microsoft.azure</groupId>
3030
<artifactId>msal4j</artifactId>
31-
<version>1.20.0</version>
31+
<version>1.20.1</version>
3232
</dependency>
3333
```
3434
### Gradle
3535

3636
```gradle
37-
implementation group: 'com.microsoft.azure', name: 'com.microsoft.aad.msal4j', version: '1.20.0'
37+
implementation group: 'com.microsoft.azure', name: 'com.microsoft.aad.msal4j', version: '1.20.1'
3838
```
3939

4040
## Usage

changelog.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
Version 1.20.1
2+
=============
3+
- Fix Base64URL decoding bug (#938)
4+
15
Version 1.20.0
26
=============
37
- Replace some usage of jackson-databind with azure-json (#918)

msal4j-sdk/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Quick links:
1616
The library supports the following Java environments:
1717
- Java 8 (or higher)
1818

19-
Current version - 1.20.0
19+
Current version - 1.20.1
2020

2121
You can find the changes for each version in the [change log](https://github.com/AzureAD/microsoft-authentication-library-for-java/blob/master/changelog.txt).
2222

@@ -28,13 +28,13 @@ Find [the latest package in the Maven repository](https://mvnrepository.com/arti
2828
<dependency>
2929
<groupId>com.microsoft.azure</groupId>
3030
<artifactId>msal4j</artifactId>
31-
<version>1.20.0</version>
31+
<version>1.20.1</version>
3232
</dependency>
3333
```
3434
### Gradle
3535

3636
```gradle
37-
compile group: 'com.microsoft.azure', name: 'msal4j', version: '1.20.0'
37+
compile group: 'com.microsoft.azure', name: 'msal4j', version: '1.20.1'
3838
```
3939

4040
## Usage

msal4j-sdk/bnd.bnd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
Export-Package: com.microsoft.aad.msal4j;version="1.20.0"
1+
Export-Package: com.microsoft.aad.msal4j;version="1.20.1"
22
Automatic-Module-Name: com.microsoft.aad.msal4j

msal4j-sdk/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<modelVersion>4.0.0</modelVersion>
44
<groupId>com.microsoft.azure</groupId>
55
<artifactId>msal4j</artifactId>
6-
<version>1.20.0</version>
6+
<version>1.20.1</version>
77
<packaging>jar</packaging>
88
<name>msal4j</name>
99
<description>

msal4j-sdk/src/main/java/com/microsoft/aad/msal4j/AbstractClientApplicationBase.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import java.net.MalformedURLException;
88
import java.net.Proxy;
99
import java.net.URL;
10-
import java.util.Collections;
1110
import java.util.Set;
1211
import java.util.concurrent.CompletableFuture;
1312
import java.util.concurrent.ExecutorService;
@@ -134,22 +133,22 @@ public URL getAuthorizationRequestUrl(AuthorizationRequestUrlParameters paramete
134133

135134
validateNotNull("parameters", parameters);
136135

137-
parameters.requestParameters.put("client_id", Collections.singletonList(this.clientId));
136+
parameters.requestParameters.put("client_id", this.clientId);
138137

139138
//If the client application has any client capabilities set, they must be merged into the claims parameter
140139
if (this.clientCapabilities != null) {
141140
if (parameters.requestParameters.containsKey("claims")) {
142-
String claims = String.valueOf(parameters.requestParameters.get("claims").get(0));
141+
String claims = String.valueOf(parameters.requestParameters.get("claims"));
143142
String mergedClaimsCapabilities = JsonHelper.mergeJSONString(claims, this.clientCapabilities);
144-
parameters.requestParameters.put("claims", Collections.singletonList(mergedClaimsCapabilities));
143+
parameters.requestParameters.put("claims", mergedClaimsCapabilities);
145144
} else {
146-
parameters.requestParameters.put("claims", Collections.singletonList(this.clientCapabilities));
145+
parameters.requestParameters.put("claims", this.clientCapabilities);
147146
}
148147
}
149148

150149
return parameters.createAuthorizationURL(
151150
this.authenticationAuthority,
152-
parameters.requestParameters());
151+
parameters.requestParameters);
153152
}
154153

155154
@Override

msal4j-sdk/src/main/java/com/microsoft/aad/msal4j/AbstractMsalAuthorizationGrant.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ abstract class AbstractMsalAuthorizationGrant {
2020
*
2121
* @return A map contains the HTTP parameters
2222
*/
23-
abstract Map<String, List<String>> toParameters();
23+
abstract Map<String, String> toParameters();
2424

2525
static final String SCOPE_PARAM_NAME = "scope";
2626
static final String SCOPES_DELIMITER = " ";

msal4j-sdk/src/main/java/com/microsoft/aad/msal4j/AcquireTokenByAuthorizationGrantSupplier.java

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33

44
package com.microsoft.aad.msal4j;
55

6-
import com.nimbusds.jose.util.Base64URL;
7-
86
import java.net.URLEncoder;
97
import java.nio.charset.StandardCharsets;
108
import java.util.Base64;
@@ -75,7 +73,7 @@ private boolean IsUiRequiredCacheSupported() {
7573

7674
private void processPasswordGrant(OAuthAuthorizationGrant authGrant) throws Exception {
7775

78-
//Additional processing is only needed if it's a password grant with a non-AAD authority
76+
//Additional processing is only needed if it's a password grant with an AAD authority
7977
if (!(authGrant.getParamValue(GrantConstants.GRANT_TYPE_PARAMETER).equals(GrantConstants.PASSWORD))
8078
|| msalRequest.application().authenticationAuthority.authorityType != AuthorityType.AAD) {
8179
return;
@@ -101,24 +99,22 @@ private void processPasswordGrant(OAuthAuthorizationGrant authGrant) throws Exce
10199
}
102100
}
103101

104-
private Map<String, List<String>> getSAMLAuthGrantParameters(WSTrustResponse response) {
105-
Map<String, List<String>> params = new LinkedHashMap<>();
102+
private Map<String, String> getSAMLAuthGrantParameters(WSTrustResponse response) {
103+
Map<String, String> params = new LinkedHashMap<>();
106104

107105
if (response.isTokenSaml2()) {
108-
params.put(GrantConstants.GRANT_TYPE_PARAMETER, Collections.singletonList(GrantConstants.SAML_2_BEARER));
106+
params.put(GrantConstants.GRANT_TYPE_PARAMETER, GrantConstants.SAML_2_BEARER);
109107
} else {
110-
params.put(GrantConstants.GRANT_TYPE_PARAMETER, Collections.singletonList(GrantConstants.SAML_1_1_BEARER));
108+
params.put(GrantConstants.GRANT_TYPE_PARAMETER, GrantConstants.SAML_1_1_BEARER);
111109
}
112110

113-
params.put(GrantConstants.ASSERTION_PARAMETER, Collections.singletonList(new Base64URL(
114-
Base64.getEncoder().encodeToString(response.getToken()
115-
.getBytes(StandardCharsets.UTF_8))).toString()));
111+
params.put(GrantConstants.ASSERTION_PARAMETER, Base64.getUrlEncoder().encodeToString(response.getToken().getBytes(StandardCharsets.UTF_8)));
116112

117113
return params;
118114
}
119115

120-
private Map<String, List<String>> getAuthorizationGrantIntegrated(String userName) throws Exception {
121-
Map<String, List<String>> params;
116+
private Map<String, String> getAuthorizationGrantIntegrated(String userName) throws Exception {
117+
Map<String, String> params;
122118

123119
String userRealmEndpoint = this.clientApplication.authenticationAuthority.
124120
getUserRealmEndpoint(URLEncoder.encode(userName, StandardCharsets.UTF_8.name()));

msal4j-sdk/src/main/java/com/microsoft/aad/msal4j/AppServiceManagedIdentitySource.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@ public void createManagedIdentityRequest(String resource) {
3131
managedIdentityRequest.headers.put(SECRET_HEADER_NAME, identityHeader);
3232

3333
managedIdentityRequest.queryParameters = new HashMap<>();
34-
managedIdentityRequest.queryParameters.put("api-version", Collections.singletonList(APP_SERVICE_MSI_API_VERSION));
35-
managedIdentityRequest.queryParameters.put("resource", Collections.singletonList(resource));
34+
managedIdentityRequest.queryParameters.put("api-version", APP_SERVICE_MSI_API_VERSION);
35+
managedIdentityRequest.queryParameters.put("resource", resource);
3636

3737
if (this.idType != null && !StringHelper.isNullOrBlank(this.userAssignedId)) {
3838
LOG.info("[Managed Identity] Adding user assigned ID to the request for App Service Managed Identity.");

msal4j-sdk/src/main/java/com/microsoft/aad/msal4j/AuthorizationCodeRequest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,17 @@ class AuthorizationCodeRequest extends MsalRequest {
1717
}
1818

1919
private static AbstractMsalAuthorizationGrant createMsalGrant(AuthorizationCodeParameters parameters) {
20-
Map<String, List<String>> params = new LinkedHashMap<>();
20+
Map<String, String> params = new LinkedHashMap<>();
2121

22-
params.put(GrantConstants.GRANT_TYPE_PARAMETER, Collections.singletonList(GrantConstants.AUTHORIZATION_CODE));
23-
params.put("code", Collections.singletonList(parameters.authorizationCode()));
22+
params.put(GrantConstants.GRANT_TYPE_PARAMETER, GrantConstants.AUTHORIZATION_CODE);
23+
params.put("code", parameters.authorizationCode());
2424

2525
if (parameters.redirectUri() != null) {
26-
params.put("redirect_uri", Collections.singletonList(parameters.redirectUri().toString()));
26+
params.put("redirect_uri", parameters.redirectUri().toString());
2727
}
2828

2929
if (parameters.codeVerifier() != null) {
30-
params.put("code_verifier", Collections.singletonList(parameters.codeVerifier()));
30+
params.put("code_verifier", parameters.codeVerifier());
3131
}
3232

3333
return new OAuthAuthorizationGrant(params, parameters.scopes(), parameters.claims());

0 commit comments

Comments
 (0)