Skip to content

Commit 1d38712

Browse files
DNS: implement NameSilo vis Posh-ACME
Implemented by copilot
1 parent a74fe6d commit 1d38712

File tree

1 file changed

+37
-18
lines changed

1 file changed

+37
-18
lines changed

src/Certify.Shared.Extensions/Providers/DnsProviderPoshACME.cs

Lines changed: 37 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ [Hurricane Electric](https://poshac.me/docs/latest/Plugins/HurricaneElectric),
5353
[LuaDns](https://poshac.me/docs/latest/Plugins/LuaDns),
5454
[name.com](https://poshac.me/docs/latest/Plugins/NameCom),
5555
[Namecheap](https://poshac.me/docs/latest/Plugins/Namecheap)
56+
[NameSilo](https://poshac.me/docs/latest/Plugins/NameSilo)
5657
[NS1](https://poshac.me/docs/latest/Plugins/NS1),
5758
[PointDNS](https://poshac.me/docs/latest/Plugins/PointDNS),
5859
[Porkbun](https://poshac.me/docs/latest/Plugins/Porkbun),
@@ -866,57 +867,75 @@ public List<ChallengeProviderDefinition> GetProviders(Type pluginType)
866867
},
867868
new ChallengeProviderDefinition
868869
{
869-
Id = "DNS01.API.PoshACME.NameCom",
870-
Title = "name.com DNS API (using Posh-ACME)",
870+
Id = "DNS01.API.PoshACME.NameCheap",
871+
Title = "Namecheap DNS API (using Posh-ACME)",
871872
Description = "Validates via DNS API using credentials",
872-
HelpUrl = "https://poshac.me/docs/latest/Plugins/NameCom/",
873+
HelpUrl = "https://poshac.me/docs/latest/Plugins/Namecheap/",
873874
PropagationDelaySeconds = DefaultPropagationDelay,
874875
ProviderParameters = new List<ProviderParameter>
875876
{
876-
new ProviderParameter { Key = "NameComUserName", Name = "API Username", IsRequired = true, IsCredential = true },
877-
new ProviderParameter { Key = "NameComToken", Name = "API Token", IsRequired = true, IsCredential = true, ExtendedConfig = _paramIsSecureStringAltKeyConfig.Replace("PARAMKEY","NameComTokenSecure") },
878-
new ProviderParameter { Key = "NameComUseTestEnv", Name = "Use Test Environment", IsRequired = true, Value="false", Type= OptionType.Boolean, IsHidden=true, IsCredential=false },
877+
new ProviderParameter { Key = "NCUsername", Name = "Username", IsRequired = true, IsCredential = true },
878+
new ProviderParameter { Key = "NCApiKey", Name = "API Key", IsRequired = true, IsCredential = true, ExtendedConfig= _paramIsSecureStringConfig },
879879
_defaultPropagationDelayParam
880880
},
881881
ChallengeType = Models.SupportedChallengeTypes.CHALLENGE_TYPE_DNS,
882-
Config = "Provider=Certify.Providers.DNS.PoshACME;Script=NameCom",
882+
Config = "Provider=Certify.Providers.DNS.PoshACME;Script=Namecheap",
883883
HandlerType = ChallengeHandlerType.POWERSHELL,
884884
IsTestModeSupported = false,
885885
IsExperimental = true
886886
},
887887
new ChallengeProviderDefinition
888888
{
889-
Id = "DNS01.API.PoshACME.NS1",
890-
Title = "NS1 DNS API (using Posh-ACME)",
889+
Id = "DNS01.API.PoshACME.NameSilo",
890+
Title = "NameSilo DNS API (using Posh-ACME)",
891+
Description = "Validates via NameSilo DNS API using API key.",
892+
HelpUrl = "https://poshac.me/docs/latest/Plugins/NameSilo/",
893+
PropagationDelaySeconds = DefaultPropagationDelay,
894+
ProviderParameters = new List<ProviderParameter>
895+
{
896+
new ProviderParameter { Key = "NameSiloApiKey", Name = "API Key", IsRequired = true, IsCredential = true, ExtendedConfig = _paramIsSecureStringConfig },
897+
_defaultPropagationDelayParam
898+
},
899+
ChallengeType = Models.SupportedChallengeTypes.CHALLENGE_TYPE_DNS,
900+
Config = "Provider=Certify.Providers.DNS.PoshACME;Script=NameSilo",
901+
HandlerType = ChallengeHandlerType.POWERSHELL,
902+
IsTestModeSupported = false,
903+
IsExperimental = true
904+
},
905+
new ChallengeProviderDefinition
906+
{
907+
Id = "DNS01.API.PoshACME.NameCom",
908+
Title = "name.com DNS API (using Posh-ACME)",
891909
Description = "Validates via DNS API using credentials",
892-
HelpUrl = "https://poshac.me/docs/latest/Plugins/NS1/",
910+
HelpUrl = "https://poshac.me/docs/latest/Plugins/NameCom/",
893911
PropagationDelaySeconds = DefaultPropagationDelay,
894912
ProviderParameters = new List<ProviderParameter>
895913
{
896-
new ProviderParameter { Key = "NS1KeyInsecure", Name = "Key", IsRequired = true, IsCredential = true, ExtendedConfig = _paramIsSecureStringAltKeyConfig.Replace("PARAMKEY","NS1Key") },
914+
new ProviderParameter { Key = "NameComUserName", Name = "API Username", IsRequired = true, IsCredential = true },
915+
new ProviderParameter { Key = "NameComToken", Name = "API Token", IsRequired = true, IsCredential = true, ExtendedConfig = _paramIsSecureStringAltKeyConfig.Replace("PARAMKEY","NameComTokenSecure") },
916+
new ProviderParameter { Key = "NameComUseTestEnv", Name = "Use Test Environment", IsRequired = true, Value="false", Type= OptionType.Boolean, IsHidden=true, IsCredential=false },
897917
_defaultPropagationDelayParam
898918
},
899919
ChallengeType = Models.SupportedChallengeTypes.CHALLENGE_TYPE_DNS,
900-
Config = "Provider=Certify.Providers.DNS.PoshACME;Script=NS1",
920+
Config = "Provider=Certify.Providers.DNS.PoshACME;Script=NameCom",
901921
HandlerType = ChallengeHandlerType.POWERSHELL,
902922
IsTestModeSupported = false,
903923
IsExperimental = true
904924
},
905925
new ChallengeProviderDefinition
906926
{
907-
Id = "DNS01.API.PoshACME.NameCheap",
908-
Title = "Namecheap DNS API (using Posh-ACME)",
927+
Id = "DNS01.API.PoshACME.NS1",
928+
Title = "NS1 DNS API (using Posh-ACME)",
909929
Description = "Validates via DNS API using credentials",
910-
HelpUrl = "https://poshac.me/docs/latest/Plugins/Namecheap/",
930+
HelpUrl = "https://poshac.me/docs/latest/Plugins/NS1/",
911931
PropagationDelaySeconds = DefaultPropagationDelay,
912932
ProviderParameters = new List<ProviderParameter>
913933
{
914-
new ProviderParameter { Key = "NCUsername", Name = "Username", IsRequired = true, IsCredential = true },
915-
new ProviderParameter { Key = "NCApiKey", Name = "API Key", IsRequired = true, IsCredential = true, ExtendedConfig= _paramIsSecureStringConfig },
934+
new ProviderParameter { Key = "NS1KeyInsecure", Name = "Key", IsRequired = true, IsCredential = true, ExtendedConfig = _paramIsSecureStringAltKeyConfig.Replace("PARAMKEY","NS1Key") },
916935
_defaultPropagationDelayParam
917936
},
918937
ChallengeType = Models.SupportedChallengeTypes.CHALLENGE_TYPE_DNS,
919-
Config = "Provider=Certify.Providers.DNS.PoshACME;Script=Namecheap",
938+
Config = "Provider=Certify.Providers.DNS.PoshACME;Script=NS1",
920939
HandlerType = ChallengeHandlerType.POWERSHELL,
921940
IsTestModeSupported = false,
922941
IsExperimental = true

0 commit comments

Comments
 (0)