Microsoft 365 Konuk Kullanıcıları Analiz Etme ve Etkin Olmayan Konuk Hesapları Kaldırma
Microsoft 365, konuk hesapları firma dışından olan kullanıcılardır. Konuk kullanıcılar, Microsoft 365 gruplarına eklenerek grup konuşmalarına, dosyalara, takvim davetlerine, grup notlarına gibi birçok kaynaşa erişebilir ve firmadaki kullanıcılarla işbirliği içerisinde çalışabilir. Konuk kullanıcı erişimleri Bilgi Teknolojileri(BT) çalışanları tarafından ayarlanır. Microsoft Teams başta olmak üzere Microsoft 365 hizmetlerinde konuk kullanıcılar ile ilgili ayarlar yer alır. BT çalışanları konuk kullanıcılar ile ilgili kişi bilgilerini, grupları gibi temel ayarları yapabilir. Konuk kullanıcıları silebilir. Konuk kullanıcıların yönetimi küçük ve ortak ölçekli firmalarda az sayıda konuk kullanıcı olduğu durumlarda yönetilebilir. Ancak fazla sayıda konuk kullanıcının olduğu Microsoft 365 platformlarında yönetim BT çalışanları için zor olabilir. Kimi zaman konuk kullanıcılar ekiplere eklenir ve ekip üyeliklerinden kaldırılır ancak Azure Active Directory’de hala yer alır. Ekiplere eklenen konuk kullanıcılara kısa süreli ihtiyaç duyulabilir gibi birçok nedenden konuk kullanıcıların BT çalışanları tarafından yönetilmesi gerekir. Bunun için belirli zamanlarda raporlar alınarak konuk kullanıcıların durumları analiz edilerek, etkin olmayan kullanıcılar silinebilir.
GitHub’da BT çalışanlarının konuk kullanıcılar ile ilgili analiz için kullanabilecekleri PowerShell komutu ilgili linkte yer almaktadır. Bu komut ile konuk kullanıcıların isimleri, oluşturulma tarihleri, üye oldukları gruplar, oturum açmaları gibi analizde kullanılabilecek birçok bilgi yer alır. Aynı zamanda oluşturulma tarihine göre belirli gün sayısı belirlenerek ve herhangi bir grubun üyesi olmayan konuk kullanıcılar Inactive olarak gösterilerek başka CSV dosyasında raporlanır.
Konuk kullanıcıların raporlamasında kullanılacak PowerShell komutu için öncelikle Azure AD Preview (V2.0.2.138 veya sonraki sürümü) ve Exchange Online (V2.05 veya sonraki sürümü) modülleri yüklenmelidir. Akabinde ilgili komutlar çalıştırılarak bu modüllere bağlantı sağlanır. Raporda kullanılacak komut ilgili linkten kopyalanarak ya da kaydedilerek çalıştırılır. Şekilde de görüldüğü üzere komutun çıktısı olarak belirli istatiksel veriler yer alır. Böylelikle konuk kullanıcılar ile ilgili genel durum hakkında genel bilgi edinilir.
Şekilde de görüldüğü üzere belirlenen parametrelere göre etkin olmayan konuk kullanıcılar belirlenir. Konuk kullanıcının yaşı yani oluşturulduğu tarihten sonra geçen süre değeri ve konuk kullanıcıların grup üyeliği olmadığı durumlarda inactive olarak belirlenmesi sağlanır. BT çalışanları ihtiyaçları doğrultusunda komut içerisindeki parametreleri istedikleri gibi özelleştirebilirler.
Komut başarılı şekilde çalıştıktan sonra varsayılanda C dizinindeki temp klasöründe iki rapor oluşturur. “GuestActivity.csv” dosyasında konuk kullanıcılar ile ilgili detaylı bilgiler yer alır. BT çalışanları bu raporu analiz ederek yönetimsel aksiyonlar alabilir.
“InActiveGuests.csv” dosyasında ise komut içerisinde belirlenen parametrelere göre inactive olarak belirlenen konuk kullanıcıların bilgileri yer alır.
“InActiveGuests.csv” dosyasındaki veriler okunarak BT çalışanları aşağıdaki komut ile inactive konuk kullanıcıları silebilir. Herhangi hata yapılması durumunda silinen kullanıcılar 30 güne kadar tutulacağı için hesap kurtarılabilir. Bu ve buna benzer komutlar kullanılarak biriken konuk kullanıcılar ile ilgili bir nevi bakım ve analizler yapılmış olur.
$GuestAccountsToDelete = Import-CSV c:\temp\InactiveGuests.CSV
ForEach ($Account in $GuestAccountsToDelete)
{Remove-AzureADUser -Object $Account.ObjectId}