(name: str,
issuer: Credentials, email: Optional[str],
key_type: Any,
valid_from: timedelta = timedelta(days=-1),
valid_to: timedelta = timedelta(days=89),
serial: Optional[int] = None,
)
| 488 | |
| 489 | @staticmethod |
| 490 | def _make_client_credentials(name: str, |
| 491 | issuer: Credentials, email: Optional[str], |
| 492 | key_type: Any, |
| 493 | valid_from: timedelta = timedelta(days=-1), |
| 494 | valid_to: timedelta = timedelta(days=89), |
| 495 | serial: Optional[int] = None, |
| 496 | ) -> Credentials: |
| 497 | pkey = _private_key(key_type=key_type) |
| 498 | if issuer is not None: |
| 499 | issuer_subject = issuer.certificate.subject |
| 500 | issuer_key = issuer.private_key |
| 501 | else: |
| 502 | issuer_subject = None |
| 503 | issuer_key = pkey |
| 504 | subject = HttpdTestCA._make_x509_name(common_name=name, parent=issuer_subject) |
| 505 | csr = HttpdTestCA._make_csr(subject=subject, |
| 506 | issuer_subject=issuer_subject, pkey=pkey, |
| 507 | valid_from_delta=valid_from, valid_until_delta=valid_to, |
| 508 | serial=serial) |
| 509 | csr = HttpdTestCA._add_client_usages(csr, issuer=issuer, rfc82name=email) |
| 510 | cert = csr.sign(private_key=issuer_key, |
| 511 | algorithm=hashes.SHA256(), |
| 512 | backend=default_backend()) |
| 513 | return Credentials(name=name, cert=cert, pkey=pkey, issuer=issuer) |
no test coverage detected