@@ -18,6 +18,8 @@ const (
18
18
ALL_NETWORK_ACCESS = "THIS_USER_HAS_ALL"
19
19
20
20
master_uname = "masteradministrator"
21
+ Forbidden_Msg = "forbidden"
22
+ Forbidden_Err = models .Error (Forbidden_Msg )
21
23
Unauthorized_Msg = "unauthorized"
22
24
Unauthorized_Err = models .Error (Unauthorized_Msg )
23
25
)
@@ -27,7 +29,7 @@ func SecurityCheck(reqAdmin bool, next http.Handler) http.HandlerFunc {
27
29
28
30
return func (w http.ResponseWriter , r * http.Request ) {
29
31
var errorResponse = models.ErrorResponse {
30
- Code : http .StatusUnauthorized , Message : Unauthorized_Msg ,
32
+ Code : http .StatusForbidden , Message : Forbidden_Msg ,
31
33
}
32
34
33
35
var params = mux .Vars (r )
@@ -66,7 +68,7 @@ func SecurityCheck(reqAdmin bool, next http.Handler) http.HandlerFunc {
66
68
func NetUserSecurityCheck (isNodes , isClients bool , next http.Handler ) http.HandlerFunc {
67
69
return func (w http.ResponseWriter , r * http.Request ) {
68
70
var errorResponse = models.ErrorResponse {
69
- Code : http .StatusUnauthorized , Message : "unauthorized" ,
71
+ Code : http .StatusForbidden , Message : Forbidden_Msg ,
70
72
}
71
73
r .Header .Set ("ismaster" , "no" )
72
74
@@ -152,18 +154,18 @@ func UserPermissions(reqAdmin bool, netname string, token string) ([]string, str
152
154
return nil , username , Unauthorized_Err
153
155
}
154
156
if ! isadmin && reqAdmin {
155
- return nil , username , Unauthorized_Err
157
+ return nil , username , Forbidden_Err
156
158
}
157
159
userNetworks = networks
158
160
if isadmin {
159
161
return []string {ALL_NETWORK_ACCESS }, username , nil
160
162
}
161
163
// check network admin access
162
164
if len (netname ) > 0 && (len (userNetworks ) == 0 || ! authenticateNetworkUser (netname , userNetworks )) {
163
- return nil , username , Unauthorized_Err
165
+ return nil , username , Forbidden_Err
164
166
}
165
167
if isEE && len (netname ) > 0 && ! pro .IsUserNetAdmin (netname , username ) {
166
- return nil , "" , Unauthorized_Err
168
+ return nil , "" , Forbidden_Err
167
169
}
168
170
return userNetworks , username , nil
169
171
}
@@ -193,7 +195,7 @@ func authenticateDNSToken(tokenString string) bool {
193
195
func ContinueIfUserMatch (next http.Handler ) http.HandlerFunc {
194
196
return func (w http.ResponseWriter , r * http.Request ) {
195
197
var errorResponse = models.ErrorResponse {
196
- Code : http .StatusUnauthorized , Message : Unauthorized_Msg ,
198
+ Code : http .StatusForbidden , Message : Forbidden_Msg ,
197
199
}
198
200
var params = mux .Vars (r )
199
201
var requestedUser = params ["username" ]
0 commit comments