Configure renewals to use the IPA JSON API

certmonger defaults to using the PKI XML API for renewing
CA/KRA subsystem certificates. certmonger supports the
IPA API for renewals by providing --jsonrpc-url

The IPA API will forward requests to the CA via the
PKI python API. IPA will be RPC agnostic this way and
rely on the PKI python API to handle communication.

Fixes: https://pagure.io/freeipa/issue/9738

Signed-off-by: Rob Crittenden <rcritten@redhat.com>
Reviewed-By: Fraser Tweedale <ftweedal@redhat.com>
Reviewed-By: Florence Blanc-Renaud <frenaud@redhat.com>
Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
Reviewed-By: Rafael Guterres Jeffman <rjeffman@redhat.com>
Reviewed-By: Thomas Woerner <twoerner@redhat.com>
This commit is contained in:
Rob Crittenden committed 2025-11-19 16:50:37 -05:00
1 parent 7a33bccabd
commit e8425bd88d
4 files changed
+31 -13

No files matched your search

+1 -1
View File
@@ -490,7 +490,7 @@ class KrbInstance(service.Service):
if use_dogtag_submit:
ca_args = [
paths.CERTMONGER_DOGTAG_SUBMIT,
'--ee-url', 'https://%s:8443/ca/ee/ca' % self.fqdn,
'--jsonrpc-url', 'https://%s/ipa/json' % self.fqdn,
'--certfile', paths.RA_AGENT_PEM,
'--keyfile', paths.RA_AGENT_KEY,
'--cafile', paths.IPA_CA_CRT,
+8
View File
@@ -472,6 +472,14 @@ class APIClient(Backend):
"""
DEFAULT_PROFILE = dogtag.DEFAULT_PROFILE
KDC_PROFILE = dogtag.KDC_PROFILE
OCSP_PROFILE = dogtag.OCSP_PROFILE
SUBSYSTEM_PROFILE = dogtag.SUBSYSTEM_PROFILE
AUDIT_PROFILE = dogtag.AUDIT_PROFILE
CACERT_PROFILE = dogtag.CACERT_PROFILE
CASERVER_PROFILE = dogtag.CASERVER_PROFILE
KRA_AUDIT_PROFILE = dogtag.KRA_AUDIT_PROFILE
KRA_STORAGE_PROFILE = dogtag.KRA_STORAGE_PROFILE
KRA_TRANSPORT_PROFILE = dogtag.KRA_TRANSPORT_PROFILE
def raise_certificate_operation_exception(self, func_name, exc):
"""