diff --git a/conf/admin/hello.html b/conf/admin/hello.html
index 191d839..6d91367 100644
--- a/conf/admin/hello.html
+++ b/conf/admin/hello.html
@@ -1 +1 @@
-### 👏👏👏 你好 ***{{username}}***, 欢迎使用 [RustDesk Api](https://github.com/lejianwen/rustdesk-api)
\ No newline at end of file
+### 👏👏👏 你好 ***{{username}}***, 欢迎使用 [RustDesk API](https://github.com/lejianwen/rustdesk-api)
\ No newline at end of file
diff --git a/http/controller/admin/config.go b/http/controller/admin/config.go
index 3032f1e..ef4165c 100644
--- a/http/controller/admin/config.go
+++ b/http/controller/admin/config.go
@@ -61,6 +61,12 @@ func (co *Config) AppConfig(c *gin.Context) {
func (co *Config) AdminConfig(c *gin.Context) {
u := service.AllService.UserService.CurUser(c)
+ if u == nil || u.Id == 0 {
+ response.Success(c, &gin.H{
+ "title": global.Config.Admin.Title,
+ })
+ return
+ }
hello := global.Config.Admin.Hello
helloFile := global.Config.Admin.HelloFile
if helloFile != "" {
diff --git a/http/router/admin.go b/http/router/admin.go
index fad66c5..c6e5828 100644
--- a/http/router/admin.go
+++ b/http/router/admin.go
@@ -22,6 +22,9 @@ func Init(g *gin.Engine) {
adg := g.Group("/api/admin")
LoginBind(adg)
adg.POST("/user/register", (&admin.User{}).Register)
+
+ ConfigBind(adg)
+
adg.Use(middleware.AdminAuth())
//FileBind(adg)
UserBind(adg)
@@ -35,7 +38,6 @@ func Init(g *gin.Engine) {
AddressBookCollectionBind(adg)
AddressBookCollectionRuleBind(adg)
UserTokenBind(adg)
- ConfigBind(adg)
//deprecated by ConfigBind
//rs := &admin.Rustdesk{}
@@ -221,9 +223,13 @@ func UserTokenBind(rg *gin.RouterGroup) {
func ConfigBind(rg *gin.RouterGroup) {
aR := rg.Group("/config")
rs := &admin.Config{}
+
+ aR.GET("/admin", rs.AdminConfig)
+
+ aR.Use(middleware.AdminAuth())
aR.GET("/server", rs.ServerConfig)
aR.GET("/app", rs.AppConfig)
- aR.GET("/admin", rs.AdminConfig)
+
}
/*
diff --git a/service/user.go b/service/user.go
index 5d75006..5c31100 100644
--- a/service/user.go
+++ b/service/user.go
@@ -280,7 +280,7 @@ func (us *UserService) UpdatePassword(u *model.User, password string) error {
// IsAdmin 是否管理员
func (us *UserService) IsAdmin(u *model.User) bool {
- return *u.IsAdmin
+ return u != nil && *u.IsAdmin
}
// RouteNames