{"action":"created","issue":{"url":"https://api.github.com/repos/jupyterhub/oauthenticator/issues/206","repository_url":"https://api.github.com/repos/jupyterhub/oauthenticator","labels_url":"https://api.github.com/repos/jupyterhub/oauthenticator/issues/206/labels{/name}","comments_url":"https://api.github.com/repos/jupyterhub/oauthenticator/issues/206/comments","events_url":"https://api.github.com/repos/jupyterhub/oauthenticator/issues/206/events","html_url":"https://github.com/jupyterhub/oauthenticator/pull/206","id":351213635,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA4ODY1NjU5","number":206,"title":"Allow a tuple of email domains with Google OAuth 2.0","user":{"login":"david-dumas","id":22374424,"node_id":"MDQ6VXNlcjIyMzc0NDI0","avatar_url":"https://avatars2.githubusercontent.com/u/22374424?v=4","gravatar_id":"","url":"https://api.github.com/users/david-dumas","html_url":"https://github.com/david-dumas","followers_url":"https://api.github.com/users/david-dumas/followers","following_url":"https://api.github.com/users/david-dumas/following{/other_user}","gists_url":"https://api.github.com/users/david-dumas/gists{/gist_id}","starred_url":"https://api.github.com/users/david-dumas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/david-dumas/subscriptions","organizations_url":"https://api.github.com/users/david-dumas/orgs","repos_url":"https://api.github.com/users/david-dumas/repos","events_url":"https://api.github.com/users/david-dumas/events{/privacy}","received_events_url":"https://api.github.com/users/david-dumas/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-08-16T13:48:27Z","updated_at":"2018-08-16T15:49:15Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/jupyterhub/oauthenticator/pulls/206","html_url":"https://github.com/jupyterhub/oauthenticator/pull/206","diff_url":"https://github.com/jupyterhub/oauthenticator/pull/206.diff","patch_url":"https://github.com/jupyterhub/oauthenticator/pull/206.patch"},"body":"Rework of #80 \r\nAddressing issue #63 \r\n\r\nNew features:\r\n* Allows multiple Google OAuth email domains\r\n* Checks for `verified_email` in Google OAuth response\r\n* Log unauthorized attempts as warnings (and not errors)\r\n\r\nBreaking changes:\r\n* Cannot use `HOSTED_DOMAIN` environment variable anymore since `os.environ.get` cannot provide a Python tuple\r\n* In jupyterhub configuration `c.GoogleOAuthenticator.hosted_domain`  has to be defined and has to be a tuple, raises an error 500 to client otherwise and logs an error on server side\r\n\r\nSidenotes:\r\n* In my use case I don't mind that user `john.doe@domain1.com` and `john.doe@domain2.org` end up with the same jupyterhub `john.doe`"},"comment":{"url":"https://api.github.com/repos/jupyterhub/oauthenticator/issues/comments/413592840","html_url":"https://github.com/jupyterhub/oauthenticator/pull/206#issuecomment-413592840","issue_url":"https://api.github.com/repos/jupyterhub/oauthenticator/issues/206","id":413592840,"node_id":"MDEyOklzc3VlQ29tbWVudDQxMzU5Mjg0MA==","user":{"login":"betatim","id":1448859,"node_id":"MDQ6VXNlcjE0NDg4NTk=","avatar_url":"https://avatars1.githubusercontent.com/u/1448859?v=4","gravatar_id":"","url":"https://api.github.com/users/betatim","html_url":"https://github.com/betatim","followers_url":"https://api.github.com/users/betatim/followers","following_url":"https://api.github.com/users/betatim/following{/other_user}","gists_url":"https://api.github.com/users/betatim/gists{/gist_id}","starred_url":"https://api.github.com/users/betatim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/betatim/subscriptions","organizations_url":"https://api.github.com/users/betatim/orgs","repos_url":"https://api.github.com/users/betatim/repos","events_url":"https://api.github.com/users/betatim/events{/privacy}","received_events_url":"https://api.github.com/users/betatim/received_events","type":"User","site_admin":false},"created_at":"2018-08-16T15:49:15Z","updated_at":"2018-08-16T15:49:15Z","author_association":"MEMBER","body":"We should continue to support using a string to set a single domain in addition to allowing people to set it to a tuple/list via the configuration. I think it would be nice to maintain backwards compatibility as there is no good reason to break it here.\r\n\r\nWhat motivated your choice to strip the domain names in the case of multiple domains being allowed? Not allowing joe@fake.com to impersonate joe@email.com seems like a desirable feature to me."}}
{"actor":{"display_login":"betatim"}}