post-management-auditors-AUDITOR_PUB-disable.rst (2334B)
1 .. http:post:: /management/auditors/$AUDITOR_PUB/disable 2 3 This request will be used to disable the use of the given auditor. 4 We use POST instead of DELETE because the exchange will retain state 5 about the auditor (specifically the end date) to prevent replay 6 attacks abusing the `AuditorSetupMessage`. Also, DELETE would not 7 support a body, which is needed to provide the signature authorizing 8 the operation. 9 10 **Request:** 11 12 The request must be a `AuditorTeardownMessage`. 13 14 **Response** 15 16 :http:statuscode:`204 No content`: 17 The auditor has successfully disabled the auditor. The body is empty. 18 :http:statuscode:`403 Forbidden`: 19 The signature is invalid. 20 Returned with an error code of 21 ``TALER_EC_EXCHANGE_MANAGEMENT_AUDITOR_DEL_SIGNATURE_INVALID``, 22 :http:statuscode:`404 Not found`: 23 The auditor is unknown to the exchange. 24 Returned with an error code of 25 ``TALER_EC_EXCHANGE_MANAGEMENT_AUDITOR_NOT_FOUND``. 26 :http:statuscode:`409 Conflict`: 27 The exchange has a more recent request related to this auditor key (replay detected). 28 Returned with an error code of 29 ``TALER_EC_EXCHANGE_MANAGEMENT_AUDITOR_MORE_RECENT_PRESENT``. 30 :http:statuscode:`413 Request entity too large`: 31 The uploaded body is to long, it exceeds the size limit. 32 Returned with an error code of 33 ``TALER_EC_GENERIC_UPLOAD_EXCEEDS_LIMIT``. 34 :http:statuscode:`500 Internal Server Error`: 35 The server experienced an internal error. 36 This response comes with a standard `ErrorDetail` response. 37 Possible error codes include 38 ``TALER_EC_GENERIC_DB_FETCH_FAILED`` or 39 ``TALER_EC_GENERIC_DB_STORE_FAILED``. 40 41 **Details:** 42 43 .. ts:def:: AuditorTeardownMessage 44 45 interface AuditorTeardownMessage { 46 47 // Signature by the exchange master key over a 48 // `TALER_MasterDelAuditorPS`. 49 // Must have purpose ``TALER_SIGNATURE_MASTER_AUDITOR_DEL``. 50 master_sig: EddsaSignature; 51 52 // When does the auditor become inactive? 53 // Should be the time when the signature was created, 54 // using the (monotonic!) local time of the system 55 // with the offline master public key. Note that 56 // even if the time is in the future, the auditor will 57 // become inactive immediately! Used ONLY to detect replay attacks. 58 validity_end: Timestamp; 59 60 }