chronograf/server
Jared Scheib 9df1630cf8 Add new auth duration CLI option; add client heartbeat; fix logout (#1119)
* User can now set oauth cookie session duration via the CLI to any duration or to expire on browser close

* Refactor GET 'me' into heartbeat at constant interval

* Add ping route to all routes

* Add /chronograf/v1/ping endpoint for server status

* Refactor cookie generation to use an interface

* WIP adding refreshable tokens

* Add reminder to review index.js Login error handling

* Refactor Authenticator interface to accommodate cookie duration and logout delay

* Update make run-dev to be more TICKStack compliant

* Remove heartbeat/logout duration from authentication

* WIP Refactor tests to accommodate cookie and auth refactor

* Update oauth2 tests to newly refactored design

* Update oauth provider tests

* Remove unused oauth2/consts.go

* Move authentication middleware to server package

* Fix authentication comment

* Update authenication documentation to mention AUTH_DURATION

* Update /chronograf/v1/ping to simply return 204

* Fix Makefile run-dev target

* Remove spurious ping route

* Update auth docs to clarify authentication duration

* Revert "Refactor GET 'me' into heartbeat at constant interval"

This reverts commit 298a8c47e1.

Conflicts:
ui/src/index.js

* Add auth test for JWT signing method

* Add comments for why coverage isn't written for some areas of jwt code

* Update auth docs to explicitly mention how to require re-auth for all users on server restart

* Add Duration to Validation interface for Tokens

* Make auth duration of zero yield a everlasting token

* Revert "Revert "Refactor GET 'me' into heartbeat at constant interval""

This reverts commit b4773c15af.

* Rename http status constants and add FORBIDDEN

* Heartbeat only when logged in, notify user if heartbeat fails

* Update changelog

* Fix minor word semantics

* Update oauth2 tests to be in the oauth2_test package

* Add check at compile time that JWT implements Tokenizer

* Rename CookieMux to AuthMux for consistency with earlier refactor

* Fix logout middleware

* Fix logout button not showing due to obsolete data shape expectations

* Update changelog

* Fix proptypes for logout button data shape in SideNav
2017-04-06 11:40:57 -07:00
..
assets.go Move URLPrefixer setup to mux, add default 2017-01-27 19:14:21 -05:00
auth.go Add new auth duration CLI option; add client heartbeat; fix logout (#1119) 2017-04-06 11:40:57 -07:00
auth_test.go Add new auth duration CLI option; add client heartbeat; fix logout (#1119) 2017-04-06 11:40:57 -07:00
builders.go Allow InfluxDB and Kapacitor configuration via ENV vars or CLI options (#1129) 2017-03-30 09:48:04 -07:00
builders_test.go Bypass URLPrefixer if http.Flusher is unavailable 2017-04-04 10:33:14 -04:00
dashboards.go Fix go dependency breaking master build 2017-03-24 13:34:56 -07:00
dashboards_test.go Create a new dashboard cell; Fix remaining bugs with Overlay (#1056) 2017-03-23 17:50:21 -07:00
databases.go Admin Databases Page no longer breaks if a db is missing an rp (#1179) 2017-04-04 14:42:24 -07:00
databases_test.go Update RP JSON default to isDefault 2017-03-24 09:58:57 -07:00
hsts.go Add HSTS handler to add headers for upcoming TLS support 2017-02-12 18:21:49 -06:00
influx.go Enhance server logging for connection errors 2017-02-24 00:34:50 -06:00
kapacitors.go Update comments for go vet 2017-02-21 21:35:24 -06:00
layout.go Remove explorations from backend server 2017-02-01 15:09:02 -06:00
layout_test.go Refactor to remove autogenerated code. 2016-10-26 22:10:52 -05:00
logger.go Fix mux paths to be hardcoded; clarify server start; fix golint 2016-10-28 11:27:06 -05:00
logout.go Add unified OAuth2 logout route redirecting to provider logout 2017-02-15 16:29:13 -06:00
mappings.go Add server error logging 2016-11-19 11:41:06 -06:00
me.go Update user/role responses to return empty arrays 2017-03-10 13:24:48 -06:00
me_test.go Update user/role responses to return empty arrays 2017-03-10 13:24:48 -06:00
mountable_router.go Implement a MountableRouter 2017-04-03 17:06:21 -04:00
mountable_router_test.go Implement a MountableRouter 2017-04-03 17:06:21 -04:00
mux.go Add new auth duration CLI option; add client heartbeat; fix logout (#1119) 2017-04-06 11:40:57 -07:00
permissions.go Update user/role responses to return empty arrays 2017-03-10 13:24:48 -06:00
permissions_test.go Update user/role responses to return empty arrays 2017-03-10 13:24:48 -06:00
proxy.go Fix kapacitor base64 auth as header was built incorrectly. 2017-03-30 15:32:02 -05:00
redoc.go Miscellaneous lint cleanup 2016-12-20 12:59:56 -08:00
roles.go Update roles to check if role already exists 2017-03-10 17:24:52 -06:00
roles_test.go Update roles to check if role already exists 2017-03-10 17:24:52 -06:00
routes.go Merge branch 'master' into feature/#54-tr-enterprise-client 2017-02-23 23:26:09 -06:00
routes_test.go Add new auth duration CLI option; add client heartbeat; fix logout (#1119) 2017-04-06 11:40:57 -07:00
server.go Add new auth duration CLI option; add client heartbeat; fix logout (#1119) 2017-04-06 11:40:57 -07:00
server_test.go Bypass URLPrefixer if http.Flusher is unavailable 2017-04-04 10:33:14 -04:00
service.go Add retention policies to the database response 2017-03-23 13:53:28 -07:00
sources.go Redirect to default source when deleting sources (#1074) 2017-03-28 08:53:11 -07:00
sources_test.go Fix sources test to include databases link 2017-03-23 14:06:52 -07:00
swagger.go Miscellaneous lint cleanup 2016-12-20 12:59:56 -08:00
swagger.json Admin Databases Page no longer breaks if a db is missing an rp (#1179) 2017-04-04 14:42:24 -07:00
url_prefixer.go Bypass URLPrefixer if http.Flusher is unavailable 2017-04-04 10:33:14 -04:00
url_prefixer_test.go Bypass URLPrefixer if http.Flusher is unavailable 2017-04-04 10:33:14 -04:00
users.go Update user's roles validation 2017-03-10 18:06:06 -06:00
users_test.go Update user/role responses to return empty arrays 2017-03-10 13:24:48 -06:00
version.go Update to fix go linter issues 2017-03-06 10:11:52 -06:00