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

[IMPROVE] OAuth Role Sync #13761

Merged
merged 27 commits into from
Apr 15, 2019
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
9339431
IMPROVE] Improved support for OAuth Provider
hypery2k Mar 18, 2019
aea55de
Merge branch 'develop' into feature/oauth_groups_12243
engelgabriel Mar 18, 2019
3b977bf
Merge branch 'develop' into feature/oauth_groups_12243
hypery2k Mar 18, 2019
6b80cbe
Merge branch 'develop' into feature/oauth_groups_12243
hypery2k Apr 3, 2019
11c131d
Merge branch 'develop' into feature/oauth_groups_12243
hypery2k Apr 3, 2019
64f2ff5
Merge branch 'develop' into feature/oauth_groups_12243
hypery2k Apr 4, 2019
a4a1360
Merge branch 'develop' into feature/oauth_groups_12243
hypery2k Apr 6, 2019
f84f9d3
Merge branch 'develop' into feature/oauth_groups_12243
hypery2k Apr 6, 2019
ca4bf69
Merge branch 'develop' into feature/oauth_groups_12243
hypery2k Apr 7, 2019
e66e4d6
Merge branch 'develop' into feature/oauth_groups_12243
geekgonecrazy Apr 8, 2019
0b89bcb
Merge branch 'develop' into feature/oauth_groups_12243
hypery2k Apr 12, 2019
fec4669
[IMPROVE] Make group/roles claim configurable via settings
hypery2k Apr 12, 2019
f915155
Merge branch 'develop' into feature/oauth_groups_12243
hypery2k Apr 12, 2019
9dcdfe4
[IMPROVE]: Adding check for array
hypery2k Apr 12, 2019
b554c7b
[IMPROVE]: Adding option for role merge
hypery2k Apr 12, 2019
55431db
Merge branch 'develop' into feature/oauth_groups_12243
hypery2k Apr 12, 2019
81cdfa4
Merge branch 'develop' into feature/oauth_groups_12243
hypery2k Apr 12, 2019
c4fdd3d
[FIX]: Corrected alignment
hypery2k Apr 13, 2019
e7fd58b
[FIX]: Adding i18n default label
hypery2k Apr 13, 2019
dfe4a54
[IMPROVE]: Move mapping to process user hook
hypery2k Apr 13, 2019
2a647a9
Merge branch 'develop' into feature/oauth_groups_12243
hypery2k Apr 13, 2019
8be70f2
[FIX]: Let updating via hooks work
hypery2k Apr 13, 2019
cad1a71
Update app/lib/server/methods/addOAuthService.js
geekgonecrazy Apr 13, 2019
6192004
[FIX]: Adding role check before adding
geekgonecrazy Apr 13, 2019
c4618aa
only remove / add difference instead of all, and dont un-necessarily …
geekgonecrazy Apr 13, 2019
86b56b1
move role existing check to map to prevent from being added to create…
geekgonecrazy Apr 13, 2019
fa7e7ac
Merge branch 'develop' into feature/oauth_groups_12243
geekgonecrazy Apr 15, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions app/custom-oauth/server/custom_oauth_server.js
Original file line number Diff line number Diff line change
Expand Up @@ -251,10 +251,6 @@ export class CustomOAuth {
if (!identity.email && (identity.emails && Array.isArray(identity.emails) && identity.emails.length >= 1)) {
identity.email = identity.emails[0].address ? identity.emails[0].address : undefined;
}
if (this.mergeRoles) {
const user = Users.findOneByEmailAddress(identity.email);
mapRolesFromSSO(user, identity, this.rolesClaim || 'roles');
}
}

// console.log 'id:', JSON.stringify identity, null, ' '
Expand Down Expand Up @@ -310,6 +306,9 @@ export class CustomOAuth {
if (!user) {
return;
}
if (this.mergeRoles) {
hypery2k marked this conversation as resolved.
Show resolved Hide resolved
mapRolesFromSSO(user, serviceData, this.rolesClaim || 'roles');
hypery2k marked this conversation as resolved.
Show resolved Hide resolved
}

// User already created or merged and has identical name as before
if (user.services && user.services[serviceName] && user.services[serviceName].id === serviceData.id && user.name === serviceData.name) {
Expand Down
2 changes: 1 addition & 1 deletion app/custom-oauth/server/oauth_helpers.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { addUserRoles, removeUserFromRoles } from '../../authorization';
/**
*/
export function mapRolesFromSSO(user, identity, roleClaimName) {
if (user && roleClaimName) {
if (user && identity && roleClaimName) {
// Adding roles
if (identity[roleClaimName]) {
hypery2k marked this conversation as resolved.
Show resolved Hide resolved
if (Array.isArray(identity[roleClaimName])) {
Expand Down