Remove getSubjectDN(), which is deprecated in Java 17

This commit is contained in:
Eric Anderson 2022-01-13 15:27:38 -08:00
parent 0987dc401c
commit c6d448e43f
5 changed files with 14 additions and 11 deletions

View File

@ -2208,7 +2208,7 @@ public abstract class AbstractInteropTest {
X509Certificate x509cert = (X509Certificate) certificates.get(0);
assertEquals(1, certificates.size());
assertEquals(tlsInfo, x509cert.getSubjectDN().toString());
assertEquals(tlsInfo, x509cert.getSubjectX500Principal().toString());
}
protected int operationTimeoutMillis() {

View File

@ -198,7 +198,7 @@ public class AdvancedTlsTest {
throw new CertificateException("peerCertChain is empty");
}
X509Certificate leafCert = peerCertChain[0];
if (!leafCert.getSubjectDN().getName().contains("testclient")) {
if (!leafCert.getSubjectX500Principal().getName().contains("testclient")) {
throw new CertificateException("SslSocketAndEnginePeerVerifier failed");
}
}
@ -210,7 +210,7 @@ public class AdvancedTlsTest {
throw new CertificateException("peerCertChain is empty");
}
X509Certificate leafCert = peerCertChain[0];
if (!leafCert.getSubjectDN().getName().contains("testclient")) {
if (!leafCert.getSubjectX500Principal().getName().contains("testclient")) {
throw new CertificateException("SslSocketAndEnginePeerVerifier failed");
}
}
@ -237,7 +237,8 @@ public class AdvancedTlsTest {
throw new CertificateException("peerCertChain is empty");
}
X509Certificate leafCert = peerCertChain[0];
if (!leafCert.getSubjectDN().getName().contains("*.test.google.com.au")) {
if (!leafCert.getSubjectX500Principal().getName()
.contains("*.test.google.com.au")) {
throw new CertificateException("SslSocketAndEnginePeerVerifier failed");
}
}
@ -249,7 +250,8 @@ public class AdvancedTlsTest {
throw new CertificateException("peerCertChain is empty");
}
X509Certificate leafCert = peerCertChain[0];
if (!leafCert.getSubjectDN().getName().contains("*.test.google.com.au")) {
if (!leafCert.getSubjectX500Principal().getName()
.contains("*.test.google.com.au")) {
throw new CertificateException("SslSocketAndEnginePeerVerifier failed");
}
}

View File

@ -53,7 +53,7 @@ public class CertificateUtilsTest {
// Checks some information on the test certificate.
assertThat(cert[0].getSerialNumber()).isEqualTo(new BigInteger(
"6c97d344427a93affea089d6855d4ed63dd94f38", 16));
assertThat(cert[0].getSubjectDN().getName()).isEqualTo(
assertThat(cert[0].getSubjectX500Principal().toString()).isEqualTo(
"CN=*.test.google.com.au, O=Internet Widgits Pty Ltd, ST=Some-State, C=AU");
}
@ -74,7 +74,7 @@ public class CertificateUtilsTest {
// Checks some information on the test certificate.
assertThat(cert[0].getSerialNumber()).isEqualTo(new BigInteger(
"5ab3f456f1dccbe2cfe94b9836d88bf600610f9a", 16));
assertThat(cert[0].getSubjectDN().getName()).isEqualTo(
assertThat(cert[0].getSubjectX500Principal().toString()).isEqualTo(
"CN=testca, O=Internet Widgits Pty Ltd, ST=Some-State, C=AU");
}

View File

@ -334,10 +334,11 @@ public final class GrpcAuthorizationEngine {
return Collections.unmodifiableCollection(principalNames);
}
}
if (cert.getSubjectDN() == null || cert.getSubjectDN().getName() == null) {
if (cert.getSubjectX500Principal() == null
|| cert.getSubjectX500Principal().getName() == null) {
return Collections.singleton("");
}
return Collections.singleton(cert.getSubjectDN().getName());
return Collections.singleton(cert.getSubjectX500Principal().getName());
} catch (SSLPeerUnverifiedException | CertificateParsingException ex) {
log.log(Level.FINE, "Unexpected getPrincipalNames error.", ex);
return Collections.singleton("");

View File

@ -51,13 +51,13 @@ import io.grpc.xds.internal.rbac.engine.GrpcAuthorizationEngine.PolicyMatcher;
import io.grpc.xds.internal.rbac.engine.GrpcAuthorizationEngine.SourceIpMatcher;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.security.Principal;
import java.security.cert.X509Certificate;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import javax.net.ssl.SSLPeerUnverifiedException;
import javax.net.ssl.SSLSession;
import javax.security.auth.x500.X500Principal;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@ -279,7 +279,7 @@ public class GrpcAuthorizationEngineTest {
X509Certificate mockCert = mock(X509Certificate.class);
when(sslSession.getPeerCertificates()).thenReturn(new X509Certificate[]{mockCert});
assertThat(engine.evaluate(HEADER, serverCall).decision()).isEqualTo(Action.DENY);
when(mockCert.getSubjectDN()).thenReturn(mock(Principal.class));
when(mockCert.getSubjectX500Principal()).thenReturn(new X500Principal(""));
assertThat(engine.evaluate(HEADER, serverCall).decision()).isEqualTo(Action.DENY);
when(mockCert.getSubjectAlternativeNames()).thenReturn(Arrays.<List<?>>asList(
Arrays.asList(2, "*.test.google.fr")));