Commit Graph

27 Commits (3af13aa490fe49a607ccf04cf4cd7a22c007f566)

Author SHA1 Message Date
Tim Raymond 3af13aa490 Add organization restriction on Heroku provider
This allows operators to permit access to Chronograf only to users belonging
to a set of specific Heroku organizations. This is controlled using the
HEROKU_ORGS env or the --heroku-organizations switch.
2017-02-21 13:09:42 -05:00
Tim Raymond d17507a8cd Rename JWTMux to CookieMux
JWTMux was a disingenuous name because while JWTs are a very good choice
for a cookie encoding, they were not strictly required for use with this
mux. To better indicate the responsibilities of this mux, it's been
renamed "CookieMux," since its responsibilities end with persisting the
oauth2.Authenticator's encoded state in the browser. It is up to the
oauth2.Authenticator to choose the encoding.
2017-02-17 12:57:08 -05:00
Tim Raymond 0ebe675f6e Configure Mux to use Heroku OAuth2 provider
If a --token-secret, --heroku-client-id, and --heroku-secret are
provided to Chronograf, it will add Heroku as an OAuth2 provider. These
tokens can be obtained (as of this writing) by visiting your "manage
account" page, navigating to "Applications," and then clicking "Register
New API Client" under the "API Clients" section.
2017-02-16 12:56:59 -05:00
Chris Goller 2017944b68 Add unified OAuth2 logout route redirecting to provider logout
Signed-off-by: Tim Raymond <tim@timraymond.com>
2017-02-15 16:29:13 -06:00
Chris Goller 7e28642e8c Add routes for oauth providers 2017-02-15 14:07:33 -06:00
Chris Goller 7b4a649130 Add --public-url CLI option to support google oauth redirect uri 2017-02-14 23:34:15 -06:00
Chris Goller b9b37f3b90 Add google oauth provider. Need redirect_uri 2017-02-14 23:11:11 -06:00
Chris Goller 3eb39d85a8 Remove unneeded authenticator from github 2017-02-14 23:09:34 -06:00
Tim Raymond d07c7ca1d6 Reorganize OAuth2 Logic
Created an oauth2 package which encapsulates all oauth2 providers,
utility functions, types, and interfaces. Previously some methods of the
Github provider were used as http.HandlerFuncs. These have now been
pulled into a concrete type called a JWTMux to implement other Oauth2
providers.

JWTMux has all of the functionality required to take a token from any
provider and store it as a JWT in a browser, and that is the extent of
its responsibilities. It implements the oauth2.Mux interface which would
potentially allow other strategies of oauth2 credential storage.
2017-02-14 16:18:41 -05:00
Chris Goller f1e7ae30c3 WIP 2017-02-13 18:02:43 -06:00
Chris Goller 1d9bb70414 Add disable and enable to kapacitor alerts 2017-02-10 13:48:42 -06:00
Chris Goller 0b8c334c9d Add gzip compression to all of our server respones 2017-02-09 14:35:38 -06:00
Chris Goller 1522dc6e4e Remove explorations from backend server 2017-02-01 15:09:02 -06:00
Tim Raymond 594c1fc587 Merge branch 'master' into feature/tr-host-under-path
Conflicts:
  - CHANGELOG.md
2017-01-27 19:30:43 -05:00
Tim Raymond 31621b460d Make URLPrefixer use the chronograf.Logger
We have a unified structured logging package in Chronograf, and this
should use it.
2017-01-27 19:24:51 -05:00
Tim Raymond e3186479cd Move URLPrefixer setup to mux, add default
URLPrefixer had nothing to do with assets, so it actually belongs up in
the mux, where we're assembling handlers together across the
application.

Also, the setup was painful to look at, and others will probably use the
same `Attrs`, so a `NewDefaultURLPrefixer` was added to spawn a prefixer
with only a prefix and a next handler.
2017-01-27 19:14:21 -05:00
Jade McGough 154f6f312c fix dashboards routes 2017-01-27 04:59:13 -08:00
Chris Goller bc3a0e1b3d Add Github organization restriction to authentication 2017-01-06 11:39:20 -06:00
Mark Rushakoff 84d28e3aad Miscellaneous lint cleanup 2016-12-20 12:59:56 -08:00
Jade McGough 9a2e49b4d2 add routes and stubs for dashboard API endpoints 2016-12-07 15:18:04 -08:00
Will Piers d3da8998e8 Add users endpoints/storage plus me endpoint 2016-11-21 14:19:57 -07:00
Chris Goller b63047a402 Add server error logging 2016-11-19 11:41:06 -06:00
Chris Goller 0ab6b8073f Update tasks to be called rules 2016-11-04 01:54:39 -05:00
Chris Goller 1ff551b03d Add basic kapacitor task routes. Still need schema and storage 2016-11-03 19:52:13 -05:00
Chris Goller b7437da989 Add kapacitor tickscript template generator for threshold, relative, deadman 2016-11-03 19:52:00 -05:00
Chris Goller d6a067427b Fix mux paths to be hardcoded; clarify server start; fix golint 2016-10-28 11:27:06 -05:00
Chris Goller d1359c09b3 Refactor to remove autogenerated code. 2016-10-26 22:10:52 -05:00