mirror of
https://github.com/moul/sshportal.git
synced 2025-03-10 06:17:23 +08:00
Merge pull request #33 from moul/dev/moul/default-username
Dynamic username for the first created account
This commit is contained in:
commit
b9af077ef4
2 changed files with 16 additions and 3 deletions
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
## master (unreleased)
|
## master (unreleased)
|
||||||
|
|
||||||
* No entry
|
* The default created user now has the same username as the user starting sshportal (was hardcoded "admin")
|
||||||
|
|
||||||
## v1.7.1 (2018-01-03)
|
## v1.7.1 (2018-01-03)
|
||||||
|
|
||||||
|
|
17
dbinit.go
17
dbinit.go
|
@ -5,6 +5,8 @@ import (
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"log"
|
"log"
|
||||||
"os"
|
"os"
|
||||||
|
"os/user"
|
||||||
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/go-gormigrate/gormigrate"
|
"github.com/go-gormigrate/gormigrate"
|
||||||
|
@ -522,9 +524,20 @@ func dbInit(db *gorm.DB) error {
|
||||||
if err := db.Where("name = ?", "admin").First(&adminRole).Error; err != nil {
|
if err := db.Where("name = ?", "admin").First(&adminRole).Error; err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
var username string
|
||||||
|
if currentUser, err := user.Current(); err == nil {
|
||||||
|
username = currentUser.Username
|
||||||
|
}
|
||||||
|
if username == "" {
|
||||||
|
username = os.Getenv("USER")
|
||||||
|
}
|
||||||
|
username = strings.ToLower(username)
|
||||||
|
if username == "" {
|
||||||
|
username = "admin" // fallback username
|
||||||
|
}
|
||||||
user := User{
|
user := User{
|
||||||
Name: "admin",
|
Name: username,
|
||||||
Email: "admin@sshportal",
|
Email: fmt.Sprintf("%s@localhost", username),
|
||||||
Comment: "created by sshportal",
|
Comment: "created by sshportal",
|
||||||
Roles: []*UserRole{&adminRole},
|
Roles: []*UserRole{&adminRole},
|
||||||
InviteToken: inviteToken,
|
InviteToken: inviteToken,
|
||||||
|
|
Loading…
Reference in a new issue