Per http://pki.fedoraproject.org/wiki/CA_REST_API
receive error when revoking a cert.
Operation: POST /ca/rest/agent/certs/{id}/revoke Query Parameters: id: dec/hex serial number Server Log: SSLAuthenticatorWithFallback: Authenticate with client certificate authentication ERROR: RESTEASY002005: Failed executing POST /agent/certs/07/revoke org.jboss.resteasy.spi.ReaderException: java.io.EOFException: No content to map to Object due to end of input at org.jboss.resteasy.core.MessageBodyParameterInjector.inject(MessageBodyParameterInjector.java:184) at org.jboss.resteasy.core.MethodInjectorImpl.injectArguments(MethodInjectorImpl.java:91) at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:114) at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:295) at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:249) at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:236) at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:402) at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:209) at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:221) at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56) at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:277) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:748) Caused by: java.io.EOFException: No content to map to Object due to end of input at org.codehaus.jackson.map.ObjectMapper._initForReading(ObjectMapper.java:2766) at org.codehaus.jackson.map.ObjectMapper._readValue(ObjectMapper.java:2682) at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1308) at org.codehaus.jackson.jaxrs.JacksonJsonProvider.readFrom(JacksonJsonProvider.java:419) at org.jboss.resteasy.core.interception.AbstractReaderInterceptorContext.readFrom(AbstractReaderInterceptorContext.java:61) at org.jboss.resteasy.core.interception.ServerReaderInterceptorContext.readFrom(ServerReaderInterceptorContext.java:60) at org.jboss.resteasy.core.interception.AbstractReaderInterceptorContext.proceed(AbstractReaderInterceptorContext.java:53) at org.jboss.resteasy.plugins.interceptors.encoding.GZIPDecodingInterceptor.aroundReadFrom(GZIPDecodingInterceptor.java:59) at org.jboss.resteasy.core.interception.AbstractReaderInterceptorContext.proceed(AbstractReaderInterceptorContext.java:55) at org.jboss.resteasy.core.MessageBodyParameterInjector.inject(MessageBodyParameterInjector.java:151)
Client POST: curl -k -v -X POST -H "Content-Type: application/json" --cert ca_admin.cert.pem --key ca_admin.key.pem https://192.168.55.10:8443/ca/rest/agent/certs/07/revoke * Trying 192.168.55.10... * Connected to 192.168.55.10 (192.168.55.10) port 8443 (#0) * Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH * successfully set certificate verify locations: * CAfile: /opt/chefdk/embedded/ssl/certs/cacert.pem CApath: none * TLSv1.2 (OUT), TLS handshake, Client hello (1): * TLSv1.2 (IN), TLS handshake, Server hello (2): * TLSv1.2 (IN), TLS handshake, Certificate (11): * TLSv1.2 (IN), TLS handshake, Request CERT (13): * TLSv1.2 (IN), TLS handshake, Server finished (14): * TLSv1.2 (OUT), TLS handshake, Certificate (11): * TLSv1.2 (OUT), TLS handshake, Client key exchange (16): * TLSv1.2 (OUT), TLS handshake, CERT verify (15): * TLSv1.2 (OUT), TLS change cipher, Client hello (1): * TLSv1.2 (OUT), TLS handshake, Finished (20): * TLSv1.2 (IN), TLS change cipher, Client hello (1): * TLSv1.2 (IN), TLS handshake, Finished (20): * SSL connection using TLSv1.2 / AES128-SHA * Server certificate: * subject: O=vagrantup.com Security Domain; OU=pki-tomcat; CN=run-dogtag-ubuntu-1604.vagrantup.com * start date: Oct 11 16:19:52 2017 GMT * expire date: Oct 1 16:19:52 2019 GMT * issuer: O=vagrantup.com Security Domain; OU=pki-tomcat; CN=CA Signing Certificate * SSL certificate verify result: self signed certificate in certificate chain (19), continuing anyway.
POST /ca/rest/agent/certs/07/revoke HTTP/1.1 Host: 192.168.55.10:8443 User-Agent: curl/7.47.1 Accept: / Content-Type: application/json < HTTP/1.1 400 Bad Request < Server: Apache-Coyote/1.1 < Set-Cookie: JSESSIONID=3329FC46402A9AD179164CD71C4F0EDF; Path=/ca/; Secure; HttpOnly < Content-Type: text/html < Content-Length: 69 < Date: Thu, 12 Oct 2017 19:14:31 GMT < Connection: close < * Closing connection 0 * TLSv1.2 (OUT), TLS alert, Client hello (1):
POST /ca/rest/agent/certs/07/revoke HTTP/1.1 Host: 192.168.55.10:8443 User-Agent: curl/7.47.1 Accept: / Content-Type: application/json
< HTTP/1.1 400 Bad Request < Server: Apache-Coyote/1.1 < Set-Cookie: JSESSIONID=3329FC46402A9AD179164CD71C4F0EDF; Path=/ca/; Secure; HttpOnly < Content-Type: text/html < Content-Length: 69 < Date: Thu, 12 Oct 2017 19:14:31 GMT < Connection: close < * Closing connection 0 * TLSv1.2 (OUT), TLS alert, Client hello (1):
Sorry. running version : on Ubuntu 16.04
dogtag-pki 10.3.5+12-4ubuntu1 all Dogtag Public Key Infrastructure (PKI) Suite
But we where able to reproduce on Fedora build.
Metadata Update from @mharmsen: - Custom field component adjusted to None - Custom field feature adjusted to None - Custom field origin adjusted to None - Custom field proposedmilestone adjusted to None - Custom field proposedpriority adjusted to None - Custom field reviewer adjusted to None - Custom field type adjusted to None - Custom field version adjusted to None - Issue set to the milestone: 0.0 NEEDS_TRIAGE
[20171025] - edewata - REST service issue
Metadata Update from @mharmsen: - Issue assigned to vakwetu
edewata: seems to affect custom client (i.e. curl)
Per Meeting of 20171113 - 10.6 major
Metadata Update from @mharmsen: - Issue priority set to: major - Issue set to the milestone: 10.6 (was: 0.0 NEEDS_TRIAGE)
Dogtag PKI is moving from Pagure issues to GitHub issues. This means that existing or new issues will be reported and tracked through Dogtag PKI's GitHub Issue tracker.
This issue has been cloned to GitHub and is available here: https://github.com/dogtagpki/pki/issues/2953
If you want to receive further updates on the issue, please navigate to the GitHub issue and click on Subscribe button.
Subscribe
Thank you for understanding, and we apologize for any inconvenience.
Metadata Update from @dmoluguw: - Issue close_status updated to: migrated - Issue status updated to: Closed (was: Open)