2019-10-30 12:04:41 +02:00
![OAuth2 Proxy ](/docs/logos/OAuth2_Proxy_horizontal.svg )
2012-12-11 04:34:58 +03:00
2019-10-14 00:33:18 +02:00
[![Build Status ](https://secure.travis-ci.org/pusher/oauth2_proxy.svg?branch=master )](http://travis-ci.org/pusher/oauth2_proxy)
[![Go Report Card ](https://goreportcard.com/badge/github.com/pusher/oauth2_proxy )](https://goreportcard.com/report/github.com/pusher/oauth2_proxy)
[![GoDoc ](https://godoc.org/github.com/pusher/oauth2_proxy?status.svg )](https://godoc.org/github.com/pusher/oauth2_proxy)
[![MIT licensed ](https://img.shields.io/badge/license-MIT-blue.svg )](./LICENSE)
2016-11-18 19:31:22 +02:00
A reverse proxy and static file server that provides authentication using Providers (Google, GitHub, and others)
2015-05-21 15:54:21 +02:00
to validate accounts by email, domain or group.
2012-12-11 04:34:58 +03:00
2019-01-07 18:43:27 +02:00
**Note:** This repository was forked from [bitly/OAuth2_Proxy ](https://github.com/bitly/oauth2_proxy ) on 27/11/2018.
2018-11-27 13:23:37 +02:00
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 ](CHANGELOG.md ).
2012-12-26 21:18:56 +03:00
2015-06-08 03:51:47 +02:00
![Sign In Page ](https://cloud.githubusercontent.com/assets/45028/4970624/7feb7dd8-6886-11e4-93e0-c9904af44ea8.png )
2014-11-10 05:06:40 +02:00
2012-12-26 21:19:03 +03:00
## Installation
2018-12-20 16:28:13 +02:00
1. Choose how to deploy:
2020-02-03 17:39:14 +02:00
a. Download [Prebuilt Binary ](https://github.com/pusher/oauth2_proxy/releases ) (current release is `v5.0.0` )
2018-12-20 16:28:13 +02:00
b. Build with `$ go get github.com/pusher/oauth2_proxy` which will put the binary in `$GOROOT/bin`
2019-02-08 13:57:17 +02:00
c. Using the prebuilt docker image [quay.io/pusher/oauth2_proxy ](https://quay.io/pusher/oauth2_proxy ) (AMD64, ARMv6 and ARM64 tags available)
2018-12-20 16:28:13 +02:00
2019-01-14 12:07:22 +02:00
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` .
2018-11-27 13:23:37 +02:00
2017-11-20 21:35:59 +02:00
```
sha256sum -c sha256sum.txt 2>& 1 | grep OK
2019-08-16 16:06:53 +02:00
oauth2_proxy-4.0.0.linux-amd64: OK
2017-11-20 21:35:59 +02:00
```
2018-11-27 13:23:37 +02:00
2019-05-10 13:25:05 +02:00
2. [Select a Provider and Register an OAuth Application with a Provider ](https://pusher.github.io/oauth2_proxy/auth-configuration )
3. [Configure OAuth2 Proxy using config file, command line options, or environment variables ](https://pusher.github.io/oauth2_proxy/configuration )
4. [Configure SSL or Deploy behind a SSL endpoint ](https://pusher.github.io/oauth2_proxy/tls-configuration ) (example provided for Nginx)
2019-03-26 18:04:59 +02:00
2020-01-29 14:45:19 +02:00
## Security
If you are running a version older than v5.0.0 we **strongly recommend you please update** to a current version. RE: [open redirect vulnverability ](https://github.com/pusher/oauth2_proxy/security/advisories/GHSA-qqxw-m5fj-f7gv )
2019-05-10 13:25:05 +02:00
## Docs
2019-03-26 18:04:59 +02:00
2019-05-10 13:25:05 +02:00
Read the docs on our [Docs site ](https://pusher.github.io/oauth2_proxy ).
2019-03-26 18:04:59 +02:00
2019-05-10 13:25:05 +02:00
![OAuth2 Proxy Architecture ](https://cloud.githubusercontent.com/assets/45028/8027702/bd040b7a-0d6a-11e5-85b9-f8d953d04f39.png )
2019-03-26 18:04:59 +02:00
2019-08-06 13:16:03 +02:00
## 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 ](http://gophers.slack.com/ ).
2018-12-20 16:14:04 +02:00
## Contributing
2019-12-16 18:08:44 +02:00
Please see our [Contributing ](CONTRIBUTING.md ) guidelines. For releasing see our [release creation guide ](RELEASE.md ).