logo

NJP

Set up a bunch of test users

Import · Aug 07, 2020 · article

via fix script

Users – 10 in total NAME USER ID test USER1 test_user1 test USER2 test_user2 test USER3 test_user3 test USER4 test_user4 test USER5 test_user5 test USER6 test_user6 test USER7 test_user7 test USER8 test_user8 test USER9 test_user9 test USER10 test_user10
Groups – 2 in total TestGrp1 TestGrp2
Group memberships All above users added to each group
Group roles – 2 in total itil agent_workspace_user
Stand alone user roles – 1 in total Catalog (added to all above users)
Last login default '2020-01-01';
Last login time default '2020-01-01 15:47:31';

Fix script name “set up test users"

To be run once only

Script code:

var lastLogin = '2020-01-01';

var lastLoginTime = '2020-01-01 15:47:31';

setUpUsers*(lastLogin,* lastLoginTime*);*

setUpGroups*();*

AddRolesToGroups*();*

AddStandaloneRolesToUsers*();*

AddUsersToGroups*();*

function setUpUsers*(lastLogin,* lastLoginTime*)* {

setUpUser*('test',* 'TEST1', lastLogin*,* lastLoginTime*);*

setUpUser*('test',* 'TEST2', lastLogin*,* lastLoginTime*);*

setUpUser*('test',* 'TEST3', lastLogin*,* lastLoginTime*);*

setUpUser*('test',* 'TEST4', lastLogin*,* lastLoginTime*);*

setUpUser*('test',* 'TEST5', lastLogin*,* lastLoginTime*);*

setUpUser*('test',* 'TEST6', lastLogin*,* lastLoginTime*);*

setUpUser*('test',* 'TEST7', lastLogin*,* lastLoginTime*);*

setUpUser*('test',* 'TEST8', lastLogin*,* lastLoginTime*);*

setUpUser*('test',* 'TEST9', lastLogin*,* lastLoginTime*);*

setUpUser*('test',* 'TEST10', lastLogin*,* lastLoginTime*);*

}

function setUpUser*(firstName,* lastName*,* lastLogin*,* lastLoginTime*)* {

var grUser = new GlideRecord*('sys_user');*

grUser*.newRecord();*

grUser*.first_name *=** firstName*;*

grUser*.last_name *=** lastName*;*

grUser*.last_login_time *=** lastLoginTime*;*

grUser*.last_login *=** lastLogin*;*

//grUser.password.setDisplayValue('xxxxx');

var combinedNames = firstName + '_' + lastName*;*

grUser*.user_name *=** combinedNames*.toLowerCase();*

grUser*.insert();*

}

function setUpGroups*()* {

setUpGroup*('TestGrp1');*

setUpGroup*('TestGrp2');*

}

function setUpGroup*(groupName)* {

var grGroup = new GlideRecord*('sys_user_group');*

grGroup*.newRecord();*

grGroup*.name *=** groupName*;*

grGroup*.insert();*

}

function AddRolesToGroups*()* {

AddRoleToGroup*('TestGrp1',* 'itil');

AddRoleToGroup*('TestGrp1',* 'agent_workspace_user');

AddRoleToGroup*('TestGrp2',* 'itil');

AddRoleToGroup*('TestGrp2',* 'agent_workspace_user');

}

function AddRoleToGroup*(groupName,* groupRole*)* {

var grGrpRole = new GlideRecord*('sys_group_has_role');*

grGrpRole*.newRecord();*

grGrpRole*.setDisplayValue('group',* groupName*);*

grGrpRole*.setDisplayValue('role',* groupRole*);*

grGrpRole*.insert();*

}

function AddStandaloneRolesToUsers*()* {

var grUsers = new GlideRecord*('sys_user');*

var sQuery = 'last_nameTEST';

grUsers*.addQuery(sQuery);*

grUsers*.query();*

while (grUsers*.next())* {

AddStandaloneRoleToUser*(grUsers.sys_id,* 'catalog');

AddStandaloneRoleToUser*(grUsers.sys_id,* 'catalog');

}

}

function AddStandaloneRoleToUser*(userSysID,* roleName*)* {

var grUserRole = new GlideRecord*('sys_user_has_role');*

grUserRole*.newRecord();*

grUserRole*.user *=** userSysID*;*

grUserRole*.setDisplayValue('role',* roleName*);*

grUserRole*.insert();*

}

function AddUsersToGroups*()* {

var grUsers = new GlideRecord*('sys_user');*

var sQuery = 'last_nameLIKETEST';

grUsers*.addQuery(sQuery);*

grUsers*.query();*

while (grUsers*.next())* {

AddUserToGroup*(grUsers.sys_id,* 'TestGrp1');

AddUserToGroup*(grUsers.sys_id,* 'TestGrp2');

}

}

function AddUserToGroup*(userSysID,* groupName*)* {

var grGrpRole = new GlideRecord*('sys_user_grmember');*

grGrpRole*.newRecord();*

grGrpRole*.user *=** userSysID*;*

grGrpRole*.setDisplayValue('group',* groupName*);*

grGrpRole*.insert();*

}

View original source

http://www.cloudminus89.com/2020/08/set-up-bunch-of-test-users.html