diff options
author | Kegsay <kegan@matrix.org> | 2020-06-16 14:10:55 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-16 14:10:55 +0100 |
commit | 9c77022513f400db59409f5b55fc6223d38d6bb8 (patch) | |
tree | 52223755553ef4d7065747528e40c27a79a71dff /keyserver | |
parent | 57b7fa3db801c27190bfd143cfebe98e3d76a6ae (diff) |
Make userapi responsible for checking access tokens (#1133)
* Make userapi responsible for checking access tokens
There's still plenty of dependencies on account/device DBs, but this
is a start. This is a breaking change as it adds a required config
value `listen.user_api`.
* Cleanup
* Review comments and test fix
Diffstat (limited to 'keyserver')
-rw-r--r-- | keyserver/keyserver.go | 9 | ||||
-rw-r--r-- | keyserver/routing/routing.go | 18 |
2 files changed, 6 insertions, 21 deletions
diff --git a/keyserver/keyserver.go b/keyserver/keyserver.go index 1eb73054..bedc4dfb 100644 --- a/keyserver/keyserver.go +++ b/keyserver/keyserver.go @@ -16,17 +16,14 @@ package keyserver import ( "github.com/gorilla/mux" - "github.com/matrix-org/dendrite/clientapi/auth/storage/accounts" - "github.com/matrix-org/dendrite/clientapi/auth/storage/devices" "github.com/matrix-org/dendrite/internal/config" "github.com/matrix-org/dendrite/keyserver/routing" + userapi "github.com/matrix-org/dendrite/userapi/api" ) // AddPublicRoutes registers HTTP handlers for CS API calls func AddPublicRoutes( - router *mux.Router, cfg *config.Dendrite, - deviceDB devices.Database, - accountsDB accounts.Database, + router *mux.Router, cfg *config.Dendrite, userAPI userapi.UserInternalAPI, ) { - routing.Setup(router, cfg, accountsDB, deviceDB) + routing.Setup(router, cfg, userAPI) } diff --git a/keyserver/routing/routing.go b/keyserver/routing/routing.go index bce3c46b..c09031d8 100644 --- a/keyserver/routing/routing.go +++ b/keyserver/routing/routing.go @@ -18,12 +18,9 @@ import ( "net/http" "github.com/gorilla/mux" - "github.com/matrix-org/dendrite/clientapi/auth" - "github.com/matrix-org/dendrite/clientapi/auth/authtypes" - "github.com/matrix-org/dendrite/clientapi/auth/storage/accounts" - "github.com/matrix-org/dendrite/clientapi/auth/storage/devices" "github.com/matrix-org/dendrite/internal/config" "github.com/matrix-org/dendrite/internal/httputil" + userapi "github.com/matrix-org/dendrite/userapi/api" "github.com/matrix-org/util" ) @@ -36,20 +33,11 @@ const pathPrefixR0 = "/client/r0" // applied: // nolint: gocyclo func Setup( - publicAPIMux *mux.Router, cfg *config.Dendrite, - accountDB accounts.Database, - deviceDB devices.Database, + publicAPIMux *mux.Router, cfg *config.Dendrite, userAPI userapi.UserInternalAPI, ) { r0mux := publicAPIMux.PathPrefix(pathPrefixR0).Subrouter() - - authData := auth.Data{ - AccountDB: accountDB, - DeviceDB: deviceDB, - AppServices: cfg.Derived.ApplicationServices, - } - r0mux.Handle("/keys/query", - httputil.MakeAuthAPI("queryKeys", authData, func(req *http.Request, device *authtypes.Device) util.JSONResponse { + httputil.MakeAuthAPI("queryKeys", userAPI, func(req *http.Request, device *userapi.Device) util.JSONResponse { return QueryKeys(req) }), ).Methods(http.MethodPost, http.MethodOptions) |