Microsoft Graph PowerShell ile Kullanıcı Fotoğrafları Nasıl Güncellenir?


Microsoft 365'teki kullanıcı profili fotoğraf yönetimi, kuruluşunuzun hizmetlerinde tüm kullanıcıların profesyonel bir şekilde temsil edilmesini sağlamak için gerekli bir görevdir.

Bu eğitimde, Microsoft Graph PowerShell ile kuruluşunuzdaki diğer kullanıcılar için kullanıcı fotoğraflarını Microsoft 365'e nasıl yükleyeceğinizi göstereceğim.

Kullanıcı fotoğraflarını neden manuel olarak güncellemelisiniz?

Bazı kuruluşlar, kurumsal Microsoft 365 hesapları için son kullanıcıların kendi profil fotoğraflarını yüklemelerine izin vermeyi tercih etse de bu, çoğu zaman kullanıcıların tutarsız veya profesyonel olmayan fotoğraflar yüklemesine yol açabilir.

İşletme sahipleri, yöneticilerin kuruluşlarındaki kullanıcılar için profil fotoğrafları yüklemesine olanak tanıyarak, tüm kullanıcı fotoğraflarının şirketin markasıyla tutarlı olmasını ve profesyonel kalmasını sağlayabilir.

Bu görev için Microsoft Graph PowerShell'in kullanılması, yöneticilerin bu süreci, kullanıcı katılım aşamasındayken veya gelecekte herhangi bir zamanda tek veya birden fazla kullanıcı için otomatikleştirmesine olanak tanır.

Gereksinimler

Microsoft 365'te kullanıcıların profil fotoğraflarını güncellemek için Microsoft Graph PowerShell kullanma gereksinimleri aşağıdaki gibidir:

  • Microsoft Graph PowerShell modülleri kuruludur (en az sürüm 2).
  • Genel Yönetici hakları (Microsoft Entra'daki uygulamalara izin vermek için)

Kuruluşunuzdaki diğer kullanıcıların fotoğrafını güncellemek, Microsoft Graph PowerShell ile Yetki Verilen izinlerle yapılabilen kullanıcı yönetimiyle ilgili diğer görevlerin çoğundan farklı olarak Microsoft Graph ile Uygulama izinleri gerektirir. Bu, oldukça basit olan bu görevin tamamlanmasına başka bir karmaşıklık düzeyi ekler ve dolayısıyla sonraki adımlarda Hizmet Sorumlusu kullanıcısı olur.

Microsoft Graph PowerShell ile bir kullanıcının fotoğrafı nasıl güncellenir

Microsoft Graph PowerShell kullanarak kuruluşunuzdaki diğer kullanıcılar için Microsoft 365 fotoğrafını güncellemek üzere aşağıdaki adımları izleyin.

1. Microsoft Entra'ya yeni bir uygulamayı (Servis Sorumlusu) kaydederek başlayın. Bu, ona bağlanmanıza ve kullanıcı fotoğraflarını güncellemek için uygulama izinlerini kullanmanıza olanak tanır. Yeni bir uygulamayı kaydetmek, izinleri atamak ve istemci sırrı oluşturmak için aşağıdaki gönderide yazdığım adımları izleyin: Microsoft Entra'da bir uygulamayı kaydedin.

Hizmet Sorumlunuza atamanız gereken izin şu şekildedir: User.ReadWrite.All.

2. Yukarıdaki adımları izleyerek Hizmet Sorumlunuzu hazırladıktan sonra istemci sırrınızla PowerShell'de Microsoft Graph'a bağlanın.

$ApplicationId = "Value"
$SecuredPassword = "Value"
$tenantID = "Value"

$SecuredPasswordPassword = ConvertTo-SecureString `
-String $SecuredPassword -AsPlainText -Force

$ClientSecretCredential = New-Object `
-TypeName System.Management.Automation.PSCredential `
-ArgumentList $ApplicationId, $SecuredPasswordPassword

Connect-MgGraph -TenantId $tenantID -ClientSecretCredential $ClientSecretCredential

Bağlandıktan sonra oturumumun içeriği şöyle:

3. Yüklemek istediğiniz profil görselinin doğru boyutta olduğundan emin olun. Microsoft, 648 x 648'e kadar profil resmi boyutlarını destekler. Görüntünüzün en yüksek kalitede görüntülendiğinden emin olmak için izin verilen maksimum boyutları kullanmanızı öneririm. Görüntünüzün boyutlarını kontrol etmek için, Dosya Gezgininizde görüntüyü sağ tıklayın, Özellikler'i ve ardından Ayrıntılar sekmesini tıklayın.

4. Artık fotoğrafınızı yüklemeye hazırsınız, Set-MgUserPhotoContent cmdlet'ini kullanın ve hedef kullanıcının Kullanıcı Adını ve hedef fotoğrafın yerel cihazınızdaki konumunu sağlayın.

Set-MgUserPhotoContent -UserId [email  -InFile `
C:\temp\userphoto.png

5. Kullanıcıyı Microsoft Entra yönetim merkezinden kontrol ederek fotoğrafın başarıyla yüklendiğini doğrulayın.

Birden fazla kullanıcının fotoğrafını güncelleme

Set-MgUserPhotoContent cmdlet'i aynı anda birden fazla kullanıcının fotoğrafını güncellemek için bazı PowerShell mantığıyla da kullanılabilir. Bunun arkasındaki fikir, her kullanıcının fotoğrafının adı ve soyadı olarak adlandırılmasını sağlamaktır; daha büyük organizasyonlarda bu, en basit şekilde, her kullanıcının fotoğrafı bir miktar rehberlikle temin etmesi ve yeniden adlandırması ile başarılabilir. Bazı örnek kullanıcı fotoğraflarını aşağıdaki gibi yerel makinemde sakladım.

Ayrıca tüm kullanıcılarımın adını, soyadını, kullanıcı adı son ekini ve resim dosyalarının konumunu içeren bir CSV listesine de sahibim. Aşağıdaki örneğim için, etki alanı son ekini KullanıcıAdı sütunundan kaldırdım, ancak verileriniz için bunun eklendiğinden emin olun.

Aşağıda, kullanıcı bilgilerini içeren CSV dosyasını içe aktaracak ve Microsoft 365'te profil fotoğraflarını ayarlamak için her kullanıcı arasında geçiş yapacak basit bir temel komut dosyası bulunmaktadır. Ayrıca, komut dosyasının güncelleştiremediği kullanıcıların bir listesini oluşturmak için bazı temel hata işleme yöntemleri de vardır. için resim.

$Users = Import-CSV c:\temp\userlist.csv
$failed = [System.Collections.Generic.List[Object]]::new()

ForEach ($user in $users){
    Write-host "Setting user profile for $($user.UserName)"
    Try{
        Set-MgUserPhotoContent -UserId $user.username -InFile $user.photo
    } catch {
        Write-host "Unable to set photo for $($user.UserName)"
         $failed.Add($user.UserName)
    }
}

Write-host "Unable to set profile for for the following users: `n" ($failed -join "`n") -ForegroundColor Yellow

İlgili makaleler