Files
grafana/pkg/infra/process/root_check.go
Will Browne 1a71f0fe13 Chore: Add WARN log if grafana server process is running with elevated privileges (#35205)
* warn on linux

* add warning for grpc plugins

* add windows support

* update go.mod

* reorganize imports

* update naming

* remove Windows logic

* simplify and add check for when UID and EUID don't match

* fix build

* tidy go.mod

* feedback

* cleanup + migrate
2021-09-13 17:46:47 +02:00

21 lines
362 B
Go

// +build !windows
package process
import (
"fmt"
"os"
"os/user"
)
func elevatedPrivilegesCheck() (bool, error) {
u, err := user.Current()
if err != nil {
return false, fmt.Errorf("could not get current OS user to detect process privileges")
}
return (u != nil && u.Username == "root") ||
os.Geteuid() != os.Getuid() ||
os.Geteuid() == 0, nil
}