Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for REMOTE_USER header #13

Closed
timhammond opened this issue Nov 14, 2018 · 3 comments
Closed

Add support for REMOTE_USER header #13

timhammond opened this issue Nov 14, 2018 · 3 comments
Labels
enhancement New feature or request

Comments

@timhammond
Copy link

Would it be possible to add an option to set a HTTP Header (REMOTE_USER as the default) with the value of the authenticated user?

@thomseddon
Copy link
Owner

This seems like a good idea, have you seen a similar header elsewhere? I'm just wondering what the best name for the header would be :)

@thomseddon thomseddon added the enhancement New feature or request label Nov 19, 2018
@timhammond
Copy link
Author

timhammond commented Nov 19, 2018

https://guacamole.apache.org/doc/gug/header-auth.html
https://answers.splunk.com/answers/46803/sso-works-with-anything-but-remote-user.html

It's kind of an older SSO thing, mostly with Apache. Ideally the header would be something configurable. REMOTE_USER is the default header that Apache used. The main thing here is to pass along the username in a header so the application knows who is logged in. Many applications are configurable. But the default probably should be REMOTE_USER.

@thomseddon
Copy link
Owner

I've just pushed a fix for this, you can find the user in the X-Forwarded-User header :)

mkska referenced this issue in mkska/traefik-forward-auth Aug 22, 2023
* Validate redirect domain

This change introduces a validation step prior to redirect as
discussed in thomseddon#77

* Fix tests

* Try harder to make CodeQL happy

* Fix tests

* Try just a little bit harder to appease CodeQL

Co-authored-by: Thom Seddon <thom@seddonmedia.co.uk>
mkska referenced this issue in mkska/traefik-forward-auth Aug 22, 2023
* Allow custom key to be used for whitelist and X-Forwarded-User instead of the hardcoded email (#1)

* init commit

* add github workflow

* fix naming

* fix missing param

* upgrade Go version to 1.14

* tmp remove of tests
update error message

* add more specific error message

* put back tests

* rename User ID Key to User ID Path

* upgrade dependencies

* Revert "upgrade dependencies"

This reverts commit 40bd110

It prevents GO 1.12 from working 1.13 + 1.14 still work however.

* Revert "upgrade dependencies"

This reverts commit 40bd110

* mention the user that is not authorized

* mention the user that is not authorized

* tidy error message

* tidy error message

* remove actions

* rename UserIDPath to UserID
remove UserID type
rename comma delimited to comma separated

* rename GetUsedID function to GetUser

* revert docker golang version to 1.13

* change whitelist comment to indicate userIDs instead of explicitly emails

* revert go version

* fix conflicts

* add tests

* push to docker for testing

Co-authored-by: Maximilian Mitchell <max@max.me.uk>
Co-authored-by: Max Mitchell <max.mitchell@ly.st>
Co-authored-by: Maximilian Mitchell <max@maxis.me>

* Domain matching should be case insensitive (#2)

* Domain matching should be case insensitive

* s/ValidateEmail/ValidateUser/

Co-authored-by: Mal Curtis <mal@mal.co.nz>

* fix too many forward_auth cookies (#3)

* fix too many forward_auth cookies

* fix missing csrf cookie

Co-authored-by: orvice <orvice@gmail.com>

* feature: trusted ip address ranges skip authentication (#4)

Co-authored-by: Alexander Metzner <alexander.metzner@nortal.com>

* Use Go 1.19 in CI (#5)

* Update dependencies (#6)

* Update dependencies

* Stop testing with ancient Go versions

* Redo Dockerfile with Go 1.19 and distroless (#7)

* Create dependabot.yml

* Bump github/codeql-action from 1 to 2 (#8)

Bumps [github/codeql-action](https://github.com/github/codeql-action) from 1 to 2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](github/codeql-action@v1...v2)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump actions/setup-go from 2 to 3 (#9)

Bumps [actions/setup-go](https://github.com/actions/setup-go) from 2 to 3.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](actions/setup-go@v2...v3)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump actions/checkout from 2 to 3 (#10)

Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump github.com/stretchr/testify from 1.8.0 to 1.8.1 (#11)

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](stretchr/testify@v1.8.0...v1.8.1)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fix most of the issues CodeQL dislikes (#12)

* Fix most of the issues CodeQL dislikes

* Escape ipAddr closer to source

* Validate redirect domain (#13)

* Validate redirect domain

This change introduces a validation step prior to redirect as
discussed in thomseddon#77

* Fix tests

* Try harder to make CodeQL happy

* Fix tests

* Try just a little bit harder to appease CodeQL

Co-authored-by: Thom Seddon <thom@seddonmedia.co.uk>

* Workflow update: build container, rename master to main (#14)

* Run tests as part of container build (#15)

* Update README (#16)

* Update README

* Further README tweaks

* Update README.md

* Bump docker/setup-buildx-action from 2.0.0 to 2.2.1 (#17)

Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2.0.0 to 2.2.1.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](docker/setup-buildx-action@v2.0.0...v2.2.1)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump github.com/traefik/traefik/v2 from 2.9.4 to 2.9.6 (#21)

Bumps [github.com/traefik/traefik/v2](https://github.com/traefik/traefik) from 2.9.4 to 2.9.6.
- [Release notes](https://github.com/traefik/traefik/releases)
- [Changelog](https://github.com/traefik/traefik/blob/master/CHANGELOG.md)
- [Commits](traefik/traefik@v2.9.4...v2.9.6)

---
updated-dependencies:
- dependency-name: github.com/traefik/traefik/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump golang.org/x/oauth2 from 0.1.0 to 0.4.0 (#22)

Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from 0.1.0 to 0.4.0.
- [Release notes](https://github.com/golang/oauth2/releases)
- [Commits](golang/oauth2@v0.1.0...v0.4.0)

---
updated-dependencies:
- dependency-name: golang.org/x/oauth2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add .github to .dockerignore

* Add actions workflow to build and push docker image
This workflow builds multi-arch docker image on every push and pull request.
Also, this workflow pushes image to docker hub with appropriate semver tags on tag push.

* Publish to ghcr

* chore(ci): use own registry

* Add SameSite option

* docs: updates readme

* Update README.md

* remove docker workflow

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Jordan Webb <jordan@webb.haus>
Co-authored-by: Maximilian Mitchell <max@max.me.uk>
Co-authored-by: Max Mitchell <max.mitchell@ly.st>
Co-authored-by: Maximilian Mitchell <max@maxis.me>
Co-authored-by: Mal Curtis <mal@mal.co.nz>
Co-authored-by: orvice <orvice@gmail.com>
Co-authored-by: Alexander Metzner <alexander.metzner@nortal.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Thom Seddon <thom@seddonmedia.co.uk>
Co-authored-by: Ciffelia <mc.prince.0203@gmail.com>
Co-authored-by: Beanow <497556+Beanow@users.noreply.github.com>
Co-authored-by: Alexandre Richonnier <heralight@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants