return credentials; return new CertificateCredentialsImpl(credentials.getScope(), credentials.getId(), credentials.getDescription(), credentials.getPassword().getEncryptedValue(), new UploadedKeyStoreSource(SecretBytes.fromBytes(keyStoreSource.getKeyStoreBytes()))); final char[] password = credentials.getPassword().getPlainText().toCharArray(); try { credentials.getKeyStore().store(bos, password); bos.close(); } catch (KeyStoreException e) { Arrays.fill(password, (char) 0); return new CertificateCredentialsImpl(credentials.getScope(), credentials.getId(), credentials.getDescription(), credentials.getPassword().getEncryptedValue(), new UploadedKeyStoreSource(SecretBytes.fromBytes(bos.toByteArray())));
/** * {@inheritDoc} */ @NonNull @Override public String getName(@NonNull StandardCertificateCredentials c) { String description = Util.fixEmptyAndTrim(c.getDescription()); String subjectDN = getSubjectDN(c.getKeyStore()); return (subjectDN == null ? c.getDescriptor().getDisplayName() : subjectDN) + (description != null ? " (" + description + ")" : ""); } }
ACL.SYSTEM, Collections.<DomainRequirement>emptyList())) { if (c.getPassword().equals(result.getPassword())) { KeyStore s1 = c.getKeyStore(); KeyStore s2 = result.getKeyStore(); try { s1.store(bos1, c.getPassword().getPlainText().toCharArray()); s2.store(bos2, c.getPassword().getPlainText().toCharArray()); if (Arrays.equals(bos1.toByteArray(), bos2.toByteArray())) { return c;
} else if (credentials instanceof StandardCertificateCredentials) { StandardCertificateCredentials certificateCredentials = (StandardCertificateCredentials) credentials; KeyStore keyStore = certificateCredentials.getKeyStore(); String alias = keyStore.aliases().nextElement(); X509Certificate certificate = (X509Certificate) keyStore.getCertificate(alias); Key key = keyStore.getKey(alias, Secret.toString(certificateCredentials.getPassword()).toCharArray()); builder.withClientCertData(Base64.encodeBase64String(certificate.getEncoded())) .withClientKeyData(pemEncodeKey(key)) .withClientKeyPassphrase(Secret.toString(certificateCredentials.getPassword()));
return credentials; return new CertificateCredentialsImpl(credentials.getScope(), credentials.getId(), credentials.getDescription(), credentials.getPassword().getEncryptedValue(), new UploadedKeyStoreSource(SecretBytes.fromBytes(keyStoreSource.getKeyStoreBytes()))); final char[] password = credentials.getPassword().getPlainText().toCharArray(); try { credentials.getKeyStore().store(bos, password); bos.close(); } catch (KeyStoreException e) { Arrays.fill(password, (char) 0); return new CertificateCredentialsImpl(credentials.getScope(), credentials.getId(), credentials.getDescription(), credentials.getPassword().getEncryptedValue(), new UploadedKeyStoreSource(SecretBytes.fromBytes(bos.toByteArray())));
} else if (c instanceof StandardCertificateCredentials) { StandardCertificateCredentials scc = (StandardCertificateCredentials) c; KeyStore keyStore = scc.getKeyStore(); String alias; try { alias = keyStore.aliases().nextElement(); X509Certificate certificate = (X509Certificate) keyStore.getCertificate(alias); Key key = keyStore.getKey(alias, Secret.toString(scc.getPassword()).toCharArray()); FilePath clientCrtFile = workspace.createTempFile("client", "crt"); FilePath clientKeyFile = workspace.createTempFile("client", "key");
/** * {@inheritDoc} */ @NonNull @Override public String getName(@NonNull StandardCertificateCredentials c) { String description = Util.fixEmptyAndTrim(c.getDescription()); String subjectDN = getSubjectDN(c.getKeyStore()); return (subjectDN == null ? c.getDescriptor().getDisplayName() : subjectDN) + (description != null ? " (" + description + ")" : ""); } }