DNS Credentials are saved in Database

This commit is contained in:
Linard Schwendener
2024-05-02 22:52:51 +02:00
parent 7583a4628c
commit 8854a38f49
4 changed files with 140 additions and 18 deletions

View File

@@ -148,8 +148,25 @@ func (a *ACMEHandler) ObtainCert(domains []string, certificateName string, email
// setup how to receive challenge
if dns {
if !a.Database.TableExists("acme") {
a.Database.NewTable("acme")
return false, errors.New("DNS Provider and DNS Credenital configuration required for ACME Provider (Error -1)")
}
if !a.Database.KeyExists("acme", certificateName+"_dns_provider") || !a.Database.KeyExists("acme", certificateName+"_dns_credentials") {
return false, errors.New("DNS Provider and DNS Credenital configuration required for ACME Provider (Error -2)")
}
var dnsCredentials string
err := a.Database.Read("acme", certificateName+"_dns_credentials", &dnsCredentials)
if err != nil {
log.Println(err)
return false, err
}
dynuConfig := dynu.NewDefaultConfig()
dynuConfig.APIKey = "yourApiKey"
dynuConfig.APIKey = dnsCredentials
provider, err := dynu.NewDNSProviderConfig(dynuConfig)
if err != nil {