diff options
author | Marin Jankovski <marin@gitlab.com> | 2015-07-20 08:45:58 +0000 |
---|---|---|
committer | Marin Jankovski <marin@gitlab.com> | 2015-07-20 08:45:58 +0000 |
commit | 8fa9da49c4a4d8bc58917699578ed4e59a90d162 (patch) | |
tree | 296c3b02a5e130e5db5b16dc16d054b86450a2c4 /config | |
parent | e5a12596abe48504737cb8633872794aa83ccb32 (diff) | |
parent | 5f4dcbf8be36e7c87afdc28afd7f2d663a9abf28 (diff) | |
download | gitlab-ce-8fa9da49c4a4d8bc58917699578ed4e59a90d162.tar.gz |
Merge branch 'set-omniauth-full-host' into 'master'
Set OmniAuth full_host parameter to ensure redirect URIs are correct
### What does this MR do?
This MR sets the OmniAuth `full_host` parameter to the configured GitLab URL to ensure the `redirect_uri` parameter is called with the right GitLab host.
### Why was this MR needed?
[OmniAuth attempts to grab the request URI](http://awesomeprogrammer.com/blog/2012/12/09/dealing-with-omniauth-redirect-uri-mismatch-invalid-port-number-gotcha/) and use that. If you set up a reverse proxy that terminates SSL at the Web server layer (e.g. https://gitlab.domain.com), omniauth will use the internal URL (e.g. http://my-host:8080) in its redirect URI unless all the Web server headers are properly set (e.g. `X-Forwarded-Port`, etc.). This is easy to forget or mess up, and it's better to ensure that OmniAuth has the right value from the start.
### What are the relevant issue numbers?
Closes #1967
See merge request !991
Diffstat (limited to 'config')
-rw-r--r-- | config/initializers/7_omniauth.rb | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/config/initializers/7_omniauth.rb b/config/initializers/7_omniauth.rb index df73ec1304a..7f73546ac89 100644 --- a/config/initializers/7_omniauth.rb +++ b/config/initializers/7_omniauth.rb @@ -11,6 +11,7 @@ if Gitlab::LDAP::Config.enabled? end end +OmniAuth.config.full_host = Settings.gitlab['url'] OmniAuth.config.allowed_request_methods = [:post] #In case of auto sign-in, the GET method is used (users don't get to click on a button) OmniAuth.config.allowed_request_methods << :get if Gitlab.config.omniauth.auto_sign_in_with_provider.present? |