Background
Recovery tokens are available for agent and plugin backups. They allow for easy and secure access to backups within repositories from a remote system, without the need to allow access to the full repository via credentials.
To keep things easy, Veeam decided to have a fixed timeout for these tokens of 24h once created. This is usually sufficient for most recovery cases. So, the token is delivered to the workload owner and he can recover his - and only his - workload within these 24h.
Creating Recovery Token - Veeam Agent Management Guide
Creating Recovery Token - Veeam Plug-ins for Enterprise Applications
Challenge
We recently faced the challenge to recover a large SAP-HANA system of more than 10TB database size. From the repository used (a Dell DataDomain in our case) the recovery took more then 24h. Therefore, the recovery will fail, as the token times out during the recovery.
Solution
There is no way to have VBR create longer valid tokens from the GUI. But there are PowerShell (PS) commands that can create tokens with longer validity or even change the validity timeout for existing tokens.
Working with Tokens - Veeam Backup & Replication Veeam PowerShell Reference
Helpcenter currently falsely states, that the process within PS is only valid for agent backup for bare-metal recoveries.


This is not correct. I found out that it (fortunately😎) also works for enterprise plugins.
The process to prolong the validity is fairly easy. First, get all currently active tokens and put them into an array (e.g. $token) using “Get-VBRComputerRecoveryToken”. Also, we could directly set an expiration date in the correct format using “Get-Date”. $token will show the full array:

We can see four tokens currently valid. Let’s assume we would like to increase the validity of the SAP-HANA backup of solman01 in the example. This is the fourth item in the list. As it starts with [0], $token[3] will be our token:

Using “Set-VBRComputerRecoveryToken”, we can now easily set the new timeout for just this element and check the new validity timeout with “Get-VBRComputerRecoveryToken” right away:

Mission accomplished. The timeout is increased.
You can even create tokens from scratch programatically using PS.
Add-VBRComputerRecoveryToken - Veeam Backup & Replication Veeam PowerShell Reference
This also works with tokens for Enterprise Plugins. You just have to find the correct backup object beforehand using:
Get-VBRBackup - Veeam Backup & Replication Veeam PowerShell Reference
Here, the correct and full name of the plugin backup has to be provided.
Maybe, this helps others as well. For me, it helped a lot. 😀
