Skip to page contentSkip to chat
ServiceNow support
    • Community
      Ask questions, give advice, and connect with fellow ServiceNow professionals.
      Developer
      Build, test, and deploy applications
      Documentation
      Find detailed information about ServiceNow products, apps, features, and releases.
      Impact
      Accelerate ROI and amplify your expertise.
      Learning
      Build skills with instructor-led and online training.
      Partner
      Grow your business with promotions, news, and marketing tools
      ServiceNow
      Learn about ServiceNow products & solutions.
      Store
      Download certified apps and integrations that complement ServiceNow.
      Support
      Manage your instances, access self-help, and get technical support.
Azure AD Sync or an Import (e.g. LDAP Group Import) Being Interfered with by "security_admin" Role - Support and Troubleshooting
  • >
  • Knowledge Base
  • >
  • Support and Troubleshooting (Knowledge Base)
  • >
  • Azure AD Sync or an Import (e.g. LDAP Group Import) Being Interfered with by "security_admin" Role
KB0758037

Azure AD Sync or an Import (e.g. LDAP Group Import) Being Interfered with by "security_admin" Role


1381 Views Last updated : Sep 13, 2024 public Copy Permalink
KB Summary by Now Assist

Issue

Azure AD sync or an Import (e.g. LDAP Group Import) fails to add users to the group via auto-provisioning if the group has security_admin roles granted. 

Following example error will be seen in the node logs:

2021-10-14 14:19:33 (477) worker.7 worker.7 txid=63033d8cdbdb User admin without admin/security_admin role is not allowed to grant admin/security_admin-containing roles or groups.
2021-10-14 14:19:33 (477) worker.7 worker.7 txid=63033d8cdbdb Background message, type:error, message: User admin without admin/security_admin role is not allowed to grant admin/security_admin-containing roles or groups.
2021-10-14 14:19:33 (477) worker.7 worker.7 txid=63033d8cdbdb WARNING *** WARNING *** User admin without admin/security_admin role is not allowed to grant admin/security_admin-containing roles or groups.
2021-10-14 14:19:33 (477) worker.7 worker.7 txid=63033d8cdbdb SEVERE *** ERROR *** inserting
com.glide.db.DBActionInterruptionException: User admin without admin/security_admin role is not allowed to grant admin/security_admin-containing roles or groups.
        at com.glide.role_management.RoleManagementListener.enforceInsertRestrictions(RoleManagementListener.java:170)
        at com.glide.role_management.RoleManagementListener.onExecute(RoleManagementListener.java:103)
        at com.glide.db.DBAction.processListeners(DBAction.java:166)
        at com.glide.db.DBAction.executeAndReturnException(DBAction.java:204)
        at com.glide.script.GlideRecordITable.insert(GlideRecordITable.java:158)
        at com.glide.script.GlideRecord.insert(GlideRecord.java:4971)
        at com.glide.script.GlideRecord.insert(GlideRecord.java:4881)
        at com.glide.sys.ldap.LDAPGroups.createGroupMember(LDAPGroups.java:317)
        at com.glide.sys.ldap.LDAPGroups.addUsers(LDAPGroups.java:255)
        at com.glide.sys.ldap.LDAPGroups.setMembers(LDAPGroups.java:209)
        at com.glide.sys.ldap.LDAPGroups.setMembers(LDAPGroups.java:175)
        at sun.reflect.GeneratedMethodAccessor389.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:138)
        at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:300)
        at org.mozilla.javascript.ScriptRuntime.doCall(ScriptRuntime.java:2612)
        at org.mozilla.javascript.optimizer.OptRuntime.callProp0(OptRuntime.java:85)
        at org.mozilla.javascript.gen.sys_script_include_e86a94620a0a0b26008e67598866c6ea_script_602._c_anonymous_9(sys_script_include.e86a94620a0a0b26008e67598866c6ea.script:72)
        at org.mozilla.javascript.gen.sys_script_include_e86a94620a0a0b26008e67598866c6ea_script_602.call(sys_script_include.e86a94620a0a0b26008e67598866c6ea.script)
        at org.mozilla.javascript.ScriptRuntime.doCall2(ScriptRuntime.java:2678)
        at org.mozilla.javascript.ScriptRuntime.doCall(ScriptRuntime.java:2617)
        at org.mozilla.javascript.optimizer.OptRuntime.call2(OptRuntime.java:42)
        at org.mozilla.javascript.gen.sys_transform_script_0dc646160a0a0b26007beb877ee7cdf9_script_626._c_script_0(sys_transform_script.0dc646160a0a0b26007beb877ee7cdf9.script:15)
        at org.mozilla.javascript.gen.sys_transform_script_0dc646160a0a0b26007beb877ee7cdf9_script_626.call(sys_transform_script.0dc646160a0a0b26007beb877ee7cdf9.script)
        at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:563)
        at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3459)
        at org.mozilla.javascript.gen.sys_transform_script_0dc646160a0a0b26007beb877ee7cdf9_script_626.call(sys_transform_script.0dc646160a0a0b26007beb877ee7cdf9.script)
        at org.mozilla.javascript.gen.sys_transform_script_0dc646160a0a0b26007beb877ee7cdf9_script_626.exec(sys_transform_script.0dc646160a0a0b26007beb877ee7cdf9.script)
        at com.glide.script.ScriptEvaluator.execute(ScriptEvaluator.java:279)
        at com.glide.script.ScriptEvaluator.evaluateString(ScriptEvaluator.java:118)
        at com.glide.script.ScriptEvaluator.evaluateString(ScriptEvaluator.java:82)
        at com.glide.script.fencing.GlideScopedEvaluator.evaluateScript(GlideScopedEvaluator.java:321)
        at com.glide.script.fencing.GlideScopedEvaluator.evaluateScript(GlideScopedEvaluator.java:225)
        at com.glide.script.fencing.GlideScopedEvaluator.evaluateScript(GlideScopedEvaluator.java:212)
        at com.glide.db.impex.transformer.TransformerScript.runScript(TransformerScript.java:70)
        at com.glide.db.impex.transformer.TransformerScript.runWhenScript(TransformerScript.java:133)
        at com.glide.db.impex.transformer.Transformer.runOnAfterScript(Transformer.java:302)
        at com.glide.db.impex.transformer.Transformer.transformBatch(Transformer.java:175)
        at com.glide.db.impex.transformer.Transformer.transform(Transformer.java:88)
        at com.glide.system_import_set.ImportSetTransformerImpl.transformEach(ImportSetTransformerImpl.java:304)
        at com.glide.system_import_set.ImportSetTransformerImpl.transformAllMaps(ImportSetTransformerImpl.java:117)
        at com.glide.system_import_set.ImportSetTransformer.transformAllMaps(ImportSetTransformer.java:91)
        at com.glide.system_import_set.ImportSetTransformer.transformAllMaps(ImportSetTransformer.java:77)
        at com.glide.system_import_set.ImportSetTransformer.transformAllMaps(ImportSetTransformer.java:72)
        at com.snc.automation.ScheduledImportSetJob.runImport(ScheduledImportSetJob.java:119)
        at com.snc.automation.ScheduledImportSetJob.runNextImport(ScheduledImportSetJob.java:65)
        at com.snc.automation.ScheduledImportSetJob.runNextImport(ScheduledImportSetJob.java:77)
        at com.snc.automation.ScheduledImportSetJob.runImport(ScheduledImportSetJob.java:53)
        at com.snc.automation.ScheduledImportJob.execute(ScheduledImportJob.java:52)
        at com.glide.schedule.JobExecutor.lambda$executeJob$0(JobExecutor.java:113)
        at com.glide.schedule.JobExecutor.executeJob(JobExecutor.java:116)
        at com.glide.schedule.JobExecutor.execute(JobExecutor.java:100)
        at com.glide.schedule_v2.SchedulerWorkerThread.executeJob(SchedulerWorkerThread.java:300)
        at com.glide.schedule_v2.SchedulerWorkerThread.lambda$process$0(SchedulerWorkerThread.java:188)
        at com.glide.worker.TransactionalWorkerThread.executeInTransaction(TransactionalWorkerThread.java:35)
        at com.glide.schedule_v2.SchedulerWorkerThread.process(SchedulerWorkerThread.java:188)
        at com.glide.schedule_v2.SchedulerWorkerThread.run(SchedulerWorkerThread.java:102)

2021-10-14 14:19:33 (478) worker.7 worker.7 txid=63033d8cdbdb SEVERE *** ERROR *** Error during insert of sys_user_grmember (Created 2021-10-14 16:19:33)

Release

  • Instance on London or Later releases.
  • Configuration for auto user provisioning with Azure Active Directory done. 
  • The group in which the user has to be provisioned has a Security_admin role assigned. 

 

Cause

There are some design changes in the sys_user_role ACL with the READ operation since the London release. Per the change we have locked the contains role checks in the ACL for READ operations.

Resolution

There are two solutions:

(1) Remove the security_admin role from the group role for the user to sync/provisioned to the group.

(2) In cases where a transform map is used a user with the security_admin role may be impersonated and apply the security_admin role before the transforming is done:

Create an OnStart script as in this example:

(function runTransformScript(source, map, log, target /*undefined onStart*/ ) {

    gs.getSession().impersonate('6816f79cc0a8016401c5a33be04be441'); // impersonate a user with security_admin role, its sys_id from the sys_user table is used here
    GlideSecurityManager.get().enableElevatedRole('security_admin'); //elevate to security_admin

})(source, map, log, target);

 

Related Links

The security_admin role is an elevated privilege role provided with High-Security Settings that lets users create and change access controls and change High-Security Settings.

In the base system, only the default System Administrator (admin) user has the security_admin role. Since it requires elevating privileges, the admin user does not have this role at login. After elevating privileges, the admin user has the security_admin role for the duration of the user session.

Reference: https://docs.servicenow.com/csh?topicname=security-admin-role.html&version=latest


The world works with ServiceNow.

Sign in for more! There's more content available only to authenticated users Sign in for more!
Did this KB article help you?
Did this KB article help you?

How would you rate your Now Support digital experience?

*

Very unsatisfied

Unsatisfied

Neutral

Satisfied

Very satisfied

Very unsatisfied

Unsatisfied

Neutral

Satisfied

Very satisfied

What can we improve? Please select all that apply.

What are we doing well? Please select all that apply.

Tell us more

*

Do you expect a response from this feedback?

  • Terms and conditions
  • Privacy statement
  • GDPR
  • Cookie policy
  • © 2025 ServiceNow. All rights reserved.