MCPcopy Create free account
hub / github.com/cloudnative-pg/cloudnative-pg / ParseCASecret

Function ParseCASecret

pkg/certs/certs.go:385–406  ·  view source on GitHub ↗

ParseCASecret parse a CA secret to a key pair

(secret *corev1.Secret)

Source from the content-addressed store, hash-verified

383
384// ParseCASecret parse a CA secret to a key pair
385func ParseCASecret(secret *corev1.Secret) (*KeyPair, error) {
386 privateKey, ok := secret.Data[CAPrivateKeyKey]
387 if !ok {
388 return nil, fmt.Errorf("missing %s secret data", CAPrivateKeyKey)
389 }
390
391 publicKey, ok := secret.Data[CACertKey]
392 if !ok {
393 return nil, fmt.Errorf("missing %s secret data", CACertKey)
394 }
395
396 // Verify the key matches the certificate
397 _, err := tls.X509KeyPair(publicKey, privateKey)
398 if err != nil {
399 return nil, err
400 }
401
402 return &KeyPair{
403 Private: privateKey,
404 Certificate: publicKey,
405 }, nil
406}
407
408// ParseServerSecret parse a secret for a server to a key pair
409func ParseServerSecret(secret *corev1.Secret) (*KeyPair, error) {

Callers 11

ensureClientCASecretMethod · 0.92
ensureServerCASecretMethod · 0.92
renewCASecretMethod · 0.92
GenerateFunction · 0.92
RenewLeafCertificateFunction · 0.85
renewCACertificateFunction · 0.85
ensureCertificateMethod · 0.85
k8s_test.goFile · 0.85

Calls

no outgoing calls

Tested by 2