@@ -59,7 +59,7 @@ func TestUser_AddRemove(t *testing.T) {
59
59
require .Equal (t , user .Everyone , users [2 ].Name )
60
60
}
61
61
62
- func TestUser_ChangePassword (t * testing.T ) {
62
+ func TestUser_ChangeUserPassword (t * testing.T ) {
63
63
s := newTestServer (t , newTestConfigWithAuthFile (t ))
64
64
defer s .closeDatabases ()
65
65
@@ -97,6 +97,21 @@ func TestUser_ChangePassword(t *testing.T) {
97
97
require .Equal (t , 200 , rr .Code )
98
98
}
99
99
100
+ func TestUser_DontChangeAdminPassword (t * testing.T ) {
101
+ s := newTestServer (t , newTestConfigWithAuthFile (t ))
102
+ defer s .closeDatabases ()
103
+
104
+ // Create admin
105
+ require .Nil (t , s .userManager .AddUser ("phil" , "phil" , user .RoleAdmin ))
106
+ require .Nil (t , s .userManager .AddUser ("admin" , "admin" , user .RoleAdmin ))
107
+
108
+ // Try to change password via API
109
+ rr := request (t , s , "PUT" , "/v1/users" , `{"username": "admin", "password": "admin-new", "force":true}` , map [string ]string {
110
+ "Authorization" : util .BasicAuth ("phil" , "phil" ),
111
+ })
112
+ require .Equal (t , 403 , rr .Code )
113
+ }
114
+
100
115
func TestUser_AddRemove_Failures (t * testing.T ) {
101
116
s := newTestServer (t , newTestConfigWithAuthFile (t ))
102
117
defer s .closeDatabases ()
0 commit comments