@@ -59,6 +59,7 @@ class URLS:
5959 CERTIFICATE_REVOKE = API_BASE_URL + "certificates/revoke"
6060 CERTIFICATE_RENEW = API_BASE_URL + "certificates/renew"
6161 CERTIFICATE_SEARCH = API_BASE_URL + "certificates/"
62+ CERTIFICATE_UPDATE = API_BASE_URL + "certificates/"
6263 CERTIFICATE_IMPORT = API_BASE_URL + "certificates/import"
6364 ZONE_CONFIG = API_BASE_URL + "certificates/checkpolicy"
6465 CONFIG_READ_DN = API_BASE_URL + "Config/ReadDn"
@@ -349,23 +350,37 @@ def revoke_cert(self, request):
349350 raise ServerUnexptedBehavior
350351
351352 def retire_cert (self , request ):
352- if not (request .id or request .thumbprint ):
353+ if not (request .id or request .thumbprint or request . guid ):
353354 raise ClientBadData
354- d = {
355- 'Disable' : request .disable
355+ data = {
356+ 'AttributeData' : [
357+ {
358+ 'Name' : 'Disabled' ,
359+ 'Value' : [
360+ '1'
361+ ]
362+ }
363+ ]
356364 }
357- if request .reason :
358- d ['Reason' ] = request .reason
359365 if request .id :
360- d [ 'CertificateDN' ] = request .id
361- elif request .thumbprint :
362- d [ 'Thumbprint' ] = request .thumbprint
366+ cert_guid = self . get_certificate_guid_from_dn ( request .id )
367+ elif request .guid :
368+ cert_guid = request .guid
363369 else :
364370 raise ClientBadData
365- if request .comments :
366- d ['Comments' ] = request .comments
367- # TODO: Change _post() with post(args)
368- status , data = self ._post (URLS .CERTIFICATE_REVOKE , data = d )
371+
372+ if request .description :
373+ data ['AttributeData' ] += {
374+ 'Name' : 'Description' ,
375+ 'Value' : [
376+ request .description
377+ ]
378+ }
379+ args = {
380+ self .ARG_URL : URLS .CERTIFICATE_UPDATE + cert_guid ,
381+ self .ARG_DATA : data
382+ }
383+ status , data = self .put (args )
369384 if status in (HTTPStatus .OK , HTTPStatus .ACCEPTED ):
370385 return data
371386
@@ -755,6 +770,14 @@ def post(self, args):
755770 """
756771 raise NotImplementedError
757772
773+ def put (self , args ):
774+ """
775+
776+ :param dict args:
777+ :rtype: tuple[Any, Any]
778+ """
779+ raise NotImplementedError
780+
758781 # ======================================== API IMPLEMENTATION ENDS ======================================== #
759782 # ========================================================================================================= #
760783
0 commit comments