Commit Graph

166 Commits (a7e867a699a77f0b9d564defd81094fd410e4404)

Author SHA1 Message Date
James Elliott a7e867a699
feat(configuration): replace viper with koanf (#2053)
This commit replaces github.com/spf13/viper with github.com/knadh/koanf. Koanf is very similar library to viper, with less dependencies and several quality of life differences. This also allows most config options to be defined by ENV. Lastly it also enables the use of split configuration files which can be configured by setting the --config flag multiple times.

Co-authored-by: Amir Zarrinkafsh <nightah@me.com>
2021-08-03 19:55:21 +10:00
renovate[bot] 9c614c76b1
build(deps): update module github.com/golang-jwt/jwt to v3.2.2 (#2218)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-31 10:13:25 +10:00
renovate[bot] 0be9586224
build(deps): update module github.com/jackc/pgx/v4 to v4.13.0 (#2202)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-25 06:05:07 +10:00
renovate[bot] ea9331fecd
build(deps): update module github.com/fasthttp/router to v1.4.1 (#2196)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-23 10:06:45 +10:00
renovate[bot] c251abb0aa
build(deps): update module github.com/fasthttp/session/v2 to v2.4.1 (#2197)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-23 07:43:55 +10:00
renovate[bot] e98cbacb2d
build(deps): update module github.com/google/uuid to v1.3.0 (#2174)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-13 10:56:33 +10:00
renovate[bot] 242a00b980
build(deps): update module github.com/jackc/pgx/v4 to v4.12.0 (#2169)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-11 02:48:46 +10:00
James Elliott 143db66445
feat(oidc): userinfo endpoint (#2146)
This is a required endpoint for OIDC and is one we missed in our initial implementation. Also adds some rudamentary documentaiton about the implemented endpoints.
2021-07-10 14:56:33 +10:00
renovate[bot] 907680c035
build(deps): update module github.com/spf13/cobra to v1.2.1 (#2143)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-03 07:04:53 +10:00
renovate[bot] f759b27bb0
build(deps): update module github.com/spf13/cobra to v1.2.0 (#2138)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-02 08:08:03 +10:00
renovate[bot] 87c3985c75
build(deps): update module github.com/valyala/fasthttp to v1.28.0 (#2127)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-30 21:12:03 +10:00
Amir Zarrinkafsh 4cab3a4a4e
refactor: drop cgo requirement for sqlite (#2101)
* refactor: drop cgo requirement for sqlite

Replace github.com/mattn/go-sqlite3 with modernc.org/sqlite which drops our CGO requirement.

* refactor: newline for consistency with dockerfiles
2021-06-22 10:45:33 +10:00
renovate[bot] f1a4c46196
build(deps): update module github.com/fasthttp/session/v2 to v2.4.0 (#2108)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-22 07:07:26 +10:00
renovate[bot] d5fcfeda61
build(deps): update module github.com/fasthttp/router to v1.4.0 (#2107)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-21 22:14:38 +10:00
renovate[bot] 81069101a2
build(deps): update module github.com/valyala/fasthttp to v1.27.0 (#2106)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-21 19:53:24 +10:00
James Elliott 438555886e
build(deps): replace jwt-go (#2092)
This replaces github.com/dgrijalva/jwt-go and github.com/form3tech-oss/jwt-go with github.com/golang-jwt/jwt which will be the maintained package going forward.

Co-authored-by: Amir Zarrinkafsh <nightah@me.com>
2021-06-18 10:39:19 +10:00
renovate[bot] df2a442896
build(deps): update module github.com/spf13/viper to v1.8.0 (#2087)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-17 09:43:21 +10:00
renovate[bot] 6de4f9ea61
build(deps): update module github.com/golang/mock to v1.6.0 (#2079)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-12 18:21:21 +10:00
renovate[bot] c2a9afe9af
build(deps): update module gopkg.in/square/go-jose.v2 to v2.6.0 (#2065)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-06 09:06:19 +10:00
renovate[bot] f798ffffdf
build(deps): update module github.com/fasthttp/router to v1.3.14 (#2052)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-02 06:30:09 +10:00
renovate[bot] 2454c2145d
build(deps): update module github.com/valyala/fasthttp to v1.26.0 (#2051) 2021-06-01 20:21:05 +10:00
renovate[bot] b27603c6d7
build(deps): update module github.com/ory/fosite to v0.40.2 (#2024)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-05-31 11:31:02 +10:00
James Elliott 3735f256c0
build(deps): replace github.com/dgrijalva/jwt-go (#2036)
Replaces github.com/dgrijalva/jwt-go with github.com/form3tech-oss/jwt-go.

Co-authored-by: Amir Zarrinkafsh <nightah@me.com>
2021-05-31 11:15:05 +10:00
James Elliott bbecf632af
fix(server): revert github.com/valyala/fasthttp to v1.24.0 (#2021) 2021-05-24 09:01:19 +10:00
renovate[bot] a56cffa129
build(deps): update module github.com/fasthttp/router to v1.3.13 (#2013)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-05-21 10:21:32 +10:00
renovate[bot] fa8c7173fb
build(deps): update module github.com/valyala/fasthttp to v1.25.0 (#2012)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-05-21 09:01:09 +10:00
renovate[bot] 1e69bc2835
build(deps): update module github.com/otiai10/copy to v1.6.0 (#1989)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: James Elliott <james-d-elliott@users.noreply.github.com>
2021-05-10 01:59:50 +10:00
James Elliott 9931087246
refactor: forcibly use latest go-sqlite3 (#1982)
This is necessary to force the latest version of go-sqlite3 due to an issue with the release lifecycle upstream and due to deep dependencies. Basically go-sqlite3 v2 should never have been released and v1 is now the supported version. This was introduced due to including fosite. The dependency chain looks like this: github.com/ory/fosite@v0.39.0 => github.com/ory/x@v0.0.162 => github.com/gobuffalo/pop/v5@v5.0.11 => github.com/gobuffalo/nulls@v0.2.0.
2021-05-06 15:52:27 +10:00
James Elliott ddea31193b
feature(oidc): add support for OpenID Connect
OpenID connect has become a standard when it comes to authentication and
in order to fix a security concern around forwarding authentication and authorization information
it has been decided to add support for it.

This feature is in beta version and only enabled when there is a configuration for it.
Before enabling it in production, please consider that it's in beta with potential bugs and that there
are several production critical features still missing such as all OIDC related data is stored in
configuration or memory. This means you are potentially going to experience issues with HA
deployments, or when restarting a single instance specifically related to OIDC.

We are still working on adding the remaining set of features before making it GA as soon as possible.

Related to #189

Co-authored-by: Clement Michaud <clement.michaud34@gmail.com>
2021-05-05 00:15:36 +02:00
renovate[bot] ec17389a54
build(deps): update module github.com/fasthttp/session/v2 to v2.3.2 (#1962)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: James Elliott <james-d-elliott@users.noreply.github.com>
2021-04-30 11:57:33 +10:00
renovate[bot] 908146d6f0
build(deps): update module github.com/fasthttp/router to v1.3.12 (#1961)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: James Elliott <james-d-elliott@users.noreply.github.com>
2021-04-30 09:54:49 +10:00
renovate[bot] 7831212d02
build(deps): update module github.com/valyala/fasthttp to v1.24.0 (#1957)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: James Elliott <james-d-elliott@users.noreply.github.com>
2021-04-29 08:57:33 +10:00
renovate[bot] dafd61f08d
build(deps): update module github.com/simia-tech/crypt to v0.5.0 (#1938)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-04-21 22:25:38 +02:00
renovate[bot] fed55be3e1
build(deps): update module github.com/mattn/go-sqlite3 to v1.14.7 (#1914)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-04-14 21:49:42 +02:00
renovate[bot] f087de68f8
build(deps): update module github.com/otiai10/copy to v1.5.1 (#1894)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-04-08 09:03:53 +10:00
renovate[bot] 09f5aaec25
build(deps): update module github.com/go-ldap/ldap/v3 to v3.3.0 (#1890)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-04-06 12:19:20 +10:00
renovate[bot] a5cdf54912
build(deps): update module github.com/fasthttp/session/v2 to v2.3.1 (#1888)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-04-05 20:22:06 +10:00
renovate[bot] f646aa5242
build(deps): update module github.com/fasthttp/router to v1.3.11 (#1887)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-04-05 06:38:09 +10:00
renovate[bot] 64258f93af
build(deps): update module golang.org/x/text to v0.3.6 (#1882)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-04-02 08:32:57 +11:00
renovate[bot] ef14e3842c
build(deps): update module github.com/go-sql-driver/mysql to v1.6.0 (#1880)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-04-01 20:53:47 +11:00
renovate[bot] 122c9126db
build(deps): update module github.com/workiva/go-datastructures to v1.0.53 (#1868)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-03-30 11:15:30 +11:00
renovate[bot] 0c893a2880
build(deps): update module github.com/valyala/fasthttp to v1.23.0 (#1867)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-03-30 10:36:31 +11:00
renovate[bot] 322592f679
build(deps): update module github.com/fasthttp/router to v1.3.10 (#1856)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-03-27 09:13:15 +11:00
renovate[bot] 2b75e98402
build(deps): update module github.com/jackc/pgx/v4 to v4.11.0 (#1850)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-03-26 09:04:32 +11:00
James Elliott e3e8df26f2
refactor(session): use github.com/fasthttp/session/v2 instead of github.com/authelia/session/v2 (#1809)
Reverts to the upstream library instead of our maintenance fork.
2021-03-13 16:06:19 +11:00
renovate[bot] 5001749b1b
build(deps): update module github.com/sirupsen/logrus to v1.8.1 (#1792)
* build(deps): update module github.com/sirupsen/logrus to v1.8.1

* fix: go mod tidy (go.sum)

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: James Elliott <james-d-elliott@users.noreply.github.com>
2021-03-10 11:33:14 +11:00
James Elliott e041143f87
feat(session): add redis sentinel provider (#1768)
* feat(session): add redis sentinel provider

* refactor(session): use int for ports as per go standards

* refactor(configuration): adjust tests and validation

* refactor(configuration): add err format consts

* refactor(configuration): explicitly map redis structs

* refactor(session): merge redis/redis sentinel providers

* refactor(session): add additional checks to redis providers

* feat(session): add redis cluster provider

* fix: update config for new values

* fix: provide nil certpool to affected tests/mocks

* test: add additional tests to cover uncovered code

* docs: expand explanation of host and nodes relation for redis

* ci: add redis-sentinel to suite highavailability, add redis-sentinel quorum

* fix(session): sentinel password

* test: use redis alpine library image for redis sentinel, use expose instead of ports, use redis ip, adjust redis ip range, adjust redis config

* test: make entrypoint.sh executable, fix entrypoint.sh if/elif

* test: add redis failover tests

* test: defer docker start, adjust sleep, attempt logout before login, attempt visit before login and tune timeouts, add additional logging

* test: add sentinel integration test

* test: add secondary node failure to tests, fix password usage, bump test timeout, add sleep

* feat: use sentinel failover cluster

* fix: renamed addrs to sentineladdrs upstream

* test(session): sentinel failover

* test: add redis standard back into testing

* test: move redis standalone test to traefik2

* fix/docs: apply suggestions from code review
2021-03-10 10:03:05 +11:00
renovate[bot] 5cf98de225
build(deps): update module github.com/fasthttp/router to v1.3.9 (#1775)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-03-02 22:03:47 +11:00
renovate[bot] e2f08f568a
build(deps): update module github.com/valyala/fasthttp to v1.22.0 (#1772)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-03-02 11:27:03 +11:00
renovate[bot] abe8e438a2
build(deps): update module github.com/fasthttp/router to v1.3.8 (#1771)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-03-02 08:58:28 +11:00