我有一个PowerShell脚本,使用Microsoft的Graph API成功更新用户的照片:
$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'
这对我来说效果很好,而且比EXO powershell命令更好:Set-UserPhoto,因为有些用户还没有迁移到O365,如果还没有迁移到O365,Set-UserPhoto也会失败。所以Graph API一直很适合我,但现在我需要做以下事情:
如何使用Graph API删除用户的照片?
基本上我正在寻找与Remove-UserPhoto相同的功能,但它需要适用于所有用户,包括那些尚未迁移到O365的用户。有没有办法使用'删除'图中的方法?或者将照片更新为空值?
答案 0 :(得分:0)
不幸的是,Microsoft Graph不支持此操作。因此,这意味着用户只能更新他们的照片,而不能删除。我正在研究是否可以采取行动提供DELETE功能。
与此同时,(令人讨厌的)解决方法是上传透明的1x1像素大小的图片。
希望这有帮助,