You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
828 B
Go
43 lines
828 B
Go
package hsm
|
|
|
|
import (
|
|
"context"
|
|
"log"
|
|
)
|
|
|
|
func EnsureCAKeysAndCertificates(ctx context.Context) error {
|
|
var label string
|
|
|
|
conf := GetSignerConfig(ctx)
|
|
|
|
for _, label := range conf.RootCAs() {
|
|
crt, err := GetRootCACertificate(ctx, label)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
log.Printf("got root CA certificate:\n Subject %s\n Issuer %s\n Valid from %s until %s\n Serial %s",
|
|
crt.Subject,
|
|
crt.Issuer,
|
|
crt.NotBefore,
|
|
crt.NotAfter,
|
|
crt.SerialNumber)
|
|
}
|
|
|
|
for _, label = range conf.IntermediaryCAs() {
|
|
crt, err := GetIntermediaryCACertificate(ctx, label)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
log.Printf("got intermediary CA certificate:\n Subject %s\n Issuer %s\n Valid from %s until %s\n Serial %s",
|
|
crt.Subject,
|
|
crt.Issuer,
|
|
crt.NotBefore,
|
|
crt.NotAfter,
|
|
crt.SerialNumber)
|
|
}
|
|
|
|
return nil
|
|
}
|