| @@ 618-659 (lines=42) @@ | ||
| 615 | preferences=preferences, |
|
| 616 | ) |
|
| 617 | ||
| 618 | def create_tls_certificate( |
|
| 619 | self, |
|
| 620 | name: str, |
|
| 621 | certificate: str, |
|
| 622 | *, |
|
| 623 | comment: Optional[str] = None, |
|
| 624 | trust: Optional[bool] = None |
|
| 625 | ) -> Any: |
|
| 626 | """Create a new TLS certificate |
|
| 627 | ||
| 628 | Arguments: |
|
| 629 | name: Name of the TLS certificate, defaulting to the MD5 |
|
| 630 | fingerprint. |
|
| 631 | certificate: The Base64 encoded certificate data (x.509 DER or PEM). |
|
| 632 | comment: Comment for the TLS certificate. |
|
| 633 | trust: Whether the certificate is trusted. |
|
| 634 | ||
| 635 | Returns: |
|
| 636 | The response. See :py:meth:`send_command` for details. |
|
| 637 | """ |
|
| 638 | if not name: |
|
| 639 | raise RequiredArgument( |
|
| 640 | function=self.create_tls_certificate.__name__, argument='name' |
|
| 641 | ) |
|
| 642 | if not certificate: |
|
| 643 | raise RequiredArgument( |
|
| 644 | function=self.create_tls_certificate.__name__, |
|
| 645 | argument='certificate', |
|
| 646 | ) |
|
| 647 | ||
| 648 | cmd = XmlCommand("create_tls_certificate") |
|
| 649 | ||
| 650 | if comment: |
|
| 651 | cmd.add_element("comment", comment) |
|
| 652 | ||
| 653 | cmd.add_element("name", name) |
|
| 654 | cmd.add_element("certificate", certificate) |
|
| 655 | ||
| 656 | if trust: |
|
| 657 | cmd.add_element("trust", _to_bool(trust)) |
|
| 658 | ||
| 659 | return self._send_xml_command(cmd) |
|
| 660 | ||
| 661 | def get_tls_certificates( |
|
| 662 | self, |
|
| @@ 1173-1210 (lines=38) @@ | ||
| 1170 | ||
| 1171 | return self._send_xml_command(cmd) |
|
| 1172 | ||
| 1173 | def modify_tls_certificate( |
|
| 1174 | self, |
|
| 1175 | tls_certificate_id: str, |
|
| 1176 | *, |
|
| 1177 | name: Optional[str] = None, |
|
| 1178 | comment: Optional[str] = None, |
|
| 1179 | trust: Optional[bool] = None |
|
| 1180 | ) -> Any: |
|
| 1181 | """Modifies an existing TLS certificate. |
|
| 1182 | ||
| 1183 | Arguments: |
|
| 1184 | tls_certificate_id: UUID of the TLS certificate to be modified. |
|
| 1185 | name: Name of the TLS certificate, defaulting to the MD5 fingerprint |
|
| 1186 | comment: Comment for the TLS certificate. |
|
| 1187 | trust: Whether the certificate is trusted. |
|
| 1188 | ||
| 1189 | Returns: |
|
| 1190 | The response. See :py:meth:`send_command` for details. |
|
| 1191 | """ |
|
| 1192 | if not tls_certificate_id: |
|
| 1193 | raise RequiredArgument( |
|
| 1194 | function=self.modify_tls_certificate.__name__, |
|
| 1195 | argument='tls_certificate_id', |
|
| 1196 | ) |
|
| 1197 | ||
| 1198 | cmd = XmlCommand("modify_tls_certificate") |
|
| 1199 | cmd.set_attribute("tls_certificate_id", str(tls_certificate_id)) |
|
| 1200 | ||
| 1201 | if comment: |
|
| 1202 | cmd.add_element("comment", comment) |
|
| 1203 | ||
| 1204 | if name: |
|
| 1205 | cmd.add_element("name", name) |
|
| 1206 | ||
| 1207 | if trust: |
|
| 1208 | cmd.add_element("trust", _to_bool(trust)) |
|
| 1209 | ||
| 1210 | return self._send_xml_command(cmd) |
|
| 1211 | ||
| 1212 | def clone_tls_certificate(self, tls_certificate_id: str) -> Any: |
|
| 1213 | """Modifies an existing TLS certificate. |
|