Microsoft Entra PowerShell için en iyi uygulamalar

Bu makalede uygulama kaydı, güvenlik iyileştirmeleri, performans iyileştirmeleri ve bakım stratejilerini içeren Microsoft Entra PowerShell en iyi yöntemlerini uygulamayı öğreneceksiniz.

Bu uygulamaları anlamak, güvenlik risklerini en aza indirmek, performansı iyileştirmek ve sistemleri güncel tutmak için çok önemlidir. Hassas verileri korumak ve herhangi bir kuruluşta sorunsuz işlemler gerçekleştirmek için gereklidir.

Kurumsal uygulama kullanmak yerine uygulama kaydetme

Pazarlama veya yardım masası ekipleri gibi belirli izinlere sahip farklı kullanım örneklerine uyarlanmış kendi uygulamalarınızı kaydedebilirsiniz. Bu yaklaşım daha ayrıntılı izin yönetimine olanak tanır ve bir uygulamanın güvenliği tehlikeye atılırsa güvenlik etkisini en aza indirir. Kayıtlı uygulama oluşturmak için bkz. Özel uygulama oluşturma.

Aşağıdakileri çalıştırarak kaydettiğiniz uygulamayı kullanarak oturum açın:

Connect-Entra -ClientId <your-custom-app-id> -TenantId <your-tenant-id>

ClientId yerine AppId veya ApplicationId takma adlarını da kullanabilirsiniz.

Security

Güvenliği artırmak için uygulamanıza aşağıdaki onay ve yetkilendirme en iyi uygulamalarını uygulayın:

  • En az ayrıcalık uygula: Kullanıcılara ve uygulamalara yalnızca Microsoft Entra kaynağını çağırmak için gereken en düşük ayrıcalıklı izni verin. En az ayrıcalıklı izinleri seçin. Örneğin, uygulama yalnızca şu anda oturum açmış kullanıcının profilini okuyorsa, User.ReadBasic.All yerine User.Read izni verin. İzinlerin tam listesi için bkz. izin başvurusu.

  • Disconnect-Entra kullanma: Bir hesapla ilişkili tüm kimlik bilgilerini ve bağlamları kaldırmak için Her zaman Disconnect-Entra komutunu çalıştırın. Bu cmdlet, artık gerekli olmadığında bağlantıları düzgün bir şekilde temizler ve kapatır. Oturum açık bırakılırsa veya başka biri PowerShell ortamınıza erişirse yetkisiz erişim riskini azaltır.

  • Senaryolara göre doğru izin türünü kullanın: Aynı uygulamada hem uygulama hem de temsilci izinlerini kullanmaktan kaçının. Oturum açmış bir kullanıcının bulunduğu etkileşimli bir uygulama oluşturuyorsanız, uygulamanız temsilci izinlerini kullanmalıdır. Ancak, uygulamanız arka plan hizmeti veya daemon gibi oturum açmış bir kullanıcı olmadan çalışıyorsa, uygulamanızın uygulama izinlerini kullanması gerekir.

  • Uygulama izinleri konusunda dikkatli olun: Kullanıcının ayrıcalıklarını istemeden yükseltebildiği ve yönetici ilkelerini atlayabildiği için, güvenlik ve uyumluluk risklerini önlemek için etkileşimli senaryolar için uygulama izinlerini kullanmaktan kaçının.

  • Uygulamanızı yapılandırırken dikkatli olun: Yapılandırma, uygulama benimseme ve güvenlikle birlikte son kullanıcı ve yönetici deneyimlerini de etkiler. Örneğin:

    • Uygulamanızın adı, logosu, etki alanı, yayımcı doğrulama durumu, gizlilik bildirimi ve kullanım koşulları onay ve diğer deneyimlerde gösterilir. Son kullanıcılarınızın bunları anlaması için bu ayarları dikkatli bir şekilde yapılandırın.
    • Son kullanıcılar veya yöneticiler gibi uygulamanıza kimlerin onay verdiğinizi göz önünde bulundurun ve uygulamanızı uygun şekilde izin istemek üzere yapılandırın.
    • Statik, dinamik ve artımlı onay arasındaki farkı anladığınızdan emin olun.
  • İzinlerin zamanla artmasına dikkat edin - Kayıtlı uygulama için zaman içinde biriken izinleri gözden geçirin.

  • Güvenlik varsayılanları ve Koşullu Erişim'i kullanma - Koşullu Erişim (lisanslı kuruluşlar için) ve güvenlik varsayılanları (lisanssız kuruluşlar için) kullanarak kullanıcıları çok faktörlü Microsoft Entra kimlik doğrulamasıyla koruyun.

  • Microsoft Entra önerilerden - yararlanın Microsoft Entra öneriler özelliği kiracınızın durumunu dikkatle izleyerek güvenli ve sağlıklı kalmasını sağlar. Kullanılan uygulamalar, süresi dolmak üzere olan kimlik bilgileri ve bunların yanı sıra gereğinden fazla ayrıcalığa sahip uygulamalar hakkında görünürlük elde edersiniz.

  • Uygulama oturum açma işlemini yalnızca atanan kimlikler ile sınırlayın - Assignment Required Özellik, yalnızca atanan kullanıcıların oturum açabilmesini sağlayarak uygulamalara erişimi yönetmeye yardımcı olur.

Connect-Entra -Scopes 'Application.ReadWrite.All'
Get-EntraServicePrincipal -Filter "DisplayName eq 'Contoso Demo App'" | Set-EntraServicePrincipal -AppRoleAssignmentRequired $true

Performansta iyileştirmeler

Aşağıdaki uygulamalar, Microsoft Entra PowerShell ile çalışırken performansı iyileştirmenize yardımcı olabilir:

Filtre kullanma

Filtreleme, seçiminizi bir koleksiyonun alt kümesini alacak şekilde sınırlayarak sunucu tarafında yapılır ve bu da gereksiz ağ trafiğini ve veri işlemeyi azaltmaya yardımcı olur.

Get-EntraUser -Filter "startsWith(DisplayName,'Ada')"

Yalnızca gerekli özellikleri seçme

Yalnızca gerekli özellikleri almak için parametresini -Property kullanarak gerekli özellikleri seçme.

Sayfa boyutunu tanımlama

Çok sayıda nesne döndüren istekler için parametresini kullanarak sayfa boyutunu en yüksek değeri -top yükseltin.

Get-EntraUser -All -Top 999

Maintenance

Microsoft Entra PowerShell modülünüzün ve betiklerinizin güncel olduğundan ve en iyi şekilde çalıştığından emin olmak için aşağıdaki bakım en iyi yöntemlerini uygulayın:

Microsoft Entra PowerShell modülünü güncel tutun

Modülünüzü güncel tutmak çeşitli nedenlerle çok önemlidir. İlk olarak, en güncel cmdlet'lere ve işlevlere erişiminiz olduğundan emin olarak en son özelliklerden ve geliştirmelerden yararlanmanızı sağlar. Daha da önemlisi, düzenli güncelleştirmeler güvenlik duruşunuzu geliştirir. Ekibimiz sürekli olarak güvenlik düzeltmeleri ve düzeltme ekleri uygulayarak sistemlerinizi güvenlik açıklarından korumaya yardımcı olur.

İpucu

Microsoft Entra PowerShell'i Azure Otomasyonu kullanıyorsanız, Azure Otomasyonu hesaplarınızdaki PowerShell modüllerini de güncelleştirin.

Update-Module -Name Microsoft.Entra

Modülünüzü güncelleştirdikten sonra eski sürümleri kaldırın.

Get-Help kullanma

Get-Help doğrudan komut satırında kapsamlı belgeler sağlar. Microsoft Entra PowerShell cmdlet'leri, işlevler, betikler ve kavramlar hakkında kullanım örnekleri, kabul edilen parametreler ve çıkış gibi ayrıntılı bilgiler sunar. Get-Help, verimli betik yazımını destekler ve yaygın hataları önlemeye yardımcı olur.

Get-Help Get-EntraUser -Detailed

Hata ayıklama seçeneğini kullanma

-DebugMicrosoft Entra PowerShell ile etkileşim kurarken ayrıntılı tanılama bilgileri sağlayarak sorun gidermede size yardımcı olur. Betiklerinizin tam olarak nasıl çalıştığını ve geliştirme ve test aşamasında ortaya çıkabilecek sorunları anlamanıza yardımcı olabilir.

Get-EntraUser -Top 1 -Debug

Bir günlük dosyasına hata ayıklama çıkış akışı göndermek için şunu kullanın:

Get-EntraUser -Top 1 -Debug 5>> <your-log-filepath>