diff options
author | Wim <wim@42.be> | 2017-06-06 00:05:32 +0200 |
---|---|---|
committer | Wim <wim@42.be> | 2017-06-06 00:05:32 +0200 |
commit | ad3cb0386b72a7f9d46b4a2068ff947570fa67ff (patch) | |
tree | 6bd08153f66d1e46765177842e36e58edac7573a /bridge/api/api.go | |
parent | 3a183cb218c6812964a70d2e75884ad7071d9c0c (diff) | |
download | matterbridge-msglm-ad3cb0386b72a7f9d46b4a2068ff947570fa67ff.tar.gz matterbridge-msglm-ad3cb0386b72a7f9d46b4a2068ff947570fa67ff.tar.bz2 matterbridge-msglm-ad3cb0386b72a7f9d46b4a2068ff947570fa67ff.zip |
Add token authentication (api)
Diffstat (limited to 'bridge/api/api.go')
-rw-r--r-- | bridge/api/api.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/bridge/api/api.go b/bridge/api/api.go index d53fc3b4..48715c50 100644 --- a/bridge/api/api.go +++ b/bridge/api/api.go @@ -4,6 +4,7 @@ import ( "github.com/42wim/matterbridge/bridge/config" log "github.com/Sirupsen/logrus" "github.com/labstack/echo" + "github.com/labstack/echo/middleware" "github.com/zfjagann/golang-ring" "net/http" "sync" @@ -38,6 +39,11 @@ func New(cfg config.Protocol, account string, c chan config.Message) *Api { b.Config = &cfg b.Account = account b.Remote = c + if b.Config.Token != "" { + e.Use(middleware.KeyAuth(func(key string, c echo.Context) (bool, error) { + return key == b.Config.Token, nil + })) + } e.GET("/api/messages", b.handleMessages) e.POST("/api/message", b.handlePostMessage) go func() { |