1
0
mirror of https://github.com/oauth2-proxy/oauth2-proxy.git synced 2024-11-28 09:08:44 +02:00
A reverse proxy that provides authentication with Google, Azure, OpenID Connect and many more identity providers.
Go to file
Alexandru Ciobanu 037cb041d3
Watch the htpasswd file for changes and update the htpasswdMap (#1701)
* dynamically update the htpasswdMap based on the changes made to the htpasswd file

* added tests to validate that htpasswdMap is updated after the htpasswd file is changed

* refactored `htpasswd` and `watcher` to lower cognitive complexity

* returned errors and refactored tests

* added `CHANGELOG.md` entry for #1701 and fixed the codeclimate issue

* Apply suggestions from code review

Co-authored-by: Joel Speed <Joel.speed@hotmail.co.uk>

* Fix lint issue from code suggestion

* Wrap htpasswd load and watch errors with context

* add the htpasswd wrapped error context to the test

Co-authored-by: Joel Speed <Joel.speed@hotmail.co.uk>
2022-09-01 19:46:00 +01:00
.github Ensure docs release action has correct env 2022-02-20 14:07:56 +00:00
contrib k8s: fixed invalid cookie_domain 2022-08-28 17:54:32 +07:00
docs Inconsistent code-challenge-method CLI flag and config file naming (#1766) 2022-09-01 10:58:43 +01:00
pkg Watch the htpasswd file for changes and update the htpasswdMap (#1701) 2022-09-01 19:46:00 +01:00
providers Extract Keycloak roles while creating a session from token (#1720) 2022-08-08 23:28:46 +01:00
testdata Rename test directory to testdata 2020-10-06 21:37:25 +09:00
tools Generate reference page in configuration 2021-01-18 09:57:44 +00:00
.dockerignore Parameterise runtime image (#1478) 2022-04-14 14:10:59 +01:00
.gitignore PKCE Support (#1541) 2022-03-13 10:08:33 +00:00
.golangci.yml Skip gosec linting on tests 2020-08-09 07:55:41 -07:00
CHANGELOG.md Watch the htpasswd file for changes and update the htpasswdMap (#1701) 2022-09-01 19:46:00 +01:00
CONTRIBUTING.md Drop configure script in favour of native Makefile env and checks (#515) 2020-05-09 16:07:46 +01:00
dist.sh Update dist.sh 2022-02-17 22:59:11 +01:00
Dockerfile Fix vulnerabilities on crypto, net and sys packages and change go ver… (#1774) 2022-08-31 21:37:07 +01:00
go.mod Fix vulnerabilities on crypto, net and sys packages and change go ver… (#1774) 2022-08-31 21:37:07 +01:00
go.sum Fix vulnerabilities on crypto, net and sys packages and change go ver… (#1774) 2022-08-31 21:37:07 +01:00
LICENSE add MIT license for google_auth_proxy 2014-06-09 16:25:26 -04:00
main_suite_test.go Ensure errors in tests are logged to the GinkgoWriter 2021-02-10 19:50:04 +00:00
main_test.go Implement configurable timeout for upstream connections 2022-05-18 11:41:17 +01:00
main.go main: fix typo "convert-config-to-alpha" 2022-02-24 08:59:45 +01:00
MAINTAINERS Add NickMeves to MAINTAINERS 2021-01-10 10:56:01 -08:00
Makefile Build ARMv8 Docker Images (#1594) 2022-04-14 15:52:43 +01:00
nsswitch.conf Add nsswitch.conf to Docker image (#400) 2020-02-23 18:16:18 +00:00
oauthproxy_test.go added tests for basic auth alert message feature 2022-06-30 18:11:43 +03:00
oauthproxy.go Watch the htpasswd file for changes and update the htpasswdMap (#1701) 2022-09-01 19:46:00 +01:00
README.md Update CHANGELOG for v7.3.0 release 2022-05-29 15:36:50 +01:00
RELEASE.md Migrate to oauth2-proxy/oauth2-proxy 2020-03-29 15:40:10 +01:00
SECURITY.md Add Security Policy 2021-01-16 19:47:47 +00:00
validator_test.go Add the allowed_email_domains and the allowed_groups on the auth_request endpoint + support standard wildcard char for validation with sub-domain and email-domain. 2022-02-14 18:03:20 +01:00
validator.go Watch the htpasswd file for changes and update the htpasswdMap (#1701) 2022-09-01 19:46:00 +01:00
version.go Introduce Makefile 2019-01-04 10:58:30 +00:00

OAuth2 Proxy

Build Status Go Report Card GoDoc MIT licensed Maintainability Test Coverage

A reverse proxy and static file server that provides authentication using Providers (Google, GitHub, and others) to validate accounts by email, domain or group.

Note: This repository was forked from bitly/OAuth2_Proxy on 27/11/2018. Versions v3.0.0 and up are from this fork and will have diverged from any changes in the original fork. A list of changes can be seen in the CHANGELOG.

Note: This project was formerly hosted as pusher/oauth2_proxy but has been renamed as of 29/03/2020 to oauth2-proxy/oauth2-proxy. Going forward, all images shall be available at quay.io/oauth2-proxy/oauth2-proxy and binaries will be named oauth2-proxy.

Sign In Page

Installation

  1. Choose how to deploy:

    a. Download Prebuilt Binary (current release is v7.3.0)

    b. Build with $ go get github.com/oauth2-proxy/oauth2-proxy/v7 which will put the binary in $GOROOT/bin

    c. Using the prebuilt docker image quay.io/oauth2-proxy/oauth2-proxy (AMD64, PPC64LE, ARMv6, ARMv8 and ARM64 available)

    Prebuilt binaries can be validated by extracting the file and verifying it against the sha256sum.txt checksum file provided for each release starting with version v3.0.0.

    sha256sum -c sha256sum.txt 2>&1 | grep OK
    oauth2-proxy-x.y.z.linux-amd64: OK
    
  2. Select a Provider and Register an OAuth Application with a Provider

  3. Configure OAuth2 Proxy using config file, command line options, or environment variables

  4. Configure SSL or Deploy behind a SSL endpoint (example provided for Nginx)

Security

If you are running a version older than v6.0.0 we strongly recommend you please update to a current version. See open redirect vulnerability for details.

Docs

Read the docs on our Docs site.

OAuth2 Proxy Architecture

Getting Involved

If you would like to reach out to the maintainers, come talk to us in the #oauth2-proxy channel in the Gophers slack.

Contributing

Please see our Contributing guidelines. For releasing see our release creation guide.