|
@@ -11,7 +11,6 @@ import (
|
|
|
msession "github.com/go-macaron/session"
|
|
msession "github.com/go-macaron/session"
|
|
|
"github.com/grafana/grafana/pkg/bus"
|
|
"github.com/grafana/grafana/pkg/bus"
|
|
|
m "github.com/grafana/grafana/pkg/models"
|
|
m "github.com/grafana/grafana/pkg/models"
|
|
|
- "github.com/grafana/grafana/pkg/services/auth"
|
|
|
|
|
"github.com/grafana/grafana/pkg/services/auth/authtoken"
|
|
"github.com/grafana/grafana/pkg/services/auth/authtoken"
|
|
|
"github.com/grafana/grafana/pkg/services/session"
|
|
"github.com/grafana/grafana/pkg/services/session"
|
|
|
"github.com/grafana/grafana/pkg/setting"
|
|
"github.com/grafana/grafana/pkg/setting"
|
|
@@ -157,8 +156,8 @@ func TestMiddlewareContext(t *testing.T) {
|
|
|
return nil
|
|
return nil
|
|
|
})
|
|
})
|
|
|
|
|
|
|
|
- sc.userAuthTokenService.lookupTokenProvider = func(unhashedToken string) (*auth.UserToken, error) {
|
|
|
|
|
- return &auth.UserToken{
|
|
|
|
|
|
|
+ sc.userAuthTokenService.lookupTokenProvider = func(unhashedToken string) (*m.UserToken, error) {
|
|
|
|
|
+ return &m.UserToken{
|
|
|
UserId: 12,
|
|
UserId: 12,
|
|
|
UnhashedToken: unhashedToken,
|
|
UnhashedToken: unhashedToken,
|
|
|
}, nil
|
|
}, nil
|
|
@@ -186,14 +185,14 @@ func TestMiddlewareContext(t *testing.T) {
|
|
|
return nil
|
|
return nil
|
|
|
})
|
|
})
|
|
|
|
|
|
|
|
- sc.userAuthTokenService.lookupTokenProvider = func(unhashedToken string) (*auth.UserToken, error) {
|
|
|
|
|
- return &auth.UserToken{
|
|
|
|
|
|
|
+ sc.userAuthTokenService.lookupTokenProvider = func(unhashedToken string) (*m.UserToken, error) {
|
|
|
|
|
+ return &m.UserToken{
|
|
|
UserId: 12,
|
|
UserId: 12,
|
|
|
UnhashedToken: "",
|
|
UnhashedToken: "",
|
|
|
}, nil
|
|
}, nil
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- sc.userAuthTokenService.tryRotateTokenProvider = func(userToken *auth.UserToken, clientIP, userAgent string) (bool, error) {
|
|
|
|
|
|
|
+ sc.userAuthTokenService.tryRotateTokenProvider = func(userToken *m.UserToken, clientIP, userAgent string) (bool, error) {
|
|
|
userToken.UnhashedToken = "rotated"
|
|
userToken.UnhashedToken = "rotated"
|
|
|
return true, nil
|
|
return true, nil
|
|
|
}
|
|
}
|
|
@@ -228,7 +227,7 @@ func TestMiddlewareContext(t *testing.T) {
|
|
|
middlewareScenario("Invalid/expired auth token in cookie", func(sc *scenarioContext) {
|
|
middlewareScenario("Invalid/expired auth token in cookie", func(sc *scenarioContext) {
|
|
|
sc.withTokenSessionCookie("token")
|
|
sc.withTokenSessionCookie("token")
|
|
|
|
|
|
|
|
- sc.userAuthTokenService.lookupTokenProvider = func(unhashedToken string) (*auth.UserToken, error) {
|
|
|
|
|
|
|
+ sc.userAuthTokenService.lookupTokenProvider = func(unhashedToken string) (*m.UserToken, error) {
|
|
|
return nil, authtoken.ErrAuthTokenNotFound
|
|
return nil, authtoken.ErrAuthTokenNotFound
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -680,47 +679,47 @@ type scenarioFunc func(c *scenarioContext)
|
|
|
type handlerFunc func(c *m.ReqContext)
|
|
type handlerFunc func(c *m.ReqContext)
|
|
|
|
|
|
|
|
type fakeUserAuthTokenService struct {
|
|
type fakeUserAuthTokenService struct {
|
|
|
- createTokenProvider func(userId int64, clientIP, userAgent string) (*auth.UserToken, error)
|
|
|
|
|
- tryRotateTokenProvider func(token *auth.UserToken, clientIP, userAgent string) (bool, error)
|
|
|
|
|
- lookupTokenProvider func(unhashedToken string) (*auth.UserToken, error)
|
|
|
|
|
- revokeTokenProvider func(token *auth.UserToken) error
|
|
|
|
|
|
|
+ createTokenProvider func(userId int64, clientIP, userAgent string) (*m.UserToken, error)
|
|
|
|
|
+ tryRotateTokenProvider func(token *m.UserToken, clientIP, userAgent string) (bool, error)
|
|
|
|
|
+ lookupTokenProvider func(unhashedToken string) (*m.UserToken, error)
|
|
|
|
|
+ revokeTokenProvider func(token *m.UserToken) error
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
func newFakeUserAuthTokenService() *fakeUserAuthTokenService {
|
|
func newFakeUserAuthTokenService() *fakeUserAuthTokenService {
|
|
|
return &fakeUserAuthTokenService{
|
|
return &fakeUserAuthTokenService{
|
|
|
- createTokenProvider: func(userId int64, clientIP, userAgent string) (*auth.UserToken, error) {
|
|
|
|
|
- return &auth.UserToken{
|
|
|
|
|
|
|
+ createTokenProvider: func(userId int64, clientIP, userAgent string) (*m.UserToken, error) {
|
|
|
|
|
+ return &m.UserToken{
|
|
|
UserId: 0,
|
|
UserId: 0,
|
|
|
UnhashedToken: "",
|
|
UnhashedToken: "",
|
|
|
}, nil
|
|
}, nil
|
|
|
},
|
|
},
|
|
|
- tryRotateTokenProvider: func(token *auth.UserToken, clientIP, userAgent string) (bool, error) {
|
|
|
|
|
|
|
+ tryRotateTokenProvider: func(token *m.UserToken, clientIP, userAgent string) (bool, error) {
|
|
|
return false, nil
|
|
return false, nil
|
|
|
},
|
|
},
|
|
|
- lookupTokenProvider: func(unhashedToken string) (*auth.UserToken, error) {
|
|
|
|
|
- return &auth.UserToken{
|
|
|
|
|
|
|
+ lookupTokenProvider: func(unhashedToken string) (*m.UserToken, error) {
|
|
|
|
|
+ return &m.UserToken{
|
|
|
UserId: 0,
|
|
UserId: 0,
|
|
|
UnhashedToken: "",
|
|
UnhashedToken: "",
|
|
|
}, nil
|
|
}, nil
|
|
|
},
|
|
},
|
|
|
- revokeTokenProvider: func(token *auth.UserToken) error {
|
|
|
|
|
|
|
+ revokeTokenProvider: func(token *m.UserToken) error {
|
|
|
return nil
|
|
return nil
|
|
|
},
|
|
},
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-func (s *fakeUserAuthTokenService) CreateToken(userId int64, clientIP, userAgent string) (*auth.UserToken, error) {
|
|
|
|
|
|
|
+func (s *fakeUserAuthTokenService) CreateToken(userId int64, clientIP, userAgent string) (*m.UserToken, error) {
|
|
|
return s.createTokenProvider(userId, clientIP, userAgent)
|
|
return s.createTokenProvider(userId, clientIP, userAgent)
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-func (s *fakeUserAuthTokenService) LookupToken(unhashedToken string) (*auth.UserToken, error) {
|
|
|
|
|
|
|
+func (s *fakeUserAuthTokenService) LookupToken(unhashedToken string) (*m.UserToken, error) {
|
|
|
return s.lookupTokenProvider(unhashedToken)
|
|
return s.lookupTokenProvider(unhashedToken)
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-func (s *fakeUserAuthTokenService) TryRotateToken(token *auth.UserToken, clientIP, userAgent string) (bool, error) {
|
|
|
|
|
|
|
+func (s *fakeUserAuthTokenService) TryRotateToken(token *m.UserToken, clientIP, userAgent string) (bool, error) {
|
|
|
return s.tryRotateTokenProvider(token, clientIP, userAgent)
|
|
return s.tryRotateTokenProvider(token, clientIP, userAgent)
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-func (s *fakeUserAuthTokenService) RevokeToken(token *auth.UserToken) error {
|
|
|
|
|
|
|
+func (s *fakeUserAuthTokenService) RevokeToken(token *m.UserToken) error {
|
|
|
return s.revokeTokenProvider(token)
|
|
return s.revokeTokenProvider(token)
|
|
|
}
|
|
}
|