Tam Erişim posta kutusu izni nasıl dışa aktarılır


Tam Erişim iznine sahip kullanıcıların listesini lisanslı bir Microsoft 365 posta kutusuna aktarabilirsiniz. Bu şekilde, hangi kullanıcıların Microsoft 365 posta kutusunu açabileceğini ve posta kutusu sahibi gibi davranabileceğini görebilirsiniz. Bu makalede, Exchange Online PowerShell ile Tam Erişim posta kutusu izninin nasıl dışarı aktarılacağını öğreneceksiniz.

Exchange Online PowerShell'e bağlanın

PowerShell komutlarını çalıştırabilmek için Exchange Online PowerShell'e bağlanmanız gerekir. Windows PowerShell'i yönetici olarak açın, aşağıdaki cmdlet'i çalıştırın ve yönetici kimlik bilgilerinizle oturum açın.

Connect-ExchangeOnline

Tek kullanıcı için Tam Erişim posta kutusu izinlerini dışa aktarma

PowerShell ile bir kullanıcı posta kutusunun posta kutusu izinlerini nasıl dışarı aktaracağınızı göstereceğiz.

Belirli bir kullanıcı posta kutusunda diğer kullanıcıların sahip olduğu posta kutusu izinleri hakkında bilgi almak istiyoruz. Posta kutusu izinlerini görüntülemek için kullandığımız PowerShell cmdlet'i Get-MailboxPermission'dır.

Örneğimizde, hangi kullanıcıların (veya grupların) Brenda’nın posta kutusuna Tam Erişim posta kutusu iznine sahip olduğunu görüntülemek istiyoruz.

Sonuç sütunları arasındaki boşluğu azaltmak için -AutoSize parametresini kullanacağız.

Aşağıdaki PowerShell komutunu çalıştırın.

Get-MailboxPermission "Brenda.Smith@m365info.com" | ft -AutoSize

PowerShell çıktı sonucunu görün.

Identity                             User                     AccessRights                 IsInherited Deny
--------                             ----                     ------------                 ----------- ----
0f38d53f-cbe0-4844-86e9-1032a45ba31b NT AUTHORITY\SELF        {FullAccess, ReadPermission} False       False
0f38d53f-cbe0-4844-86e9-1032a45ba31b Diana.Baker@m365info.com {FullAccess}                 False       False
0f38d53f-cbe0-4844-86e9-1032a45ba31b Finance UK mail list     {FullAccess}                 False       False
0f38d53f-cbe0-4844-86e9-1032a45ba31b Sales Norway             {FullAccess}                 False       False
0f38d53f-cbe0-4844-86e9-1032a45ba31b Laura.Terry@m365info.com {FullAccess}                 False       False

Çıktı, sağladığınız (Brenda) posta kutusunun Kimliğini gösterir ve Kullanıcı sütunu altında Tam Erişim iznine sahip posta kutularını listeler.

Teknik olarak gerekli sonuçları aldık ama verilere derinlemesine baktığımızda bazı sorunlar olduğunu görüyoruz.

Exchange Online'da posta kutusu iznini görüntülemek için temel PowerShell komutunu kullandığımızda, alakasız birçok bilgi ortaya çıkar. Öncelikle her kullanıcının posta kutusunda sahip olduğu SELF iznini kaldırmak istiyoruz. Daha sonra görüntülenen sonuçtan IsInherited izinlerini kaldırmak istiyoruz.

Gereksiz bilgileri temizlemek amacıyla, NT AUTHORITY\SELF ve IsInherited olarak sınıflandırılan Tam Erişim posta kutusu iznini hariç tutmak için (Nerede) mantıksal koşulunu kullanacağız. güçlü>.

Aşağıdaki PowerShell komut örneğini çalıştırın.

Get-MailboxPermission "Brenda.Smith@m365info.com" | Where { ($_.IsInherited -eq $false) -and -not ($_.User -like "NT AUTHORITY\SELF") } | Ft Identity, User, AccessRights -AutoSize

PowerShell çıktı sonucu aşağıda gösterilmiştir.

Identity                             User                     AccessRights
--------                             ----                     ------------
0f38d53f-cbe0-4844-86e9-1032a45ba31b Diana.Baker@m365info.com {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Finance UK mail list     {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Sales Norway             {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Laura.Terry@m365info.com {FullAccess}

İlgili olmayan bilgilerin çoğunu hariç tutmayı veya temizlemeyi başarıyla başardığımızı görebiliriz. Brenda'nın posta kutusuna Tam Erişim posta kutusu iznine sahip posta kutularını gösterir.

Birden fazla kullanıcı için Tam Erişim posta kutusu iznini dışa aktarma

Ayrıca birden fazla kullanıcı için posta kutusu izinleri de alabilirsiniz. Örneğimizde, Brenda Smith ve Ken Walker için kimin posta kutusu iznine sahip olduğunu bilmek istiyoruz.

PowerShell komutunda her kullanıcı adını virgülle ayırarak ekleyebiliriz.

Aşağıdaki PowerShell komut sözdizimine bakın.

"Brenda.Smith@m365info.com","Ken.Walker@m365info.com" | ForEach {Get-MailboxPermission -Identity $_}

Çıktıdaki ilgisiz bilgileri kaldırmak için yukarıdaki PowerShell komutunu değiştireceğiz.

PowerShell komut örneğini çalıştırın.

"Brenda.Smith@m365info.com","Ken.Walker@m365info.com" | ForEach { Get-MailboxPermission -Identity $_ | Where { ($_.IsInherited -eq $false) -and -not ($_.User -like "NT AUTHORITY\SELF") -and -not ($_.User -like '*Discovery Management*') } } | Select Identity, User, AccessRights

PowerShell çıktı sonuçları aşağıda gösterilmiştir.

Identity                             User                     AccessRights
--------                             ----                     ------------
0f38d53f-cbe0-4844-86e9-1032a45ba31b Diana.Baker@m365info.com {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Finance UK mail list     {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Sales Norway             {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Laura.Terry@m365info.com {FullAccess}
12eefbb2-e5f4-4eec-bd18-df7ca2f1ee6b Brian.Mill@m365info.com  {FullAccess}
12eefbb2-e5f4-4eec-bd18-df7ca2f1ee6b Anna.Bell@m365info.com   {FullAccess}

Sağladığınız (Brenda Smith ve Ken Walker) posta kutularına ilişkin Kullanıcı sütunu altında Tam Erişim izinlerine sahip tüm posta kutularını listeleyecektir.

Tam Erişimi Dışa Aktarma izni kullanıcısının şunlara erişimi vardır:

Belirli bir kullanıcının, diğer kullanıcılara veya gruplara erişimi olan Tam Erişim posta kutusu iznini dışa aktarmak istiyoruz.

Bu bilgiyi almak için, mevcut tüm posta kutularının bir listesini almak üzere Get-Mailbox cmdlet'ini kullanmamız gerekir. Daha sonra Get-MailboxPermission cmdlet'ini de kullanacağız ve kullanıcı adını ekleyeceğiz.

PowerShell komutu tüm posta kutusu dizilerini inceleyecek, kullanıcının hangi posta kutularına posta kutusu iznine sahip olduğunu kontrol edecek ve sonuçları görüntüleyecektir. PowerShell komutunun geri kalanı Get-MailboxPermission cmdlet'i tarafından görüntülenen sonuçları iyileştirmek için kullanılır.

Örneğimizde, Brenda Smith kullanıcısının diğer posta kutularına Tam Erişim izni hakkında bilgi almak istiyoruz.

  1. 1 numaralı satırda posta kutusunu belirtin
  2. Aşağıdaki PowerShell komut komut dosyasını çalıştırın
Get-Mailbox -Resultsize Unlimited | Get-MailboxPermission -User "Brenda.Smith@m365info.com" | ForEach-Object {
    $mailbox = Get-Mailbox $_.Identity
    $User = Get-Mailbox $_.User
    [PSCustomObject]@{
        UserId            = $User.Identity
        User              = $_.User
        Identity          = $_.Identity
        UserPrincipalName = $mailbox.UserPrincipalName
        AccessRights      = $_.AccessRights
    }
} | Format-Table UserId, User, Identity, UserPrincipalName, AccessRights

PowerShell çıktısı, Brenda Smith'in Tam Erişim iznine sahip olduğu posta kutularının listesini gösterir.

UserId                               User                      Identity                             UserPrincipalName      AccessRights
------                               ----                      --------                             -----------------      ------------
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com 82cd0d62-e974-4892-aca6-e0387abc62be Anna.Bell@m365info.com {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com Catch All                            Catch.All@m365info.com {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com Info Box                             InfoBox@m365info.com   {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com 12eefbb2-e5f4-4eec-bd18-df7ca2f1ee6b Ken.Walker@m365info.c… {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com Projector 21                         Projector21@m365info.… {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com RoomTest8                            RoomTest8@m365info.com {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com c32b2b27-d809-439a-a3e3-eb7a749eeb72 Stephen.Hunter@m365in… {FullAccess}

Tam Erişim izniyle belirttiğiniz (Brenda.Smith@m365info.com) posta kutusunun bilgileri UserId ve User sütunları altında listelenir. Kimlik ve KullanıcıPrincipalName sütunu altında tüm Exchange Online posta kutularının bir listesini gösterir.

Tam Erişim iznine sahip posta kutularının listesini CSV dosyasına aktarın

Tam Erişim posta kutusu iznine sahip tüm kullanıcıların listesini bir CSV dosyasına ve Out-GridView'e aktarmak istiyoruz. Tam Erişim posta kutusu iznine sahip her posta kutusunu başka bir lisanslı posta kutusuna gösterir.

Posta kutusu izinlerinin listesini CSV'ye aktarmak için aşağıdaki adımları izleyin:

  1. temp klasörünü oluşturun ve henüz yapmadıysanız (C:) sürücüsüne kaydedin.
  2. 2 numaralı satıra CSVPath'i yazın
  3. Aşağıdaki PowerShell betiğini çalıştırın
# Set the path for the CSV file to store the permissions
$CSVPath = "C:\temp\FullAccessPerms.csv"

try {
    # Get all the mailboxes with unlimited result size and retrieve their mailbox permissions
    $permissions = Get-Mailbox -ResultSize Unlimited | Get-MailboxPermission | Where-Object {
        # Filter out permissions that are inherited, belong to "NT AUTHORITY\SELF", or belong to "Discovery Management"
        ($_.IsInherited -eq $false) -and -not ($_.User -like "NT AUTHORITY\SELF") -and -not ($_.User -like '*Discovery Management*')
    } | ForEach-Object {
        # For each permission, get the mailbox details
        $mailbox = Get-Mailbox $_.Identity
        [PSCustomObject]@{
            UserPrincipalName    = $mailbox.UserPrincipalName
            Identity             = $mailbox.Identity
            User                 = $_.User
            AccessRights         = $_.AccessRights
            RecipientTypeDetails = $mailbox.RecipientTypeDetails
        }
    } | Select-Object Identity, UserPrincipalName, User, AccessRights, RecipientTypeDetails

    # Display the permissions in Out-GridView
    $permissions | Out-GridView -Title "Full Access mailbox permissions"

    # Export the permissions to a CSV file
    $permissions | Export-Csv -Path $CSVPath -NoTypeInformation -Encoding UTF8

    # Display a success message if the export was successful
    Write-Host "Exported permissions successfully to $CSVPath" -ForegroundColor Cyan
}
catch {
    # Display an error message if there was an exception during the export
    Write-Host "Error exporting permissions: $_" -ForegroundColor Red
}
  1. Betiği çalıştırdıktan sonra Out-GridView görünür

  1. CSV dosyasını C:\temp klasöründe bulun
  2. Sonuçları görmek için CSV dosyasını Microsoft Excel gibi bir uygulamayla açın

Bu kadar!

Devamını oku: Microsoft Graph PowerShell ile Azure AD kullanıcılarını dışarı aktarma »

Çözüm

Exchange Online PowerShell ile Tam Erişim posta kutusu iznini nasıl dışarı aktaracağınızı öğrendiniz. Get-MailboxPermission PowerShell cmdlet'i ile tek bir veya tüm Microsoft 365 posta kutuları için Tam Erişim iznine sahip kullanıcıların listesini alabilirsiniz.

Bu makaleyi beğendiniz mi? Ayrıca Azure AD grubu üyelerini PowerShell ile CSV'ye aktarma konusunu da beğenebilirsiniz. Bizi takip etmeyi ve bu yazımızı paylaşmayı unutmayın.

İlgili makaleler