diff --git a/smp-angular/src/app/domain/domain.component.ts b/smp-angular/src/app/domain/domain.component.ts index daf91a5f01aa2f984bc1f5fb7246aebd5b83fe9b..6c0289a4a45d224b55be792b0bf77dadc6766633 100644 --- a/smp-angular/src/app/domain/domain.component.ts +++ b/smp-angular/src/app/domain/domain.component.ts @@ -143,8 +143,8 @@ export class DomainComponent implements OnInit { this.dialog.open(ConfirmationDialogComponent, { data: { - title: "Unregister domain from SML!", - description: "Action will register domain: "+domainRo.domainCode +" and all its service groups from SML. Do you wish to continue?" + title: "Register domain to SML!", + description: "Action will register domain: "+domainRo.domainCode +" and all its service groups to SML. Do you wish to continue?" } }).afterClosed().subscribe(result => { if (result) { diff --git a/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/conversion/X509CertificateToCertificateROConverter.java b/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/conversion/X509CertificateToCertificateROConverter.java index b5da6e11fcbee7765fa6558888c56a16c2f9ae11..41e85169daaabc2ea9145aed39a2774ff2fb3710 100644 --- a/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/conversion/X509CertificateToCertificateROConverter.java +++ b/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/conversion/X509CertificateToCertificateROConverter.java @@ -1,7 +1,6 @@ package eu.europa.ec.edelivery.smp.conversion; import eu.europa.ec.edelivery.security.PreAuthenticatedCertificatePrincipal; -import eu.europa.ec.edelivery.smp.data.model.DBCertificate; import eu.europa.ec.edelivery.smp.data.ui.CertificateRO; import eu.europa.ec.edelivery.smp.exceptions.ErrorCode; import eu.europa.ec.edelivery.smp.exceptions.SMPRuntimeException; @@ -18,8 +17,6 @@ import java.net.URLEncoder; import java.security.cert.CertificateEncodingException; import java.security.cert.X509Certificate; import java.text.SimpleDateFormat; -import java.time.LocalDateTime; -import java.time.ZoneId; import java.util.Base64; /** @@ -28,65 +25,65 @@ import java.util.Base64; @Component public class X509CertificateToCertificateROConverter implements Converter<X509Certificate, CertificateRO> { - private static final SMPLogger LOG = SMPLoggerFactory.getLogger(CertificateROToDBCertificateConverter.class); + private static final SMPLogger LOG = SMPLoggerFactory.getLogger(CertificateROToDBCertificateConverter.class); - private static final String S_BLUECOAT_DATEFORMAT ="MMM dd HH:mm:ss yyyy"; + private static final String S_BLUECOAT_DATEFORMAT = "MMM dd HH:mm:ss yyyy"; - @Override - public CertificateRO convert(X509Certificate cert) { + @Override + public CertificateRO convert(X509Certificate cert) { - String subject = cert.getSubjectDN().getName(); - String issuer = cert.getIssuerDN().getName(); - String hash = cert.getIssuerDN().getName(); - BigInteger serial = cert.getSerialNumber(); - String certId = getCertificateIdFromCertificate(subject, issuer, serial); - CertificateRO cro = new CertificateRO(); - cro.setCertificateId(certId); - cro.setSubject(subject); - cro.setIssuer(issuer); - // set serial as HEX - cro.setSerialNumber(serial.toString(16)); - cro.setValidFrom(cert.getNotBefore()); - cro.setValidTo(cert.getNotAfter()); - try { - cro.setEncodedValue(Base64.getMimeEncoder().encodeToString(cert.getEncoded())); - } catch (CertificateEncodingException cex) { - throw new SMPRuntimeException(ErrorCode.CERTIFICATE_ERROR, cex, - "Error occured while decoding certificate " +subject, cex.getMessage(), cex ); + String subject = cert.getSubjectDN().getName(); + String issuer = cert.getIssuerDN().getName(); + String hash = cert.getIssuerDN().getName(); + BigInteger serial = cert.getSerialNumber(); + String certId = getCertificateIdFromCertificate(subject, issuer, serial); + CertificateRO cro = new CertificateRO(); + cro.setCertificateId(certId); + cro.setSubject(subject); + cro.setIssuer(issuer); + // set serial as HEX + cro.setSerialNumber(serial.toString(16)); + cro.setValidFrom(cert.getNotBefore()); + cro.setValidTo(cert.getNotAfter()); + try { + cro.setEncodedValue(Base64.getMimeEncoder().encodeToString(cert.getEncoded())); + } catch (CertificateEncodingException cex) { + throw new SMPRuntimeException(ErrorCode.CERTIFICATE_ERROR, cex, + "Error occured while decoding certificate " + subject, cex.getMessage(), cex); - } - // generate bluecoat header - SimpleDateFormat sdf = new SimpleDateFormat(S_BLUECOAT_DATEFORMAT); - StringWriter sw = new StringWriter(); - sw.write("sno="); - sw.write(serial.toString(16)); - sw.write("&subject="); - sw.write(urlEnodeString(subject)); - sw.write("&validfrom="); - sw.write(urlEnodeString(sdf.format(cert.getNotBefore())+" GTM")); - sw.write("&validto="); - sw.write(urlEnodeString(sdf.format(cert.getNotAfter())+" GTM")); - sw.write("&issuer="); - sw.write(urlEnodeString(issuer)); - cro.setBlueCoatHeader(sw.toString()); - return cro; } + // generate bluecoat header + SimpleDateFormat sdf = new SimpleDateFormat(S_BLUECOAT_DATEFORMAT); + StringWriter sw = new StringWriter(); + sw.write("sno="); + sw.write(serial.toString(16)); + sw.write("&subject="); + sw.write(urlEncodeString(subject)); + sw.write("&validfrom="); + sw.write(urlEncodeString(sdf.format(cert.getNotBefore()) + " GTM")); + sw.write("&validto="); + sw.write(urlEncodeString(sdf.format(cert.getNotAfter()) + " GTM")); + sw.write("&issuer="); + sw.write(urlEncodeString(issuer)); + cro.setBlueCoatHeader(sw.toString()); + return cro; + } - public String getCertificateIdFromCertificate(String subject, String issuer, BigInteger serial) { - return new PreAuthenticatedCertificatePrincipal(subject, issuer, serial).getName(); - } + public String getCertificateIdFromCertificate(String subject, String issuer, BigInteger serial) { + return new PreAuthenticatedCertificatePrincipal(subject, issuer, serial).getName(); + } - private String urlEnodeString(String val){ - if (StringUtils.isBlank(val)){ - return ""; - } else { - try { - return URLEncoder.encode(val, "UTF-8"); - } catch (UnsupportedEncodingException e) { - LOG.error("Error occurred while url encoding the certificate string:" + val, e ); - } - } + private String urlEncodeString(String val) { + if (StringUtils.isBlank(val)) { return ""; + } else { + try { + return URLEncoder.encode(val, "UTF-8"); + } catch (UnsupportedEncodingException e) { + LOG.error("Error occurred while url encoding the certificate string:" + val, e); + } } - + return ""; } + +} diff --git a/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/services/ServiceMetadataSigner.java b/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/services/ServiceMetadataSigner.java index 45a2ebb40296362679f2fc14c33cd18373b8dcfd..73fdc5a50cf7dc9a8c1fccc392ef8713434278dd 100644 --- a/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/services/ServiceMetadataSigner.java +++ b/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/services/ServiceMetadataSigner.java @@ -18,11 +18,9 @@ import eu.europa.ec.edelivery.smp.services.ui.UIKeystoreService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import org.w3c.dom.Document; -import javax.annotation.PostConstruct; import javax.xml.crypto.dsig.Reference; import javax.xml.crypto.dsig.SignedInfo; import javax.xml.crypto.dsig.XMLSignature; @@ -33,22 +31,14 @@ import javax.xml.crypto.dsig.keyinfo.KeyInfoFactory; import javax.xml.crypto.dsig.keyinfo.X509Data; import javax.xml.crypto.dsig.spec.C14NMethodParameterSpec; import javax.xml.crypto.dsig.spec.TransformParameterSpec; -import java.io.FileInputStream; -import java.io.InputStream; -import java.security.*; -import java.security.cert.Certificate; import java.security.cert.X509Certificate; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; -import static java.util.Collections.list; import static java.util.Collections.singletonList; import static javax.xml.crypto.dsig.CanonicalizationMethod.INCLUSIVE; import static javax.xml.crypto.dsig.DigestMethod.SHA256; import static javax.xml.crypto.dsig.Transform.ENVELOPED; -import static org.apache.commons.lang3.StringUtils.isBlank; @Component public final class ServiceMetadataSigner { @@ -69,7 +59,7 @@ public final class ServiceMetadataSigner { public void sign(Document serviceMetadataDoc, String keyAlias) { - LOG.info("Sing document with alias" + keyAlias); + LOG.info("Sing document with alias {}", keyAlias); try { XMLSignatureFactory domSigFactory = getDomSigFactory();