From 5972b53fb89fbe8c0bb62170289d46c40ac347b2 Mon Sep 17 00:00:00 2001 From: alendv <116354150+alendv@users.noreply.github.com> Date: Thu, 16 Mar 2023 13:21:56 +0000 Subject: [PATCH 1/2] feat: add separate tenant id option in sync settings --- .../AzureAD.Web/src/actions/settings.js | 4 +++- .../components/advanced/sync/syncSettings.jsx | 20 +++++++++++++++++-- .../src/reducers/settingsReducer.js | 2 ++ .../Common/Utils.cs | 14 +++++++++++++ .../Components/AzureClient.cs | 7 ++----- .../Components/AzureConfig.cs | 4 ++++ .../SqlDataProvider/uninstall.SqlDataProvider | 2 ++ .../ScheduledTasks/SyncSchedule.cs | 15 +++++--------- .../Services/AzureADProviderSettings.cs | 4 ++++ 9 files changed, 54 insertions(+), 18 deletions(-) diff --git a/DotNetNuke.Authentication.Azure/AzureAD.Web/src/actions/settings.js b/DotNetNuke.Authentication.Azure/AzureAD.Web/src/actions/settings.js index d374883..48ff7ab 100644 --- a/DotNetNuke.Authentication.Azure/AzureAD.Web/src/actions/settings.js +++ b/DotNetNuke.Authentication.Azure/AzureAD.Web/src/actions/settings.js @@ -40,7 +40,8 @@ const settingsActions = { redirectUri: data.redirectUri, onErrorUri: data.onErrorUri, tenantId: data.tenantId, - aadAppClientId: data.aadAppClientId, + aadTenantId: data.aadTenantId, + aadAppClientId: data.aadAppClientId, aadAppSecret: data.aadAppSecret, jwtAudiences: data.jwtAudiences, roleSyncEnabled: data.roleSyncEnabled, @@ -134,6 +135,7 @@ const settingsActions = { redirectUri: settings.redirectUri, onErrorUri: settings.onErrorUri, tenantId: settings.tenantId, + aadTenantId: settings.aadTenantId, aadAppClientId: settings.aadAppClientId, aadAppSecret: settings.aadAppSecret, jwtAudiences: settings.jwtAudiences, diff --git a/DotNetNuke.Authentication.Azure/AzureAD.Web/src/components/advanced/sync/syncSettings.jsx b/DotNetNuke.Authentication.Azure/AzureAD.Web/src/components/advanced/sync/syncSettings.jsx index f9dbd3a..b1b7e13 100644 --- a/DotNetNuke.Authentication.Azure/AzureAD.Web/src/components/advanced/sync/syncSettings.jsx +++ b/DotNetNuke.Authentication.Azure/AzureAD.Web/src/components/advanced/sync/syncSettings.jsx @@ -17,6 +17,7 @@ class SyncSettings extends Component { this.state = { error: { + aadTenantId: false, aadAppClientId: false, aadAppSecret: false } @@ -32,6 +33,7 @@ class SyncSettings extends Component { UNSAFE_componentWillReceiveProps(nextProps) { const {state} = this; + state.error["aadTenantId"] = ((nextProps.roleSyncEnabled || nextProps.userSyncEnabled || nextProps.profileSyncEnabled) && nextProps.aadTenantId === ""); state.error["aadAppClientId"] = ((nextProps.roleSyncEnabled || nextProps.userSyncEnabled || nextProps.profileSyncEnabled) && nextProps.aadAppClientId === ""); state.error["aadAppSecret"] = ((nextProps.roleSyncEnabled || nextProps.userSyncEnabled || nextProps.profileSyncEnabled) && nextProps.aadAppSecret === ""); } @@ -40,6 +42,7 @@ class SyncSettings extends Component { let {props} = this; props.dispatch(SettingsActions.settingsClientModified({ + aadTenantId: (key === "AadTenantId") ? event.target.value : props.aadTenantId, aadAppClientId: (key === "AadAppClientId") ? event.target.value : props.aadAppClientId, aadAppSecret: (key === "AadAppSecret") ? event.target.value : props.aadAppSecret, roleSyncEnabled: (key === "roleSyncEnabled") ? !props.roleSyncEnabled : props.roleSyncEnabled, @@ -59,6 +62,7 @@ class SyncSettings extends Component { let {props} = this; props.dispatch(SettingsActions.updateAdvancedSyncSettings({ + aadTenantId: props.aadTenantId, aadAppClientId: props.aadAppClientId, aadAppSecret: props.aadAppSecret, roleSyncEnabled: props.roleSyncEnabled, @@ -101,7 +105,17 @@ class SyncSettings extends Component {

{resx.get("lblAADSettings")}

{resx.get("lblGraphClient.Help")} -

+

+