HADOOP-14799. Update nimbus-jose-jwt to 4.41.1. (rchiang)
(cherry picked from commit 556812c179
)
This commit is contained in:
parent
f7e5e45b72
commit
eeb731307f
|
@ -28,6 +28,7 @@ import java.text.ParseException;
|
|||
|
||||
import java.security.interfaces.RSAPublicKey;
|
||||
|
||||
import com.google.common.annotations.VisibleForTesting;
|
||||
import org.apache.hadoop.security.authentication.client.AuthenticationException;
|
||||
import org.apache.hadoop.security.authentication.util.CertificateUtil;
|
||||
import org.slf4j.Logger;
|
||||
|
@ -216,7 +217,8 @@ public class JWTRedirectAuthenticationHandler extends
|
|||
* @param request for getting the original request URL
|
||||
* @return url to use as login url for redirect
|
||||
*/
|
||||
protected String constructLoginURL(HttpServletRequest request) {
|
||||
@VisibleForTesting
|
||||
String constructLoginURL(HttpServletRequest request) {
|
||||
String delimiter = "?";
|
||||
if (authenticationProviderUrl.contains("?")) {
|
||||
delimiter = "&";
|
||||
|
|
|
@ -47,7 +47,7 @@ import com.nimbusds.jwt.JWTClaimsSet;
|
|||
import com.nimbusds.jwt.SignedJWT;
|
||||
import com.nimbusds.jose.crypto.RSASSASigner;
|
||||
|
||||
public class TestJWTRedirectAuthentictionHandler extends
|
||||
public class TestJWTRedirectAuthenticationHandler extends
|
||||
KerberosSecurityTestcase {
|
||||
private static final String SERVICE_URL = "https://localhost:8888/resource";
|
||||
private static final String REDIRECT_LOCATION =
|
||||
|
@ -392,7 +392,7 @@ public class TestJWTRedirectAuthentictionHandler extends
|
|||
new StringBuffer(SERVICE_URL));
|
||||
Mockito.when(request.getQueryString()).thenReturn("name=value");
|
||||
|
||||
String loginURL = ((TestJWTRedirectAuthenticationHandler)handler).testConstructLoginURL(request);
|
||||
String loginURL = handler.constructLoginURL(request);
|
||||
Assert.assertNotNull("loginURL should not be null.", loginURL);
|
||||
Assert.assertEquals("https://localhost:8443/authserver?originalUrl=" + SERVICE_URL + "?name=value", loginURL);
|
||||
}
|
||||
|
@ -409,7 +409,7 @@ public class TestJWTRedirectAuthentictionHandler extends
|
|||
new StringBuffer(SERVICE_URL));
|
||||
Mockito.when(request.getQueryString()).thenReturn(null);
|
||||
|
||||
String loginURL = ((TestJWTRedirectAuthenticationHandler)handler).testConstructLoginURL(request);
|
||||
String loginURL = handler.constructLoginURL(request);
|
||||
Assert.assertNotNull("LoginURL should not be null.", loginURL);
|
||||
Assert.assertEquals("https://localhost:8443/authserver?originalUrl=" + SERVICE_URL, loginURL);
|
||||
}
|
||||
|
@ -425,7 +425,7 @@ public class TestJWTRedirectAuthentictionHandler extends
|
|||
publicKey = (RSAPublicKey) kp.getPublic();
|
||||
privateKey = (RSAPrivateKey) kp.getPrivate();
|
||||
|
||||
handler = new TestJWTRedirectAuthenticationHandler();
|
||||
handler = new JWTRedirectAuthenticationHandler();
|
||||
}
|
||||
|
||||
protected void setupKerberosRequirements() throws Exception {
|
||||
|
@ -453,15 +453,16 @@ public class TestJWTRedirectAuthentictionHandler extends
|
|||
|
||||
protected SignedJWT getJWT(String sub, Date expires, RSAPrivateKey privateKey)
|
||||
throws Exception {
|
||||
JWTClaimsSet claimsSet = new JWTClaimsSet();
|
||||
claimsSet.setSubject(sub);
|
||||
claimsSet.setIssueTime(new Date(new Date().getTime()));
|
||||
claimsSet.setIssuer("https://c2id.com");
|
||||
claimsSet.setCustomClaim("scope", "openid");
|
||||
claimsSet.setExpirationTime(expires);
|
||||
JWTClaimsSet claimsSet = new JWTClaimsSet.Builder()
|
||||
.subject(sub)
|
||||
.issueTime(new Date(new Date().getTime()))
|
||||
.issuer("https://c2id.com")
|
||||
.claim("scope", "openid")
|
||||
.audience("bar")
|
||||
.expirationTime(expires)
|
||||
.build();
|
||||
List<String> aud = new ArrayList<String>();
|
||||
aud.add("bar");
|
||||
claimsSet.setAudience("bar");
|
||||
|
||||
JWSHeader header = new JWSHeader.Builder(JWSAlgorithm.RS256).build();
|
||||
|
||||
|
@ -472,10 +473,4 @@ public class TestJWTRedirectAuthentictionHandler extends
|
|||
|
||||
return signedJWT;
|
||||
}
|
||||
|
||||
class TestJWTRedirectAuthenticationHandler extends JWTRedirectAuthenticationHandler {
|
||||
public String testConstructLoginURL(HttpServletRequest req) {
|
||||
return constructLoginURL(req);
|
||||
}
|
||||
};
|
||||
}
|
|
@ -25,9 +25,7 @@ import java.net.HttpURLConnection;
|
|||
import org.apache.hadoop.fs.ChecksumException;
|
||||
import org.apache.hadoop.fs.FileSystem;
|
||||
import org.apache.hadoop.fs.Path;
|
||||
import org.apache.hadoop.mapred.MapOutputFile;
|
||||
import org.apache.hadoop.mapreduce.MRJobConfig;
|
||||
import org.apache.hadoop.mapreduce.TaskID;
|
||||
import org.junit.After;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Before;
|
||||
|
@ -66,8 +64,6 @@ import org.junit.Test;
|
|||
import org.mockito.invocation.InvocationOnMock;
|
||||
import org.mockito.stubbing.Answer;
|
||||
|
||||
import com.nimbusds.jose.util.StringUtils;
|
||||
|
||||
/**
|
||||
* Test that the Fetcher does what we expect it to.
|
||||
*/
|
||||
|
|
|
@ -1151,7 +1151,7 @@
|
|||
<dependency>
|
||||
<groupId>com.nimbusds</groupId>
|
||||
<artifactId>nimbus-jose-jwt</artifactId>
|
||||
<version>3.9</version>
|
||||
<version>4.41.1</version>
|
||||
<scope>compile</scope>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
|
|
Loading…
Reference in New Issue