{"action":"closed","issue":{"url":"https://api.github.com/repos/CartoDB/cartodb/issues/6367","labels_url":"https://api.github.com/repos/CartoDB/cartodb/issues/6367/labels{/name}","comments_url":"https://api.github.com/repos/CartoDB/cartodb/issues/6367/comments","events_url":"https://api.github.com/repos/CartoDB/cartodb/issues/6367/events","html_url":"https://github.com/CartoDB/cartodb/issues/6367","id":125568193,"number":6367,"title":"HTTP Header authentication","user":{"login":"juanignaciosl","id":932968,"avatar_url":"https://avatars.githubusercontent.com/u/932968?v=3","gravatar_id":"","url":"https://api.github.com/users/juanignaciosl","html_url":"https://github.com/juanignaciosl","followers_url":"https://api.github.com/users/juanignaciosl/followers","following_url":"https://api.github.com/users/juanignaciosl/following{/other_user}","gists_url":"https://api.github.com/users/juanignaciosl/gists{/gist_id}","starred_url":"https://api.github.com/users/juanignaciosl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/juanignaciosl/subscriptions","organizations_url":"https://api.github.com/users/juanignaciosl/orgs","repos_url":"https://api.github.com/users/juanignaciosl/repos","events_url":"https://api.github.com/users/juanignaciosl/events{/privacy}","received_events_url":"https://api.github.com/users/juanignaciosl/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"juanignaciosl","id":932968,"avatar_url":"https://avatars.githubusercontent.com/u/932968?v=3","gravatar_id":"","url":"https://api.github.com/users/juanignaciosl","html_url":"https://github.com/juanignaciosl","followers_url":"https://api.github.com/users/juanignaciosl/followers","following_url":"https://api.github.com/users/juanignaciosl/following{/other_user}","gists_url":"https://api.github.com/users/juanignaciosl/gists{/gist_id}","starred_url":"https://api.github.com/users/juanignaciosl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/juanignaciosl/subscriptions","organizations_url":"https://api.github.com/users/juanignaciosl/orgs","repos_url":"https://api.github.com/users/juanignaciosl/repos","events_url":"https://api.github.com/users/juanignaciosl/events{/privacy}","received_events_url":"https://api.github.com/users/juanignaciosl/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/CartoDB/cartodb/milestones/56","html_url":"https://github.com/CartoDB/cartodb/milestones/Las%20cabezas%20de%20San%20Juan","labels_url":"https://api.github.com/repos/CartoDB/cartodb/milestones/56/labels","id":1472757,"number":56,"title":"Las cabezas de San Juan","description":"","creator":{"login":"xavijam","id":132146,"avatar_url":"https://avatars.githubusercontent.com/u/132146?v=3","gravatar_id":"","url":"https://api.github.com/users/xavijam","html_url":"https://github.com/xavijam","followers_url":"https://api.github.com/users/xavijam/followers","following_url":"https://api.github.com/users/xavijam/following{/other_user}","gists_url":"https://api.github.com/users/xavijam/gists{/gist_id}","starred_url":"https://api.github.com/users/xavijam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xavijam/subscriptions","organizations_url":"https://api.github.com/users/xavijam/orgs","repos_url":"https://api.github.com/users/xavijam/repos","events_url":"https://api.github.com/users/xavijam/events{/privacy}","received_events_url":"https://api.github.com/users/xavijam/received_events","type":"User","site_admin":false},"open_issues":46,"closed_issues":11,"state":"open","created_at":"2015-12-23T16:09:35Z","updated_at":"2016-01-20T10:43:13Z","due_on":"2016-01-27T23:00:00Z","closed_at":null},"comments":8,"created_at":"2016-01-08T08:46:53Z","updated_at":"2016-01-20T10:43:13Z","closed_at":"2016-01-20T10:43:13Z","body":"CartoDB should be able to authenticate users based on a (trusted) HTTP header, for Kerberos and other in-house authentication system interaction.\r\n\r\nImplementation: we could create a `HttpHeaderAuthenticator` strategy for `Warden` that catches the parameter and uses it for authentication.\r\n\r\nRequirements/restrictions:\r\n- [X] Configure the http header name (presumedly at app_conf.yml).\r\n- [X] Header value must be able to identify a user, thus mapping the value to a field (id, email, username) is needed (presumedly at app_conf.yml as well).\r\n- [X] If authenticator doesn't find a matching user we could trigger the creation if the header field allows generation of a valid username and email, which are the strong requirements for user creation. Password is not needed, since that user would always use http header authentication. Optional. Default: no.\r\n\r\ncc @javisantana "}}