Microsoft Graph API ve PowerShell ile Teams Kanal Depolamasını Raporlama


Microsoft Teams'in ekip üyeleri arasında paylaşılan dosyaları depolamak için SharePoint Online'ı kullandığı bir sır değil. Her ekibin Microsoft 365 grubuna ait SharePoint Online sitesinde bir belge kitaplığı vardır ve yeni bir kanal oluşturulduğunda belge kitaplığı içinde o kanal için bir klasör oluşturulur.

Varsayılan olarak kanal klasörünün adı kanalla aynıdır. Ayrıntılar, Exchange Online veya PnP PowerShell kullanılarak kolayca alınabilir. Ancak bir kanalın adı değiştirildiğinde işler daha da karmaşık hale gelir.

Adda ne var?

Şu anda, bir kanal yeniden adlandırıldığında, klasörü değişmiyor (ama yakında değişeceğini umuyoruz!), bu da kanal klasörünü bulmayı daha da zorlaştırıyor. Özel kanallar, ilişkili SharePoint Online siteleri nedeniyle başka bir karmaşıklık katmanı oluşturur.

Teams kullanan büyük kuruluşlarda bu verileri raporlamak ve daha sonra taşımak son derece zordur. Teams'in SharePoint'i nasıl kullandığını haritalamaya yardımcı olmak için Teams kanallarını ve SharePoint konumlarını bir CSV dosyasında raporlamak üzere basit bir Graph API/PowerShell betiği oluşturdum (komut dosyasını GitHub'dan buradan indirebilirsiniz). Her kanal aşağıdaki bilgileri bildirir:

  • Ekip Kimliği - Ekibin/Grubun Azure AD nesne kimliği
  • Takım Adı - Takımın adı
  • Kanal Adı - Kanalın adı
  • Kanal Türü - Kanalın standart mı yoksa özel mi olduğu
  • SharePoint URL'si - Klasör yolu da dahil olmak üzere Teams Kanalı depolama konumunun URL'si
  • Kullanılan Depolama (Bayt) - Klasörün geçerli depolama boyutu

Bu makalede size adımları anlatacağım ve raporu kendiniz nasıl çalıştırabileceğinizi göstereceğim.

Uygulama Kaydı Oluşturma

Söz konusu komut dosyası Graph API kullandığından sorgularımızı Doğrulamak ve Yetkilendirmek için Uygulama Kaydına ihtiyacımız var. Kayıtlı uygulamayı kurmak için daha önce başka bir Grafik tabanlı komut dosyası için yazdığım bu makaleye başvurmak isteyeceksiniz.

Bunu yaptıktan sonra, Şekil 1'de gösterildiği gibi bu komut dosyası için Uygulama izinlerini vermeniz gerekir:

Komut Dosyasını Çalıştırma

Betiği çalıştırmak için yerel makinenize indirmeniz ve aşağıdaki parametreleri sağlayarak PowerShell'de çalıştırmanız gerekir:

  • ClientID - Uygulama Kaydının Uygulama (İstemci) Kimliği
  • TenantID - Azure AD Kiracılığınızın Dizin (Kiracı) Kimliği
  • ClientSecret - Uygulama Kaydınız için Oluşturulan Müşteri Sırrı
  • CSVPath - CSV çıktısının yolu ve adı

Yukarıdaki bilgilerle, komut dosyası aşağıda gösterildiği gibi bir komut kullanılarak çalıştırılabilir:

.\graph-Generate-Teams-Storage-Report.ps1 -ClientSecret $ClientSecret -ClientID $clientID -TenantID $TenantID -CSVPath ChannelReport.csv

Komut dosyası başarıyla çalıştırılırsa çıktı olmaz ancak olağanüstü büyük ortamlar için her zaman kendi ilerleme çubuğunuzu ekleyebilirsiniz.

Çıktıyı Gözden Geçirin

Komut dosyası bittiğinde, çıktı dosyasında, ilgili klasör/kitaplık konumu ve kullanılan depolama dahil olmak üzere her Ekip ve her Kanal için bir satır girişi gösterilmelidir. Bu CSV formatında olduğundan filtrelenmesi kolaydır, gerekirse sıralanabilir ve daha gelişmiş analizler gerçekleştirmek için Excel Elektronik Tablosu olarak kaydedilebilir.

Kanal Adı ve Türünün "Yok" olarak göründüğü durumlarda giriş, belirli bir kanal yerine Ekip içindir. Ne bekleyeceğiniz konusunda bir fikir edinmek için Şekil 3'teki örnek çıktıya göz atın:

Özet

Bu komut dosyası basittir ve gizli olmasa da, diğer araçları kullanmaya çalışırken harmanlanması zahmetli olabilecek bilgiler sağlar.

Bu bilgiler, bulut depolama alanınızı, Teams kullanımınızı denetlerken veya yalnızca geçişe hazırlanırken potansiyel olarak çok değerli hale gelebilir. Bilgiyi almanın hızlı ve karmaşık olmayan bir yoluna sahip olmak hayatı ÇOK kolaylaştırabilir.

Çıktıda eksik olan herhangi bir şey olursa, onu eklemek için betiği özelleştirebilirsiniz. Her zaman olduğu gibi, herhangi bir kodu çalıştırmadan önce ve üretim ortamınızda önceden test ettiğinizden emin olun, böylece ne yapacağını tamamen anlayabilirsiniz.

İlgili makaleler