VMware sysprep_password

I’m trying to change the default Administrator password of Windows using a service dialog in CF 4.5, but sysprep_password is not applied on the target machine (with custom specifications).
ip_addr, dns_servers, … do work, but the admin password does not. If I provision a VM from /vm_infra/explorer and set the Administrator password, it is changed as expected.

OK, I compared the custom specifications created by “Provision VM using selected Template” button (sets admin password correctly) and the custom specification created by the “Service Provision” request (does not set admin password at all).

I dumped the attributes of miq_provision in vmware_CustomizeRequest method.

With VM provisioning the options hash has the value :sysprep_password=>"v2:{DjOB/wD1txxxxxWdtH/2rQ==}"

With Service provisioning the options hash has these values: :sysprep_password=>"" and "password::sysprep_password"=>"v2:{DjOB/wD1txxxxxWdtH/2rQ==}"

The latter is a result of a protected text box (sysprep_password ) in the service dialog. These values do not fit for sysprep so admin password is not set.

If I make the dialog element unprotected then the password is passed (in clear text) to the resulting customization specification correctly and the password is set on the target VM, but this is not an ideal solution.

Is this a bug in the product or an expected behavior? As a workaround I’m thinking about copying password::sysprep_password to sysprep_password in vmware_CustomizeRequest method.

1 Like