|
@@ -216,14 +216,14 @@ module.exports = (crowi: Crowi): Router => {
|
|
|
|
|
|
|
|
router.get('/ldap/sync-settings', loginRequiredStrictly, adminRequired, (req: AuthorizedRequest, res: ApiV3Response) => {
|
|
router.get('/ldap/sync-settings', loginRequiredStrictly, adminRequired, (req: AuthorizedRequest, res: ApiV3Response) => {
|
|
|
const settings = {
|
|
const settings = {
|
|
|
- ldapGroupSearchBase: configManager?.getConfig('crowi', 'external-user-group:ldap:groupSearchBase'),
|
|
|
|
|
- ldapGroupMembershipAttribute: configManager?.getConfig('crowi', 'external-user-group:ldap:groupMembershipAttribute'),
|
|
|
|
|
- ldapGroupMembershipAttributeType: configManager?.getConfig('crowi', 'external-user-group:ldap:groupMembershipAttributeType'),
|
|
|
|
|
- ldapGroupChildGroupAttribute: configManager?.getConfig('crowi', 'external-user-group:ldap:groupChildGroupAttribute'),
|
|
|
|
|
- autoGenerateUserOnLdapGroupSync: configManager?.getConfig('crowi', 'external-user-group:ldap:autoGenerateUserOnGroupSync'),
|
|
|
|
|
- preserveDeletedLdapGroups: configManager?.getConfig('crowi', 'external-user-group:ldap:preserveDeletedGroups'),
|
|
|
|
|
- ldapGroupNameAttribute: configManager?.getConfig('crowi', 'external-user-group:ldap:groupNameAttribute'),
|
|
|
|
|
- ldapGroupDescriptionAttribute: configManager?.getConfig('crowi', 'external-user-group:ldap:groupDescriptionAttribute'),
|
|
|
|
|
|
|
+ ldapGroupSearchBase: configManager.getConfig('external-user-group:ldap:groupSearchBase'),
|
|
|
|
|
+ ldapGroupMembershipAttribute: configManager.getConfig('external-user-group:ldap:groupMembershipAttribute'),
|
|
|
|
|
+ ldapGroupMembershipAttributeType: configManager.getConfig('external-user-group:ldap:groupMembershipAttributeType'),
|
|
|
|
|
+ ldapGroupChildGroupAttribute: configManager.getConfig('external-user-group:ldap:groupChildGroupAttribute'),
|
|
|
|
|
+ autoGenerateUserOnLdapGroupSync: configManager.getConfig('external-user-group:ldap:autoGenerateUserOnGroupSync'),
|
|
|
|
|
+ preserveDeletedLdapGroups: configManager.getConfig('external-user-group:ldap:preserveDeletedGroups'),
|
|
|
|
|
+ ldapGroupNameAttribute: configManager.getConfig('external-user-group:ldap:groupNameAttribute'),
|
|
|
|
|
+ ldapGroupDescriptionAttribute: configManager.getConfig('external-user-group:ldap:groupDescriptionAttribute'),
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
return res.apiv3(settings);
|
|
return res.apiv3(settings);
|
|
@@ -231,14 +231,14 @@ module.exports = (crowi: Crowi): Router => {
|
|
|
|
|
|
|
|
router.get('/keycloak/sync-settings', loginRequiredStrictly, adminRequired, (req: AuthorizedRequest, res: ApiV3Response) => {
|
|
router.get('/keycloak/sync-settings', loginRequiredStrictly, adminRequired, (req: AuthorizedRequest, res: ApiV3Response) => {
|
|
|
const settings = {
|
|
const settings = {
|
|
|
- keycloakHost: configManager?.getConfig('crowi', 'external-user-group:keycloak:host'),
|
|
|
|
|
- keycloakGroupRealm: configManager?.getConfig('crowi', 'external-user-group:keycloak:groupRealm'),
|
|
|
|
|
- keycloakGroupSyncClientRealm: configManager?.getConfig('crowi', 'external-user-group:keycloak:groupSyncClientRealm'),
|
|
|
|
|
- keycloakGroupSyncClientID: configManager?.getConfig('crowi', 'external-user-group:keycloak:groupSyncClientID'),
|
|
|
|
|
- keycloakGroupSyncClientSecret: configManager?.getConfig('crowi', 'external-user-group:keycloak:groupSyncClientSecret'),
|
|
|
|
|
- autoGenerateUserOnKeycloakGroupSync: configManager?.getConfig('crowi', 'external-user-group:keycloak:autoGenerateUserOnGroupSync'),
|
|
|
|
|
- preserveDeletedKeycloakGroups: configManager?.getConfig('crowi', 'external-user-group:keycloak:preserveDeletedGroups'),
|
|
|
|
|
- keycloakGroupDescriptionAttribute: configManager?.getConfig('crowi', 'external-user-group:keycloak:groupDescriptionAttribute'),
|
|
|
|
|
|
|
+ keycloakHost: configManager.getConfig('external-user-group:keycloak:host'),
|
|
|
|
|
+ keycloakGroupRealm: configManager.getConfig('external-user-group:keycloak:groupRealm'),
|
|
|
|
|
+ keycloakGroupSyncClientRealm: configManager.getConfig('external-user-group:keycloak:groupSyncClientRealm'),
|
|
|
|
|
+ keycloakGroupSyncClientID: configManager.getConfig('external-user-group:keycloak:groupSyncClientID'),
|
|
|
|
|
+ keycloakGroupSyncClientSecret: configManager.getConfig('external-user-group:keycloak:groupSyncClientSecret'),
|
|
|
|
|
+ autoGenerateUserOnKeycloakGroupSync: configManager.getConfig('external-user-group:keycloak:autoGenerateUserOnGroupSync'),
|
|
|
|
|
+ preserveDeletedKeycloakGroups: configManager.getConfig('external-user-group:keycloak:preserveDeletedGroups'),
|
|
|
|
|
+ keycloakGroupDescriptionAttribute: configManager.getConfig('external-user-group:keycloak:groupDescriptionAttribute'),
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
return res.apiv3(settings);
|
|
return res.apiv3(settings);
|
|
@@ -349,11 +349,11 @@ module.exports = (crowi: Crowi): Router => {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
const getAuthProviderType = () => {
|
|
const getAuthProviderType = () => {
|
|
|
- let kcHost = configManager?.getConfig('crowi', 'external-user-group:keycloak:host');
|
|
|
|
|
|
|
+ let kcHost = configManager.getConfig('external-user-group:keycloak:host');
|
|
|
if (kcHost?.endsWith('/')) {
|
|
if (kcHost?.endsWith('/')) {
|
|
|
kcHost = kcHost.slice(0, -1);
|
|
kcHost = kcHost.slice(0, -1);
|
|
|
}
|
|
}
|
|
|
- const kcGroupRealm = configManager?.getConfig('crowi', 'external-user-group:keycloak:groupRealm');
|
|
|
|
|
|
|
+ const kcGroupRealm = configManager.getConfig('external-user-group:keycloak:groupRealm');
|
|
|
|
|
|
|
|
// starts with kcHost, contains kcGroupRealm in path
|
|
// starts with kcHost, contains kcGroupRealm in path
|
|
|
// see: https://regex101.com/r/3ihDmf/1
|
|
// see: https://regex101.com/r/3ihDmf/1
|