diff --git a/security/acme-client/pkg-descr b/security/acme-client/pkg-descr
index a9b8d6429..422324153 100644
--- a/security/acme-client/pkg-descr
+++ b/security/acme-client/pkg-descr
@@ -15,6 +15,9 @@ Added:
* add support for DNSExit
* add World4You DNS API (#3722)
+Fixed:
+* fix 2FA support in Synology deployhook (#3627)
+
Removed:
* remove automation: Highwinds CDN (#3626)
diff --git a/security/acme-client/src/opnsense/mvc/app/controllers/OPNsense/AcmeClient/forms/dialogAction.xml b/security/acme-client/src/opnsense/mvc/app/controllers/OPNsense/AcmeClient/forms/dialogAction.xml
index c05efa983..5fa9e700d 100644
--- a/security/acme-client/src/opnsense/mvc/app/controllers/OPNsense/AcmeClient/forms/dialogAction.xml
+++ b/security/acme-client/src/opnsense/mvc/app/controllers/OPNsense/AcmeClient/forms/dialogAction.xml
@@ -219,6 +219,12 @@
textIf Synology DSM has OTP enabled, then the device ID has to be provided so that no OTP is required when running the automation.
+
+ action.acme_synology_dsm_devicename
+
+ text
+ If Synology DSM has OTP enabled, then the device name has to be provided so that no OTP is required when running the automation.
+ action.acme_synology_dsm_create
diff --git a/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeAutomation/AcmeSynologyDsm.php b/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeAutomation/AcmeSynologyDsm.php
index c1fb58a0a..3194f5745 100644
--- a/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeAutomation/AcmeSynologyDsm.php
+++ b/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeAutomation/AcmeSynologyDsm.php
@@ -48,7 +48,10 @@ class AcmeSynologyDsm extends Base implements LeAutomationInterface
$this->acme_env['SYNO_Create'] = (string)$this->config->acme_synology_dsm_create;
}
if (!empty((string)$this->config->acme_synology_dsm_deviceid)) {
- $this->acme_env['SYNO_DID'] = (string)$this->config->acme_synology_dsm_deviceid;
+ $this->acme_env['SYNO_Device_ID'] = (string)$this->config->acme_synology_dsm_deviceid;
+ }
+ if (!empty((string)$this->config->acme_synology_dsm_devicename)) {
+ $this->acme_env['SYNO_Device_Name'] = (string)$this->config->acme_synology_dsm_devicename;
}
$this->acme_args[] = '--deploy-hook synology_dsm';
return true;
diff --git a/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/AcmeClient.xml b/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/AcmeClient.xml
index f4f434d5e..b5339d938 100644
--- a/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/AcmeClient.xml
+++ b/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/AcmeClient.xml
@@ -1380,6 +1380,11 @@
/^.{1,1024}$/uShould be a string between 1 and 1024 characters.
+
+ N
+ /^.{1,1024}$/u
+ Should be a string between 1 and 1024 characters.
+ N/^.{1,1024}$/u