Mercurial > gemma
comparison auth/opendb.go @ 302:0777aa6de45b
Password reset. Part I
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Wed, 01 Aug 2018 12:29:55 +0200 |
parents | a98a282f00e1 |
children | 394fafeb4052 |
comparison
equal
deleted
inserted
replaced
301:1781e5d7cb5a | 302:0777aa6de45b |
---|---|
22 return fmt.Sprintf("host=%s port=%d dbname=%s user=%s password=%s sslmode=%s", | 22 return fmt.Sprintf("host=%s port=%d dbname=%s user=%s password=%s sslmode=%s", |
23 dbQuote(host), port, dbQuote(dbname), | 23 dbQuote(host), port, dbQuote(dbname), |
24 dbQuote(user), dbQuote(password), sslmode) | 24 dbQuote(user), dbQuote(password), sslmode) |
25 } | 25 } |
26 | 26 |
27 func opendb(user, password string) (*sql.DB, error) { | 27 func OpenDB(user, password string) (*sql.DB, error) { |
28 dsn := dbDSN( | 28 dsn := dbDSN( |
29 config.Config.DBHost, config.Config.DBPort, | 29 config.Config.DBHost, config.Config.DBPort, |
30 config.Config.DBName, | 30 config.Config.DBName, |
31 user, password, | 31 user, password, |
32 config.Config.DBSSLMode) | 32 config.Config.DBSSLMode) |
43 ) | 43 ) |
44 SELECT rolname FROM pg_roles | 44 SELECT rolname FROM pg_roles |
45 WHERE oid IN (SELECT oid FROM cte) AND rolname <> current_user` | 45 WHERE oid IN (SELECT oid FROM cte) AND rolname <> current_user` |
46 | 46 |
47 func AllOtherRoles(user, password string) ([]string, error) { | 47 func AllOtherRoles(user, password string) ([]string, error) { |
48 db, err := opendb(user, password) | 48 db, err := OpenDB(user, password) |
49 if err != nil { | 49 if err != nil { |
50 return nil, err | 50 return nil, err |
51 } | 51 } |
52 defer db.Close() | 52 defer db.Close() |
53 rows, err := db.Query(allRoles) | 53 rows, err := db.Query(allRoles) |