From 1ae76b6c99c6d3f9fe1b334d1c01faca1c9e5513 Mon Sep 17 00:00:00 2001 From: shaoying Date: Sat, 8 May 2021 00:06:09 +0800 Subject: [PATCH] opt status --- base/aaa/user.go | 8 ++++++++ base/ssh/scripts.go | 5 ++--- base/web/serve.go | 3 ++- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/base/aaa/user.go b/base/aaa/user.go index 6756cba4..be008cbb 100644 --- a/base/aaa/user.go +++ b/base/aaa/user.go @@ -42,6 +42,14 @@ func _user_search(m *ice.Message, kind, name, text string) { }) } +func UserRoot(m *ice.Message) { + m.Option(ice.MSG_USERNAME, ice.Info.UserName) + m.Option(ice.MSG_USERROLE, ROOT) + + if m.Richs(USER, "", ice.Info.UserName, nil) == nil { + _user_create(m, ice.Info.UserName, kit.Hashs()) + } +} func UserZone(m *ice.Message, username interface{}) (zone string) { m.Richs(USER, nil, kit.Format(username), func(key string, value map[string]interface{}) { value = kit.GetMeta(value) diff --git a/base/ssh/scripts.go b/base/ssh/scripts.go index a0c8501d..64772255 100644 --- a/base/ssh/scripts.go +++ b/base/ssh/scripts.go @@ -290,9 +290,8 @@ func (f *Frame) Start(m *ice.Message, arg ...string) bool { r, f.stdout = os.Stdin, os.Stdout m.Option(ice.MSG_OPTS, ice.MSG_USERNAME) - m.Option(ice.MSG_USERNAME, ice.Info.UserName) - m.Option(ice.MSG_USERROLE, aaa.ROOT) - m.Option(ice.MSG_USERZONE, "boot") + aaa.UserRoot(m) + default: f.target = m.Source() diff --git a/base/web/serve.go b/base/web/serve.go index daf039b8..281889ad 100644 --- a/base/web/serve.go +++ b/base/web/serve.go @@ -157,8 +157,9 @@ func _serve_login(msg *ice.Message, cmds []string, w http.ResponseWriter, r *htt aaa.SessCheck(msg, msg.Option(ice.MSG_SESSID)) // 会话认证 } + if msg.Option(ice.MSG_USERNAME) == "" && tcp.IsLocalHost(msg, msg.Option(ice.MSG_USERIP)) && msg.Conf(SERVE, kit.Keym(tcp.LOCALHOST)) == "true" { - aaa.UserLogin(msg, ice.Info.UserName, ice.Info.PassWord) + aaa.UserRoot(msg) // 主机认证 }