1

ich einen Powershell-Skript, das erfolgreich von Microsoft Graph-API verwendet, um ein Foto des Benutzers zu aktualisieren mit:Microsoft Graph API, Exchange Online-Benutzer Foto entfernen

$photo = ([byte[]](Get-Content 'C:\UpdatePhotos\some_photo.jpg' -Encoding byte)) 
Invoke-RestMethod -Headers @{Authorization = "Bearer $access_token"} -Uri "https://graph.microsoft.com/beta/users('$email_address')/photo/`$value" -Method Put -Body $photo -ContentType 'image/jpeg' 

Dies funktioniert gut für mich und besser als der EXO Powershell-Befehl: Set-UserPhoto, weil einige Benutzer noch nicht nach O365 migriert wurden und Set-UserPhoto fehlschlägt, wenn sie noch nicht nach O365 migriert wurden. Also die Grafik-API hat gut für mich funktioniert, aber jetzt muss ich Folgendes tun:

Wie entferne ich ein Foto eines Benutzers mit Graph API?

Im Wesentlichen bin ich auf der Suche nach dem Äquivalent zu Remove-UserPhoto, aber es muss für alle Benutzer funktionieren, einschließlich derjenigen, die noch nicht zu O365 migriert wurden. Gibt es eine Möglichkeit, die "Delete" -Methode in Graph zu verwenden? Oder vielleicht das Foto auf einen leeren Wert aktualisieren?

Antwort

0

Leider wird diese Operation nicht von Microsoft Graph unterstützt. Das bedeutet, dass Benutzer ihre Fotos nur aktualisieren, aber nicht löschen können. Ich überlege, ob wir etwas tun können, um eine DELETE-Funktion anzubieten.

In der Zwischenzeit ist die (böse) Problemumgehung, ein transparentes Bild mit 1x1 Pixelgröße hochzuladen.

Hoffe, dass dies hilft,

+0

Vielen Dank für Ihre Antwort. Ich habe versucht, ein 1x1 transparentes GIF und 1x1 PNG hochzuladen, aber es hat nicht gedauert. Ich denke, es akzeptiert nur JPG, was meiner Meinung nach keine Transparenz unterstützt. Wenn ich falsch liege, korrigiere mich bitte. Außerdem schien ein 1x1-Weiß-JPG fehlzuschlagen, da ich denke, dass eine Mindestgröße erforderlich ist. –

Verwandte Themen