summaryrefslogtreecommitdiffstats
path: root/security-utils
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@yahooinc.com>2022-07-20 13:02:21 +0200
committerBjørn Christian Seime <bjorncs@yahooinc.com>2022-07-20 13:56:33 +0200
commitead5f9f883bce032c13f4615ad98a25ac91fae7d (patch)
tree56c7af3a53d353e9fb0c337d981e8355f7de243e /security-utils
parent6276364ef4e626d8eb65ddb0d9e39c7bb114cc0c (diff)
Add 'X509CertificateUtils.getSubjectCommonName()'
Diffstat (limited to 'security-utils')
-rw-r--r--security-utils/src/main/java/com/yahoo/security/X509CertificateUtils.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/security-utils/src/main/java/com/yahoo/security/X509CertificateUtils.java b/security-utils/src/main/java/com/yahoo/security/X509CertificateUtils.java
index f9f23ee1eb2..feb3b4df3e0 100644
--- a/security-utils/src/main/java/com/yahoo/security/X509CertificateUtils.java
+++ b/security-utils/src/main/java/com/yahoo/security/X509CertificateUtils.java
@@ -32,10 +32,10 @@ import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import java.time.Duration;
import java.time.Instant;
-import java.time.temporal.ChronoUnit;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import java.util.Optional;
import java.util.Random;
import static com.yahoo.security.Extension.SUBJECT_ALTERNATIVE_NAMES;
@@ -115,6 +115,12 @@ public class X509CertificateUtils {
return getCommonNames(certificate.getSubjectX500Principal());
}
+ public static Optional<String> getSubjectCommonName(X509Certificate c) {
+ List<String> names = getSubjectCommonNames(c);
+ if (names.isEmpty()) return Optional.empty();
+ return Optional.of(names.get(names.size() - 1));
+ }
+
public static List<String> getIssuerCommonNames(X509Certificate certificate) {
return getCommonNames(certificate.getIssuerX500Principal());
}