2

I'm try to set a user password and executing the system.setPassword(UserId, Password) method and I always get an error saying that the UserId is invalid. I've checked it and it's the correct UserId. Example: System.setPassword('[email protected]','test');

3 Answers 3

10

The first parameter of that function call is the actual id of the user object. User Ids start with 005 and are 15 or 18 Characters long. for example:

System.setPassword('005300000123aBc','A$tr0ngPW');
0
3

You can't hard code the UserId and password. You can try like this System.setPassword(u.id,passwordString);

2

I hope you're not hard coding passwords, here's a few lines to generate a random alphanumeric char. Use as you will.

final String selectionString = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
Integer idNum = Math.mod(Math.abs(Crypto.getRandomInteger()), selectionString.length());
String randomChar = selectionString.substring(idNum, idNum+1);
1
  • 1
    I'm only hardcoding the passwords in our training sandbox to make user logins easier during the end user training. Thanks for the code snippet though...that will come in handy.
    – Blam
    Commented Dec 8, 2016 at 17:49

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .