Eventuell muss man eine „Veeam for O365“ Lizenz einem neuen Benutzer zuweisen, also von einem Office 365 Account entfernen. Da das nicht so ohne Weiteres geht, hier eine kleine Anleitung.
Nachdem man einen Benutzer festgelegt hat, den man entfernen kann oder muss, wartet man die 31 Tagen nach dem letzten Backup des betreffenden Benutzers ab oder entfernt die Lizenz wie hier beschrieben manuell. Übrigens wird die Lizenz aus dem „Pool“ der verfügbaren Lizenzen automatisch entnommen, sobald eine frei ist und der Backup Job gestartet wurde. Nach dem Starten des Jobs erscheint die Lizenz beim „neuen“ Benutzer zunächst als „TemporaryAssigned“ und wechselt erst nach erfolgreichem Backup in den Status „Licensed“
Voraussetzungen
Die wichtigste Voraussetzung, es dürfen keinerlei Backup Daten dieses Users mehr existieren, bzw. muss man diese vorab entfernen. Je nach Einstellungen, können hierbei mehrere „Typen“ von Backups existieren. Im Regelfall sind dies Email (also die Exchange Online Mailbox und ggfs. das Mailarchiv), Sharepointdaten oder OneDrive Backups. Schau man sich das Repository eines Veeam for Office 365 Backups einmal an, wird man entdecken, dass man nicht einfach die daten eines Benutzers „entfernen“ kann. Deshalb müssen wir hierfür etwas tiefer unter die Haube.
Zunächst gilt es also herauszufinden, welche Backups des betreffenden Users noch vorhanden sind, um diese dann zu entfernen.
Nehmen wir für sämtliche Code Beispiele also an, die betreffende Veeam O365 Organisation (also die, welche in Veeam for O365 gesichert wird) hat den Namen contoso.onmicrosoft.com und der betreffende Benutzer hat den Benutzernamen john.doe@contoso.onmicrosoft.com und genau diese Lizenz möchten wir freigeben, um sie einem anderen Benutzer zuzuweisen, was übrigens automatisch passiert, sobald dieser Benutzer zum Backup Job hinzugefügt wurde und dieser Job erstmalig danach startet. Insofern muss der „neue“ Benutzer also nur dem Backup Job hinzugefügt werden.
Hinweis: Der Benutzer john.doe@contoso.onmicrosoft.com muss natürlich aus dem Job entfernt werden, sonst war das alles hier für die Katz…
Backup Daten des Benutzers finden
Dazu Veeam Konsole öffnen und dann das Veeam PowerShell Toolkit starten, denn nur so geht’s…
Zuerst schauen wir uns mal an, ob unser Benutzer überhaupt lizenziert ist und schreiben den betreffenden Benutzernamen, die Veeam O365 Organisation und auch das Repository, in welchem die Backup Daten der O365 Organisation gespeichert sind, gleich in Variablen, damit wir die nicht 100 Mal tippen müssen.
Anfangen kann man damit, dass man sich zunächst mal alle Organisationen, die man mit Veeam for O365 verbunden hat, auflistet:
Get-VBOOrganization
Hier erscheint dann in einer Zeile vermutlich die Organisation contoso.onmicrosoft.com. Ist das nicht so, sollte man nochmal genau prüfen, zu welcher Organisation unser John Doe eigentlich gehört.
Erscheint die Organisation in der Liste, schreiben wir sie in eine Variable namens org:
$org = Get-VBOOrganization -Name "contoso.onmicrosoft.com"
Damit hätten wir mal die Organisation, jetzt schreiben wir den Benutzernamen von John Doe noch in eine zweite Variable names john…
$john = Get-VBOLicensedUser -Organization $org -Name "john.doe@contoso.onmicrosoft.com"
… und lassen uns den Inhalt der Variable anzeigen:
$john
Jetzt noch die Variable für das Repository. Den Namen REPOSITORY ersetzt man durch den Namen, der im Veeam for O365 Job, als Zielrepository für die o.g. Organisation festgelegt ist. Man kann sich hierbei zunächst mal alle Repositories auflisten lassen, um das richtige zu finden.
Get-VBORepository | ft name,Path
Hat man das Richtige gefunden, schreibt man dessen Namen in eine Variable…
$repo = Get-VBORepository -Name "REPOSITORY"
Ok, schauen wir uns jetzt an, wo der User noch Daten liegen hat. Dazu führen wir folgende Befehle Zeile für Zeile aus:
$repo = Get-VBORepository -Name "REPOSITORY" $userdata = Get-VBOEntityData -Type User -Repository $repository -Name "john.doe@contoso.onmicrosoft.com" $userdata
jetzt sollte eine Übersicht erscheinen, in welcher gelistet ist, welche Backup Daten von John Doe existieren…
Backup Daten des Benutzers löschen
Nachdem wir nun wissen, welche Backup Daten existieren, wollen wir diese löschen und gehen dazu wie folgt vor…
Backup des Typs „Email“ löschen
folgender Befehl löscht die Backups der kategorie „Email“ des Benutzers und wir verwenden dafür die bereits oben befüllte Variablen zum Repository ($repo) und den Userdaten ($userdata):
Remove-VBOEntityData -Repository $repo -User $userdata -Mailbox -ArchiveMailbox -OneDrive -Sites
Die folgende Abfrage noch einem „Y“, also „Ja“ beantworten und die Daten werden gelöscht…
Das Ergebnis der Aktivität kann man sich übrigens jetzt auch in der GUI anschauen und erkennt hier, dass die Warnung einer nicht existenten Archiv Mailbox im Backup geschuldet ist.
Backup des Typs „Sharepoint“ löschen
Sollte auch ein backup des Typs „Sharepoint“ existieren, löscht man dies wie folgt…
Zunächst muss nun eine Variable $usersitedata befüllt werden, denn diese haben wir noch nicht definiert. Hierfür benötigen wir den Titel der Site, den wir uns für das bekannte Repository wie folgt anzeigen lassen:
Get-VBOEntityData -Type site -Repository $repo | sort-object Title
Jetzt definieren wir die Variable, weil wir den Titel der site nun kennen…
$usersitedata = Get-VBOEntityData -Type site -Repository $repo -name "John Doe"
… und löschen diese Daten mit diesem Befehl:
Remove-VBOEntityData -Repository $repo -Site -OneDrive $usersitedata
Backup des Typs „OneDrive“ löschen
Sollten noch Backups des Typs „OneDrive existieren, werden wir eine neue Variable namens $useronedrivedata definieren, befüllen und für das Löschen verwenden. Auch hier benötigen wir den „Titel“, den wir bereits oben herausgefunden haben:
$useronedrivedata = Get-VBOEntityData -Type User -Repository $repo -Name "John Doe"
Jetzt löschen wir die OneDrive Backup Daten, indem wir den Parameter -OneDrive angeben…
Remove-VBOEntityData -Repository $repo -User $useronedrivedata -OneDrive
Nach einem bestätigenden „Y“ werden auch diese Daten gelöscht.
Auch diesen Vorgang kann man natürlich in der GUI validieren…
Lizenz des Benutzers entfernen
Nachdem man nun alle Daten gelöscht hat, kann man die Lizenz des Benutzers freigeben. Hierfür verwenden wir eine Variable, welche wir mit den Parametern Organisation und dem Benutzernamen befüllen, …
$licensedUser = Get-VBOLicensedUser -Organization $org -Name "john.doe@contoso.onmicrosoft.com"
… um diese dann mit diesem einfachen Befehl zu löschen:
Remove-VBOLicensedUser -User $licensedUser
Jetzt gilt es natürlich, den Benutzer noch aus dem Backup Job zu entfernen. Nur so kann ein neuer Benutzer zum Job hinzugefügt und erfolgreich gesichert werden.