diff options
Diffstat (limited to 'pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets')
-rw-r--r-- | pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ExternSignServlet.java | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ExternSignServlet.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ExternSignServlet.java index 0982c98c..120b9811 100644 --- a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ExternSignServlet.java +++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ExternSignServlet.java @@ -308,8 +308,23 @@ public class ExternSignServlet extends HttpServlet { // start synchronous siganture creation if(connector.equals("jks")) { - if(!WebConfiguration.getKeystoreEnabled()) { - throw new PdfAsWebException("Invalid connector jks is not supported"); + + String keyIdentifier = PdfAsParameterExtractor.getKeyIdentifier(request); + + boolean ksEnabled = false; + + if (keyIdentifier != null) { + ksEnabled = WebConfiguration.getKeystoreEnabled(keyIdentifier); + } else { + ksEnabled = WebConfiguration.getKeystoreDefaultEnabled(); + } + + if (!ksEnabled) { + if(keyIdentifier != null) { + throw new PdfAsWebException("JKS connector [" + keyIdentifier + "] disabled or not existing."); + } else { + throw new PdfAsWebException("DEFAULT JKS connector disabled."); + } } } |