aboutsummaryrefslogtreecommitdiff
path: root/keyserver
diff options
context:
space:
mode:
authorKegsay <kegan@matrix.org>2020-06-16 14:10:55 +0100
committerGitHub <noreply@github.com>2020-06-16 14:10:55 +0100
commit9c77022513f400db59409f5b55fc6223d38d6bb8 (patch)
tree52223755553ef4d7065747528e40c27a79a71dff /keyserver
parent57b7fa3db801c27190bfd143cfebe98e3d76a6ae (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.go9
-rw-r--r--keyserver/routing/routing.go18
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)