Veeam recently moved to a new set of 'Appliance' based systems, with their own web pages.
I tried to set them up in RDM as Sessions with Cred fills, but I ran into a problem.
The 'id' fields appear to be be generated on each session, so using the 'discover' option is useless.
I gave the 'Automatic' a try and it appears to work, but it only does the initial login and not the OTP.
It created what appeared to be variables ..
[UserName] [Password] [Enter]
I tried [otp] and [Otp], and it didn't work .. I am guessing it's probably something like [One-Time-Password].
Where do I find the doc for these ? As it's not your usual %USERNAME% variable.
Hello,
Thank you for the details.
The Automatic sequence only supports the username, password and submit steps ([UserName], [Password], [Enter]). There is no token for the one-time password, which is why [otp] and [Otp] had no effect.
Since Veeam generates new field IDs on every session, the workaround is to use each field’s name attribute instead of its id, because the HTML control ID fields in RDM accept the name as well. Configure the OTP under General → One-time password (OTP). Then, on the Veeam pages, inspect the username, password and OTP fields, copy their name="…" values, and enter them under Login → HTML control ID (Username ID, Password ID and One time password ID).
Reference: https://docs.devolutions.net/rdm/knowledge-base/how-to-articles/otp-autofill-with-the-devolutions-password-manager-browser-extension/
If the OTP still doesn’t fill, please send me your RDM version and the HTML of the OTP field, and I’ll take a closer look.
Best regards,
Carl Marien
Hi .. Problem is .. it doesn't look like they have a "name" field, as you can see in the below.
Short of doing some sort of typing macro, any ideas ?
>>>
<input id="vm3a3b674f997e4492bf59d26f6ea588c2" data-selector-id="control" autocomplete="off" placeholder="Username" inputmode="text" aria-label="Username" aria-describedby="vm32c6c2da2d78481989345b8d3988d307" aria-required="true" class="sc-jONoGK fwkTOo vm-InputControl sc-hlTymx bnznBw" type="text" value="">
<input id="vm47a6b26a72954fb79ed862cf782d8cec" data-selector-id="password-input-text-input" autocomplete="off" placeholder="Password" aria-label="Password" aria-describedby="vm625692685f234798817dd20674f2010d" aria-required="true" class="sc-jONoGK fwkTOo vm-InputControl sc-jifLfJ dcQfxZ" type="password" value="">
<input id="vm695ada22153d4a1a9d0c6569568f3aa8" data-selector-id="control" autocomplete="off" placeholder="Type in the code" maxlength="6" pattern="\d*" inputmode="numeric" aria-label="Type in the code" aria-describedby="vmf81de12c7825469e86c650bb4f8c31d0 vm15acf90e94b3437fa7b5390ff55406ed" aria-required="true" class="sc-jONoGK iqlXQI vm-InputControl sc-hlTymx gMKwFf" type="text" value="" data-error-state="true" aria-invalid="true">
Hello Ivan,
Thank you for the HTML, that confirms it. Those fields have no name attribute, and their id values change on every session, so neither can be used as an HTML control ID. Automatic mode also doesn’t support an OTP step.
The attributes that stay the same on Veeam’s page are aria-label / placeholder (e.g. “Type in the code”). I’ve asked our development team whether the HTML control ID field can target a field by one of those attributes instead of its id. I’ll get back to you with their answer. If it isn’t supported, I’ll log a feature request for it.
Best regards,
Carl Marien
Hello Ivan,
Our development team got back to me. The HTML control ID fields accept an element’s id, name or class name. Placeholder and aria-label values aren’t supported. The OTP field on the Veeam page has a class that stays the same between sessions, so we can use that:
In the entry, under Login → HTML control ID:
Username ID: [USERNAME]
Password ID: [PASSWORD]
One time password ID: gMKwFf
Login button ID: [Enter]
Keep the OTP set up under General → One-time password (OTP). In our test with a page built like the Veeam login, opened in the embedded browser, the code was filled in.
Veeam generates that class name automatically, so a future Veeam update could change it. If the OTP stops filling, inspect the code field again and use the new last class in its class="…" value.
Could you try it and let me know if it works on your appliance?
Best regards,
Carl Marien