feat(database): add CA certificate generation for database servers

This commit is contained in:
Andras Bacsai
2025-03-31 14:02:15 +02:00
parent c7591fde15
commit d6d1c9ad82
9 changed files with 129 additions and 1 deletions

View File

@@ -214,10 +214,23 @@ class General extends Component
return;
}
$caCert = SslCertificate::where('server_id', $existingCert->server_id)
$server = $this->database->destination->server;
$caCert = SslCertificate::where('server_id', $server->id)
->where('is_ca_certificate', true)
->first();
if (! $caCert) {
$server->generateCaCertificate();
$caCert = SslCertificate::where('server_id', $server->id)->where('is_ca_certificate', true)->first();
}
if (! $caCert) {
$this->dispatch('error', 'No CA certificate found for this database. Please generate a CA certificate for this server in the server/advanced page.');
return;
}
SslHelper::generateSslCertificate(
commonName: $existingCert->commonName,
subjectAlternativeNames: $existingCert->subjectAlternativeNames ?? [],