public override void ExecuteCmdlet()
        {
            ExecutionBlock(() =>
            {
                base.ExecuteCmdlet();

                ResourceIdentifier resourceIdentifier = new ResourceIdentifier(VaultId);
                string vaultName         = resourceIdentifier.ResourceName;
                string resourceGroupName = resourceIdentifier.ResourceGroupName;

                PsBackupProviderManager providerManager = new PsBackupProviderManager(
                    new Dictionary <Enum, object>()
                {
                    { VaultParams.VaultName, vaultName },
                    { VaultParams.ResourceGroupName, resourceGroupName },
                    { RestoreBackupItemParams.RecoveryPoint, RecoveryPoint },
                    { RecoveryPointParams.FileDownloadLocation, Path }
                }, ServiceClientAdapter);

                IPsBackupProvider psBackupProvider = providerManager.GetProviderInstance(
                    RecoveryPoint.WorkloadType, RecoveryPoint.BackupManagementType);
                var response = psBackupProvider.ProvisionItemLevelRecoveryAccess();

                WriteDebug(string.Format("Mount Script download completed"));

                WriteObject(response);
            }, ShouldProcess(RecoveryPoint.ItemName, "Downloading script"));
        }