Microsoft 365 Yönetimi için En İyi On PowerShell ipucu: Birinci Bölüm
giriiş
350 milyondan fazla Office 365 kullanıcısı ve buluta her zamankinden daha fazla odaklanan kuruluşlarla yöneticilerin becerilerini yüksek tutması gerekiyor ve Microsoft 365 ile uğraşırken bu PowerShell anlamına geliyor. PowerShell yalnızca bulut teknolojisi olmasa da modülerliği, PowerShell için açık bir bağlantı noktasına sahip tüm iş yüklerini yönetmesine ve bağlamasına olanak tanır. Bu iki bölümlü seride, Microsoft 365 yöneticilerinin günlük yönetim görevlerini otomatikleştirmesine yardımcı olacak on PowerShell ipucunu inceleyeceğiz. Bu makalede PowerShell ve Microsoft 365 için bazı ipuçları ele alınmıştır. İkinci bölümde PowerShell için daha spesifik ipuçları vereceğim.
Bir: PowerShell Temellerini Öğrenin
PowerShell'i öğrenmek herhangi bir dili öğrenmek gibidir; başarılı olmak için öğrenmenin bir amaca ve iyi bir öğretmene/öğrenme kaynağına ihtiyacı vardır. Yazar için Exchange 2007, PowerShell'in ilk ortaya çıkışıydı ve PowerShell'in kullanılması, sonraki on beş yıllık öğrenimi yönlendiren Exchange yönetimi için bir zorunluluktu. Günümüze hızlı bir şekilde ilerleyelim ve yöneticiler artık PowerShell'i çeşitli Microsoft 365 iş yükleriyle kullanıyor. Peki bir yönetici bu yeni dili nasıl öğrenir?
- Dile ilişkin temel kavramları öğrenmek için PowerShell kitapları ve bloglar (Practical365.com), YouTube videoları ve çevrimiçi kurslar gibi çevrimiçi kaynaklar aracılığıyla temel bilgileri öğrenin. PowerShell'de değişkenler (ve değişken türleri), işlevler, yorum yapma, fiillerin/isimin önemi ve daha fazlası gibi temel kavramları kapsadığınızdan emin olun. PowerShell Hızlı Referansları da ücretsiz ve kullanışlıdır.
- Cmdlet'lerin nasıl çalıştığını daha iyi anlamak ve geri bildirim sağlayan ve değişiklik yapmayan Get-Command cmdlet'leri üzerinde yoğunlaşmak için güvenli bir ortamda temel bilgileri uygulayın (ör. bir test kiracısı oluşturup kullanın).
- Açıklayıcı PowerShell, Pester ve PS Script Analizörü gibi kodu öğrenmenize/oluşturduğunuz kodu analiz etmenize yardımcı olacak ücretsiz araçlardan yararlanın.
- Bu özelliği destekleyen cmdlet'ler için -WhatIf anahtarını kullanın. Bu, kodunuzu kuru çalıştırmanıza ve kodu gerçek anlamda çalıştırmadan önce hataları yakalamanıza yardımcı olacaktır.
- Kabuğun içindeki Get-Help'i kullanın veya PowerShell'in cmdlet'lerini/kavramlarını aramak için Microsoft Docs'u kullanın. Çevrimiçi PowerShell belgelerindeki 'about_xx' kavramlarını da inceleyin.
- Uzman tavsiyesi veya fikirleri için PowerShell Forumlarını inceleyin: PowerShell.Org,
- Örnek kod ve PowerShell senaryolarına erişmek için Practical365.com'un geniş kaynaklarından yararlanın.
En önemlisi PowerShell için bir kullanım örneği bulun. PowerShell dilini öğrenmek, Exchange Online Posta Kutularını yönetmek, OneDrive'dan öğeleri kaldırmak veya Koşullu Erişim İlkelerini yönetmek gibi gerçekleştirilmesi gereken bir amaç veya istenen görev olduğunda büyük ölçüde geliştirilir. Her şeyden önce, diğer dillerde, insan veya bilgisayar kodlarında olduğu gibi pratik yapın, pratik yapın, pratik yapın.
Microsoft 365'e bağlanmayı kolaylaştırmak için Microsoft MVP Michel de Rooij'in hazırladığı bu komut dosyasına göz atmayı unutmayın.
İki: Microsoft 365 için PowerShell Modülleri
PowerShell modülleri, yöneticilere Microsoft 365'teki iş yüklerini yönetebilecekleri araçları sağlar. Modülleri yüklemek ve onları güncel tutmak önemli bir görevdir. İlk olarak, bazı yaygın Microsoft 365 PowerShell modüllerini burada bulabilirsiniz:
- Azure veya Az: Microsoft Azure bileşenlerini yönetir ve birçok alt modülden oluşur.
- Exchange Online Yönetimi: Exchange Online'ın tüm yönlerini yönetin.
- Microsoft Teams: Çok genişletilmiş bir modül, bir kiracıdaki Teams'in yönetilmesine yardımcı olabilir.
- SharePoint: SharePoint Online veya OneDrive'ı yönetmek için.
- Microsoft Graph: Kiracı verilerine doğrudan erişim sağlayan önemli bir modül.
Update-Module cmdlet'ini kullanarak modüllerinizi düzenli aralıklarla güncel tutmayı unutmayın. Üretim sorunlarını azaltmak için modüllerin Önizleme sürümlerini dikkatli bir şekilde ve test makineleri/ortamlarıyla kullanın.
Active Directory için Siber Güvenlik Risk Yönetimi
Bu Siber Güvenlik Risk Yönetimi Çözümleri aracılığıyla AD saldırılarını nasıl önleyeceğinizi ve bu saldırılardan nasıl kurtulacağınızı keşfedin.
Üç: Microsoft 365 İş Yüklerini Belgelemek
Sistemler buluta geçtikçe, bulut sistemleri genellikle yöneticilerin takip etmesi gereken çok sayıda yapılandırılabilir seçenek ve ayara sahip olduğundan güncelleme ve belgeleme hala önemlidir. Belgeleme sistemleri, yararlı verileri çıkarmak için bir dizi araç kullanabilir. Bazı raporlar Microsoft 365 yönetim portallarında bulunurken PowerShell betikleri periyodik olarak çalışır ve Microsoft'un sunmadığı anlık veya odaklanmış raporlar oluşturabilir.
Microsoft 365 iş yüklerine yönelik doğru ve ayrıntılı belgeler, desteklenebilirlik sağlar ve gelecekteki sorun giderme çabalarını geliştirir. Ayrıca destek personelinin yapılandırmayı ve yeteneklerini anlamasına da yardımcı olur. Uygun belgelerle Yardım Masası ve diğer destek personeli için çalıştırma kitapları oluşturulabilir. Ayrıca, uygun belgeler, güvenlik ayarlarının paylaşılması ve doğrulanması daha kolay olacağından denetimleri daha az zahmetli hale getirebilir.
İpuçları
- Get cmdlet'lerinin varsayılan çıktısına güvenmeyin, çünkü bu çıktı ilginç veya belgeleme için gerekli bilgileri açığa çıkarmayabilir. Örneğin, Get-EXOMailbox | ft yalnızca bilgi vermeyen HariciDirectoryObjectID, UserPrincipalName ve Alias'ı gösterir.
- Get cmdlet çıktısından raporlar/tablolar oluşturun ve anlamlı veriler toplamak ve doğru çıktı için işlem yapmak amacıyla biçimlendirme ve özellik seçimini kullandığınızdan emin olun.
- Azure Otomasyonunu kullanarak bu raporları en az üç ayda bir, hatta daha sık güncelleştirdiğinizden emin olun.
- Erişilebilir hale getirin. Tamamlandığında, desteklenebilirlik için kullanılan PowerShell kodunun yanı sıra bunu ekibinizle paylaşın. Bunu bir Microsoft Ekibine gönderin ve ekip katkıları için kodu GitHub'a gönderin.
- Karmaşık ve tüketilebilir HTML raporlarının oluşturulmasını sağlayan güçlü bir Modül olan PSWriteHTML'yi kullanın. Örnek kullanım burada.
PowerShell ile pratik, kullanışlı belgeler oluşturmaya iyi bir örnek: Microsoft 365 Kiracıdan Kiracıya Geçiş PowerShell Komut Dosyanızı Güçlendirme
Dört: Örnek Kod ve Komut Dosyaları
Tekrarlanabilir görevlerle uğraşırken kodun yeniden kullanılması her zaman tavsiye edilir. Tipik olarak bu, görevleri tamamlamak için kullandığınız komut dosyaları ve cmdlet'lerden/tek satırlık satırlardan oluşan kendi kod tabanınızı oluşturmak anlamına gelir. Bunun ötesinde, başkalarının oluşturduğu kod veya komut dosyalarını kullanmak son derece yararlı olabilir ve zaman kazandırabilir. Bu türdeki komut dosyaları meslektaşlarınızdan, saygın kodlayıcılardan (Microsoft MVP'ler gibi) ve yöneticilere yardımcı olmak için komut dosyaları yazan Microsoft mühendislerinden gelebilir. Bazı örnek komut dosyaları aşağıda listelenmiştir:
Microsoft Komut Dosyalarına Örnekler
- ORCA: Bir kiracı için daha iyi posta hijyeni ayarlarına ilişkin bilgiler sağlayan Office 365 En İyi Uygulamalar analizi için Defender.
- CAMP: Microsoft Purview için Yapılandırma Çözümleyicisi ve uyumlulukla ilgili en iyi uygulamaları denetlemek için kullanışlıdır.
- Posta kutusu izinleri: Posta kutularını Exchange Online'a taşımak, birbirine bağlı posta kutusu izinleri hakkında bilgi gerektirir ve bu komut dosyası, izin ara bağlantılarını açığa çıkarır. Daha iyi bir kullanıcı deneyimi sağlamak için posta kutusu grupları oluşturulur.
Üçüncü Taraf Komut Dosyalarına Örnekler
- Paylaşılan Posta Kutuları için Lisans Denetimi: Belirli koşullar, Paylaşılan Posta Kutularının bir lisansa sahip olmasını gerektirir ve bu komut dosyası, Exchange Online'da bir keşif gerçekleştirebilir.
- Özel Ekip ve Üye Kimliği: Özel Ekip kanallarını ve üyeliklerini tanımlamak için bu komut dosyasını kullanın.
- .. Ve çok daha fazlası BURADA …
İpucu: Bu komut dosyalarını favori PowerShell düzenleme aracınızda (Visual Code Studio gibi) açın ve sağlanan kodu inceleyin. Başkalarının nasıl kod yazdığını öğrenmek, kodlama becerilerinizi geliştirmenize ve Microsoft 365'i yönetmek için PowerShell'i kullanma becerilerinizi geliştirmenize yardımcı olabilir.
Beş: Microsoft Graph PowerShell Modülü
Ocak 2020'de tanıtılan Microsoft Graph PowerShell modülü, Exchange, SharePoint ve daha fazlasını içeren Microsoft 365'teki uç nokta dizisine erişim sağlar; Kelimenin tam anlamıyla modülün erişebildiği binlerce uç nokta var. Bu uç noktalara erişim, tümü birleştirilmiş 4500'den fazla komutun yer aldığı düzinelerce alt modüle yayılmıştır. Yalnızca Planner gibi belirli bir alt kümedeki cmdlet'lerle çalışmak için bunları şu şekilde listeleyebiliriz:
Get-Command -Module Microsoft.Graph* *Planner*Bu tek satırın çıktısı, incelenecek Graph cmdlet'lerinin sınırlı/daha yönetilebilir bir alt kümesini sağlayarak bir görev için cmdlet bulmayı kolaylaştırır.
Neden Kullanmalı?
Güç ve esneklik: Basitçe söylemek gerekirse, Grafik modülü şu açılardan güçlüdür:
- Bağlanabileceği iş yükleri
- Gerçekleştirebileceği eylemler
- Sağladığı güvenlik
Not: Microsoft, Azure AD ve MSOL modüllerini kullanımdan kaldırmaktadır. Birçok kuruluş bu modülleri kullanıcı hesapları ve gruplar gibi Azure AD nesnelerini yönetmek için kullanır. Bu işlemlerin artık Microsoft Graph PowerShell SDK'sındaki cmdlet'ler kullanılarak gerçekleştirilmesi gerekiyor.
Grafik İzinleri
Graph'a bağlanırken PowerShell'in kiracıdaki bilgilere erişmek için bir erişim belirtecine ihtiyacı vardır. Örneğin, Kullanıcılara ve Gruplara Okuma/Yazma erişimi gerekiyorsa bu iki izin bağlantı dizesinde tanımlanır: "Kullanıcı.OkuYaz.Tümü" ve "Grup.OkuYaz.Tümü". Mevcut izinlerin tam listesini burada bulabilirsiniz:
Find-MgGraphPermission -PermissionType AnySDK'yı daha önce kullanmadıysanız Graph SDK uygulamasının izinlerine izin vermeniz istenecektir.
Invoke-MgGraphRequest
*-Mg cmdlet'lerinin yerini alabileceği ve kiracıda doğrudan değişiklikler/sorgulamalar yapabileceği için bu cmdlet'i tanıyın; ancak bu aynı zamanda nesnelere erişmek için gerekli olduğundan bağlantı noktalarını bilmek anlamına da gelir.
İyi Kaynaklar
Graph PowerShell hakkında bazı iyi başlangıç ipuçları için Başlangıç Kılavuzunu ve M365 Geliştirici Blogunu incelediğinizden emin olun.
Microsoft Graph PowerShell SDK'nın örnek kullanımına Practical365 blogunda ulaşılabilir: Birkaç iyi makaleyi saymak gerekirse Grafik ile E-posta Gönderme, Harici Ekip Erişim Yapılandırması ve Lisans Yönetimi.
Özet
Bu beş ipucu, yöneticilerin yalnızca Microsoft 365 kiracılarının yönetimini geliştirmek için değil, aynı zamanda kendi PowerShell bilgilerini derinleştirmelerine ve PowerShell'e daha aşina olmalarına yardımcı olmak için yapabilecekleri birçok şeyden sadece birkaçıdır. Bu ipuçlarını araç kutunuzun etkili bir parçası haline getirmek için çaba gösterin ve zaman ayırın.
Bir araç olarak PowerShell, bu makalede gördüğümüz gibi birçok açıdan faydalıdır. İkinci bölümde, Microsoft 365'te yöneticilerin kullanabileceği beş ipucunu daha ele alacağız.