Microsoft 365 etkin olmayan kullanıcılar raporunu dışarı aktarma

Etkin olmayan tüm Microsoft 365 kullanıcılarını bulmak istiyorsunuz. Etkinlik olmadığında kullanıcı hesaplarını aktif tutmanın hiçbir faydası yoktur. Etkin olmayan kullanıcı hesapları bilgisayar korsanları için kolay hedef haline gelir ve bu hesapları devre dışı bırakmalısınız. Bu makalede Microsoft 365 etkin olmayan kullanıcılar raporunun nasıl dışarı aktarılacağını öğreneceksiniz.

Etkin olmayan bir Microsoft 365 kullanıcısı, kullanıcının son birkaç gün boyunca oturum açmadığı zamandır. Bu her organizasyon için farklı olabilir. Bazıları, son 60 veya 90 gün içinde oturum açılmadığında etkin olmayan bir hesabın geçerli olduğunu düşünüyor. Bazıları bunun 30 günlük bir süre olduğunu düşünüyor.

İnternet Güvenliği Merkezi (CIS)Desteklendiği durumlarda, 45 günlük hareketsizlik süresinden sonra hareketsiz hesapların silinmesini veya devre dışı bırakılmasını önerir.

Görmek5.3: Aktif Olmayan Hesapları Devre Dışı Bırakma.

Önemli:Son oturum açma tarihini görüntülemek için Microsoft Entra ID P1 veya P2 sürümü lisansına ihtiyacınız vardır.

Microsoft 365 yönetim merkezinde kullanıcının son oturum açma tarihini kontrol etme

Microsoft 365 yönetim merkezinde Microsoft 365 kullanıcısının son oturum açma tarihini denetlemek için şu adımları izleyin:

  1. Oturum açMicrosoft 365 yönetim merkezi
  2. GenişletmekKullanıcılar
  3. TıklayınAktif Kullanıcılar
  4. Şunu seçin:Kullanıcı
  1. TıklayınHesap > Son 30 günü görüntüle
  1. Son oturum açma tarihi, durumu ve hata nedeni (varsa) görüntülenir.

Tüm kullanıcıların son oturum açma durumunu dışa aktarmak isterseniz ne olur? PowerShell kurtarmaya geliyor.

Microsoft 365 etkin olmayan kullanıcıların PowerShell betiğini dışarı aktarma

Export-M365InactiveUsers.ps1 PowerShell betiği, tüm Microsoft 365/Microsoft Entra ID kullanıcılarını alacak ve son oturum açmalarından bu yana kaç gün geçtiğini gösteren bir raporu CSV dosyasına aktaracaktır.

Not:LastSuccessfulSignInDatedeğer 6 saat içinde raporda görünmeye başlayacaktır. Bu mülkün verileri doldurulmaz ve 1 Aralık 2023'ten sonra oturum açma işlemleri kaydedilmeye başlar.

Her kullanıcı için aşağıdaki bilgileri toplar:

  1. İD
  2. KullanıcıPrincipalName
  3. Ekran adı
  4. E-posta
  5. Kullanıcı Türü
  6. Hesap Etkinleştirildi
  7. LastSuccessfulSignInDate
  8. Son Oturum Açmadan Beri Geçen Gün Sayısı
  9. OluşturulmaTarihiSaat
  10. Lisanslıdır

Export-M365InactiveUsers PowerShell betiğini hazırlayın

İki klasör oluşturun(C:)sürmek:

  • Sıcaklık
  • Komut dosyaları

Export-M365InactiveUsers.ps1 PowerShell betiğini indirin ve içine yerleştirin.C:komut dosyalarıdosya. Komut dosyası CSV dosyasını dışa aktaracaktır.C:sıcaklıkdosya.

Komut dosyasını çalıştırırken hataları önlemek için dosyanın engellemesinin kaldırıldığından emin olun. PowerShell betiğini çalıştırırken dijital olarak imzalanmamış hata makalesinde daha fazlasını okuyun.

Diğer bir seçenek de aşağıdaki kodu kopyalayıp Not Defteri'ne yapıştırmaktır. Ona adını verDışa Aktarma-M365InactiveUsers.ps1ve içine yerleştirinC:komut dosyalarıdosya.

<#
    .SYNOPSIS
    Export-M365InactiveUsers.ps1

    .DESCRIPTION
    Export Microsoft 365/Microsoft Entra ID inactive users report.

    .LINK
    www.alitajran.com/export-microsoft-365-inactive-users/

    .NOTES
    Written by: ALI TAJRAN
    Website:    www.alitajran.com
    LinkedIn:   linkedin.com/in/alitajran

    .CHANGELOG
    V1.00, 12/13/2023 - Initial version
    V1.10, 02/26/2024 - Added IsLicensed column
    V1.20, 04/02/2024 - Calculate DaysSinceLastSignIn column from LastSuccessfulSignInDateTime property
#>

# Export path for CSV file
$CSVPath = "C:TempInactiveUsers.csv"

# Initialize a List to store the data
$Report = [System.Collections.Generic.List[Object]]::new()

# Connect to Microsoft Graph API
Connect-MgGraph -Scopes "User.Read.All", "AuditLog.Read.All"

# Get properties
$Properties = @(
    'Id',
    'DisplayName',
    'Mail',
    'UserPrincipalName',
    'UserType',
    'AccountEnabled',
    'SignInActivity',
    'CreatedDateTime',
    'AssignedLicenses'
)

# Get all users along with the properties
$AllUsers = Get-MgUser -All -Property $Properties | Select-Object $Properties

foreach ($User in $AllUsers) {
    # Default values for users who have never signed in
    $LastSuccessfulSignInDate = "Never Signed-in."
    $DaysSinceLastSignIn = "N/A"

    # Check if the user has a successful sign-in date
    if ($User.SignInActivity.LastSuccessfulSignInDateTime) {
        $LastSuccessfulSignInDate = $User.SignInActivity.LastSuccessfulSignInDateTime
        $DaysSinceLastSignIn = (New-TimeSpan -Start $User.SignInActivity.LastSuccessfulSignInDateTime -End (Get-Date)).Days
    }

    # Check if the user is licensed
    $IsLicensed = if ($User.AssignedLicenses) { "Yes" } else { "No" }

    # Collect data in a custom object
    $ReportLine = [PSCustomObject]@{
        Id                       = $User.Id
        UserPrincipalName        = $User.UserPrincipalName
        DisplayName              = $User.DisplayName
        Email                    = $User.Mail
        UserType                 = $User.UserType
        AccountEnabled           = $User.AccountEnabled
        LastSuccessfulSignInDate = $LastSuccessfulSignInDate
        DaysSinceLastSignIn      = $DaysSinceLastSignIn
        CreatedDateTime          = $User.CreatedDateTime
        IsLicensed               = $IsLicensed
    }

    # Add the report line to the List
    $Report.Add($ReportLine)
}

# Display data using Out-GridView
$Report | Out-GridView -Title "Inactive Users"

# Export data to CSV file
try {
    $Report | Export-Csv -Path $CSVPath -NoTypeInformation -Encoding UTF8
    Write-Host "Script completed. Results exported to $CSVPath." -ForegroundColor Cyan
}
catch {
    Write-Host "Error occurred while exporting to CSV: $_" -ForegroundColor Red
}
  • Satır 23:CSV dosya yolunu düzenleyin

Microsoft Graph PowerShell'e bağlanın

Daha fazla ilerlemeden ve tüm kullanıcılar için etkin olmayan durumu almadan önce, Microsoft Graph PowerShell'i kurup bağlanmamız gerekiyor.

Windows PowerShell'i yönetici olarak başlatın ve aşağıdaki komutu çalıştırın.

Install-Module Microsoft.Graph -Force

Önemli:Hataları ve yanlış sonuçları önlemek için bir cmdlet'i veya betiği çalıştırmadan önce daima en son Microsoft Graph PowerShell modülü sürümüne güncelleyin.

ÇalıştırConnect-MgGraphcmdlet'i kullanın.

Devamını oku:Microsoft 365 Yönetici Rolleri Üye Raporunu Dışa Aktarma

Connect-MgGraph -Scopes "User.Read.All", "AuditLog.Read.All"

Export-M365InactiveUsers PowerShell betiğini çalıştır

PowerShell ile tüm etkin olmayan kullanıcıları edinin. Export-M365InactiveUsers.ps1 betiğini çalıştırmak için aşağıdaki komutu çalıştırın.

c:scripts.Export-M365InactiveUsers.ps1

Izgara Dışı Görünüm

BirIzgara Dışı Görünümtüm aktif olmayan kullanıcıları ve çok daha fazla bilgiyi içeren sütunları gösterecektir.

Microsoft 365 etkin olmayan kullanıcı raporu CSV dosyasını açın

Export-M365InactiveUsers.ps1 PowerShell betiği, Microsoft 365 kullanıcılarının hareketsizliğini CSV dosyasına aktaracaktır. Dosyayı bulEtkin Olmayan Kullanıcılar.csvyoldaC:sıcaklık.

CSV dosyasını favori uygulamanızla açın. Örneğimizde, Microsoft Excel.

Bu, Microsoft 365 etkin olmayan kullanıcılarını CSV dosyasına aktarmanıza yardımcı oldu mu?

Not:Üçünü de anlamak istiyor musun?Oturum Açma özelliklerive bunları nasıl geri alabilirim? Makaleyi okuyunMicrosoft 365 kullanıcılarının son oturum açma tarihini ve saatini dışarı aktarma.

Çözüm

Etkin olmayan kullanıcıları Microsoft 365'ten nasıl dışarı aktaracağınızı öğrendiniz. Export-M365InactiveUsers PowerShell betiğiyle etkin olmayan kullanıcılar raporunu alın ve dikkatlice inceleyin. Kuruluşunuzu korumak için neden kullanıcı oturum açma etkinliğinin olmadığını kontrol edin ve etkin olmayan kullanıcı hesaplarını devre dışı bırakın.

Bu makaleyi beğendiniz mi? Ayrıca Microsoft Entra ID kullanıcılarını PowerShell ile CSV'ye aktarma seçeneğini de beğenebilirsiniz. Bizi takip etmeyi ve bu yazımızı paylaşmayı unutmayın.

Related Posts