diff --git a/conf/config.yaml b/conf/config.yaml index a37b3f1..15a4771 100644 --- a/conf/config.yaml +++ b/conf/config.yaml @@ -40,6 +40,27 @@ proxy: jwt: key: "" expire-duration: 360000 +ldap: + enable: false + url: "ldap://ldap.example.com:389" + tls: false + tls-verify: false + base-dn: "dc=example,dc=com" + bind-dn: "cn=admin,dc=example,dc=com" + bind-password: "password" + + user: + base-dn: "ou=users,dc=example,dc=com" + enable-attr: "" #The attribute name of the user for enabling, in AD it is "userAccountControl", empty means no enable attribute, all users are enabled + enable-attr-value: "" # The value of the enable attribute when the user is enabled. If you are using AD, just set random value, it will be ignored. + filter: "(cn=*)" + username: "uid" # The attribute name of the user for usernamem if you are using AD, it should be "sAMAccountName" + email: "mail" + first-name: "givenName" + last-name: "sn" + sync: false # If true, the user will be synchronized to the database when the user logs in. If false, the user will be synchronized to the database when the user be created. + admin-group: "cn=admin,dc=example,dc=com" # The group name of the admin group, if the user is in this group, the user will be an admin. + redis: addr: "127.0.0.1:6379" password: "" @@ -58,23 +79,3 @@ oss: expire-time: 30 max-byte: 10240 -ldap: - enable: false - url: "ldap://ldap.example.com:389" - tls: false - tls-verify: false - base-dn: "dc=example,dc=com" - bind-dn: "cn=admin,dc=example,dc=com" - bind-password: "password" - - user: - base-dn: "ou=users,dc=example,dc=com" - enable-attr: "" #The attribute name of the user for enabling, in AD it is "userAccountControl", empty means no enable attribute, all users are enabled - enable-attr-value: "" # The value of the enable attribute when the user is enabled. If you are using AD, just set random value, it will be ignored. - filter: "(cn=*)" - username: "uid" # The attribute name of the user for usernamem if you are using AD, it should be "sAMAccountName" - email: "mail" - first-name: "givenName" - last-name: "sn" - sync: false # If true, the user will be synchronized to the database when the user logs in. If false, the user will be synchronized to the database when the user be created. - admin-group: "cn=admin,dc=example,dc=com" # The group name of the admin group, if the user is in this group, the user will be an admin. diff --git a/config/config.go b/config/config.go index a455c06..40abff8 100644 --- a/config/config.go +++ b/config/config.go @@ -2,7 +2,6 @@ package config import ( "fmt" - "github.com/fsnotify/fsnotify" "github.com/spf13/viper" "strings" ) @@ -38,7 +37,7 @@ type Config struct { Jwt Jwt Rustdesk Rustdesk Proxy Proxy - Ldap Ldap + Ldap Ldap } // Init 初始化配置 @@ -57,15 +56,19 @@ func Init(rowVal *Config, path string) *viper.Viper { panic(fmt.Errorf("Fatal error config file: %s \n", err)) } v.WatchConfig() - v.OnConfigChange(func(e fsnotify.Event) { - //配置文件修改监听 - fmt.Println("config file changed:", e.Name) - if err2 := v.Unmarshal(rowVal); err2 != nil { - fmt.Println(err2) - } - rowVal.Rustdesk.LoadKeyFile() - rowVal.Rustdesk.ParsePort() - }) + + /* + //监听配置修改没什么必要 + v.OnConfigChange(func(e fsnotify.Event) { + //配置文件修改监听 + fmt.Println("config file changed:", e.Name) + if err2 := v.Unmarshal(rowVal); err2 != nil { + fmt.Println(err2) + } + rowVal.Rustdesk.LoadKeyFile() + rowVal.Rustdesk.ParsePort() + }) + */ if err := v.Unmarshal(rowVal); err != nil { fmt.Println(err) }