- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-15-2017 11:22 PM
This example randomly generates a password from a base word and numbers. The base word is selected depending on the credential store. The code would be contained in the Script field of an extension script named SamplePasswordGenerator:
var SamplePasswordGenerator = Class.create();
SamplePasswordGenerator.prototype = {
category: 'password_reset.extension.password_generator', // DO NOT REMOVE THIS LINE!
/**********
* Returns an auto-generated string password.
* This sample randomly generates 4 digits to add to the password.
*
* @param params.credentialStoreId The sys_id of the target password reset credential store to generate
* a password for (table: pwd_cred_store)
* @return An auto-generated string password
**********/
process: function(params) {
var basePassword;
var gr = new GlideRecord('pwd_cred_store');
gr.addQuery('name', 'Local ServiceNow Instance');
gr.query();
if (gr.next()) {
if (params.credentialStoreId == gr.getValue('sys_id'))
basePassword = "Password";
else
basePassword = "Dorwssap";
}
return this.generateSimple(basePassword);
},
generateSimple : function(base) {
var pwd = base;
var numbers = '0123456789';
var length = 4;
for (var i = 0, n = numbers.length; i < length; i++) {
pwd += numbers.charAt(Math.floor(Math.random() * n) +1);
}
return pwd;
},
type: 'SamplePasswordGenerator'
};