MCPcopy Create free account
hub / github.com/apache/httpd / Credentials

Class Credentials

test/modules/md/md_certs.py:74–163  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

72
73
74class Credentials:
75
76 def __init__(self, name: str, cert: Any, pkey: Any):
77 self._name = name
78 self._cert = cert
79 self._pkey = pkey
80 self._cert_file = None
81 self._pkey_file = None
82 self._store = None
83
84 @property
85 def name(self) -> str:
86 return self._name
87
88 @property
89 def subject(self) -> x509.Name:
90 return self._cert.subject
91
92 @property
93 def key_type(self):
94 if isinstance(self._pkey, RSAPrivateKey):
95 return f"rsa{self._pkey.key_size}"
96 elif isinstance(self._pkey, EllipticCurvePrivateKey):
97 return f"{self._pkey.curve.name}"
98 else:
99 raise Exception(f"unknown key type: {self._pkey}")
100
101 @property
102 def private_key(self) -> Any:
103 return self._pkey
104
105 @property
106 def certificate(self) -> Any:
107 return self._cert
108
109 @property
110 def cert_pem(self) -> bytes:
111 return self._cert.public_bytes(Encoding.PEM)
112
113 @property
114 def pkey_pem(self) -> bytes:
115 return self._pkey.private_bytes(
116 Encoding.PEM,
117 PrivateFormat.TraditionalOpenSSL if self.key_type.startswith('rsa') else PrivateFormat.PKCS8,
118 NoEncryption())
119
120 def set_store(self, store: 'CertStore'):
121 self._store = store
122
123 def set_files(self, cert_file: str, pkey_file: str = None):
124 self._cert_file = cert_file
125 self._pkey_file = pkey_file
126
127 @property
128 def cert_file(self) -> str:
129 return self._cert_file
130
131 @property

Callers 4

load_credentialsMethod · 0.70
_make_ca_credentialsMethod · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected