Commit graph

45 commits

Author SHA1 Message Date
Matt Baer
9341784c0c Fix OAuth signup with collection description 2021-06-07 15:09:12 -04:00
Matt Baer
484d2736ce Update repo URL to writefreely org
From the writeas org on GitHub.
2021-04-06 17:24:07 -04:00
Darius Kazemi
0aafd0c368 Generic OAuth userinfo properies now configurable
When connecting to a generic OAuth provider, you are never sure what object you'll be receiving from the userinfo endpoint (it isn't actually specified anywhere). So this commit adds mapping values to the generic oauth configuration section of config.ini, allowing the user to specify which keys in the remote endpoint it expects to read the UserID, Username, DisplayName, and Email from. Default values if unspecified remain as they were before this commit.
2020-10-22 12:15:55 -07:00
Darius Kazemi
667cbb97ed Adding scope field to generic OAuth
Some OAuth providers (like Mastodon) do not use the default
"read_user" scope, instead offering a custom scope. The config.ini
for generic OAuth now contains a "scope" field, allowing the admin
to set the scope manually (it defaults to "read_user" if blank).
2020-10-12 20:54:48 -07:00
Matt Baer
217430e56b Redirect user to /me/settings on cancelled OAuth flow 2020-08-19 15:40:07 -04:00
Matt Baer
4db2cb8986 Templatize OAuth buttons across signup and login pages
This moves fields into the `OAuthButtons` struct and puts the buttons into templates/includes/oauth.tmpl.
2020-08-19 13:31:07 -04:00
Matt Baer
95273697f4 Use consistent server User-Agent across application 2020-08-18 12:22:04 -04:00
Pascal Richier
d3f1e40010
Merge branch 'develop' into feature/generic-oauth 2020-08-16 19:58:01 +02:00
Keturah Dola-Borg
405a2602ce Fix endpoint URI generation
Signed-off-by: prichier <pascoualito@gmail.com>
2020-05-31 00:20:39 +02:00
Keturah Dola-Borg
92d822b5c6 Remove redundant variable
Signed-off-by: prichier <pascoualito@gmail.com>
2020-05-31 00:20:35 +02:00
Keturah Dola-Borg
7b71d455a8 Apply go fmt
Signed-off-by: prichier <pascoualito@gmail.com>
2020-05-31 00:20:21 +02:00
Keturah Dola-Borg
ee1ca48800 Add generic oauth client
Signed-off-by: prichier <pascoualito@gmail.com>
2020-05-30 23:58:57 +02:00
gytisrepecka
8675eb0f95
Merge develop branch into oauth-gitea and resolve pages/login.tmpl conflict. 2020-04-23 14:24:17 +03:00
Matt Baer
ca4a576c31 Support OAuth registration with invite code
This adds any OAuth login buttons to the invite signup page, stores the invite code for the flow duration, and associates the new user with it once successfully registered.

It enables invite-only instances with OAuth-based registration.
2020-04-20 18:18:23 -04:00
Matt Baer
93c2773412 Prevent account creation via OAuth when registration is closed 2020-04-20 15:26:53 -04:00
gytisrepecka
0e1459c6b2
Remove address variable - to make Locations use host value from config instead. 2020-04-17 17:12:06 +03:00
gytisrepecka
c798a44f69
Added Gitea OAuth login and account management. 2020-04-03 13:26:59 +03:00
Matt Baer
d7d4cd907e Tweak "account already attached" verbiage 2020-03-24 09:09:14 -04:00
Nick Gerakines
048e8a5e13
Added error messaging when user attempts to attach a slack account to a user that already has the slack account attached. Added GitLab to settings page as oauth option. 2020-03-20 18:07:35 -04:00
Matt Baer
cf4f08b264 Merge branch 'develop' into T713-oauth-account-management 2020-03-19 12:02:33 -04:00
Matt Baer
9e25979e37 Run go fmt on modified GitLab files 2020-03-18 16:17:06 -04:00
Kyle Robbertze
26b6ed5f4f simplify gitlab oauth config 2020-03-16 15:11:03 +02:00
Kyle Robbertze
c292512b9d add Gitlab OAuth 2020-03-12 10:50:55 +02:00
Nick Gerakines
c0317b4e93 Implemented oauth attach functionality, oauth detach functionality, and required data migration. T713 2020-01-15 13:16:59 -05:00
Nick Gerakines
f7995bee48 Fixing bug where display name was not set correctly. 2020-01-14 10:28:40 -05:00
Nick Gerakines
a77d403dfb
Fixing bug in oauth callback URL registration.
Fixing a bug in the oauth callback URL registration where the lack of provider context was overwriting the previous oauth callback route registration call.
2020-01-10 16:16:43 -05:00
Nick Gerakines
5e76565271 Code cleanup per PR feedback. T712 2020-01-07 21:52:55 -05:00
Nick Gerakines
28cf4dd5f5 Added state location register hook. T712. 2020-01-07 15:22:25 -05:00
Nick Gerakines
6429d495a2 Implemented /oauth/signup. T712 2020-01-03 13:50:21 -05:00
Nick Gerakines
0b229a5ede Updating oauth user lookup call as per PR feedback. T710 2020-01-03 11:31:38 -05:00
Nick Gerakines
6d8da2bffd Encrypting email from oauth signup as per PR feedback. T710 2020-01-03 11:28:06 -05:00
Nick Gerakines
2aea9560bc Merged T710-oauth-slack into oauth-wrapper. 2020-01-02 16:19:26 -05:00
Nick Gerakines
31e2dac118 Adding slack display name to inspect response to use in user creation as per PR feedback. T710 2020-01-02 15:55:28 -05:00
Nick Gerakines
cd5fea5ff1 write.as oauth client cleanup as per PR feedback. T710 2020-01-02 15:50:54 -05:00
Nick Gerakines
9170c84617 Merged in final changes from PR 225 into T705-oauth-slack. T710 2019-12-31 11:48:08 -05:00
Matt Baer
ad5f72d8a4 Merge branch 'T705-oauth' into oauth-wrapper 2019-12-30 18:47:40 -05:00
Matt Baer
6bcc4cfa46 Check for error response in code exchange
This checks to see if we get a response with a populated `error` field
in exchangeOauthCode(). If so, we return that error message as an error,
to ensure the callback logic doesn't continue with a bad response.

Ref T705
2019-12-30 18:25:24 -05:00
Matt Baer
39d0f1de98 Add logging in viewOauthCallback()
Ref T705
2019-12-30 18:23:45 -05:00
Matt Baer
af23e28d05 Pass OAuth requests through new OAuth handler
This gives us our standard logging and passes around errors with
impart.HTTPError.

Ref T705
2019-12-30 18:14:01 -05:00
Nick Gerakines
cf87ae9096 Code cleanup in prep for PR. T710 2019-12-30 13:32:06 -05:00
Nick Gerakines
462f87919a Feature complete on MVP slack auth integration. T710 2019-12-28 15:15:47 -05:00
Nick Gerakines
13121cb266 Merging T705-oauth into T710-oauth-slack. T705,T710 2019-12-27 13:40:11 -05:00
Nick Gerakines
4266154749 Code cleanup from PR 255 feedback. T705 2019-12-27 13:35:48 -05:00
Nick Gerakines
bf3b6a5ba0 Unit tests, integration testing, and code cleanup for oauth support. Part of T705. 2019-12-23 14:30:32 -05:00
Nick Gerakines
7a0863f71b Added oauth handlers and tests with mocks. Part of T705. 2019-12-19 11:51:19 -05:00