Hier laat ik je zien hoe je automapping kan uitzetten via PowerShell
Handmatig
Hier laat ik je zien hoe je automapping kan uitzetten voor
-
Open powershell
-
Connect met exchange online
Connect-ExchangeOnline
-
Lijst op de gebruikers op die aanwezig zijn in de mailbox
Get-MailboxPermission -Identity <mailbox username>
De entries met NT AUTHORITY\SELF mag je negeren
-
Verwijder nu de rechten van de gebruikers op de mailbox
Remove-MailboxPermission -Identity <mailbox username> -User <username> -AccessRights FullAccess -Confirm:$false
-
Voeg nu de rechten opnieuw toe maar dan zonder automapping
Add-MailboxPermission -Identity <Mailbox Username> -User <Username> -AccessRights FullAccess -AutoMapping $false
De mailbox verschijnt nu niet meer automatisch in outlook.
Script
Je kan dit ook doen aan de hand van een script. Dit maakt het makkelijker voor deze actie uit te voeren voor meerdere gebruikers.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
# Import functie uit file
. .\WriteTextInColor.ps1
# 1. inladen Exchange online module
Import-Module ExchangeOnlineManagement
# 2. Connect to Exchange online
Connect-ExchangeOnline
# 3. opvragen naam mailbox
$MailboxUSername = Read-Host -Prompt 'Enter Shared Mailbox username'
if ($MailboxUSername) {
Write-Host "ok > $MailboxUSername"
}
else {
Write-Warning -message "No shared mailbox username"
}
#4. oplijsten gebruikers met full permissions & weg filteren NT AUTHORITY
$UsersSharedMailbox = Get-MailboxPermission -Identity $MailboxUSername | Where-Object { -not ($_.User -match "NT AUTHORITY") -and ($_.IsInherited -eq $false) }
#5. Nakijken of er gebruikers in de mailbox aanwezig zijn en permissions verwijderen
if ($UsersSharedMailbox -eq $null) {
Write-Warning -Message "No users to remove permissions from :("
}
else {
Export-Csv -InputObject $UsersSharedMailbox -Path .\UsersSharedMailbox_$MailboxUSername.CSV
Remove-MailboxPermission -Identity $MailboxUSername -User $UsersSharedMailbox.User -AccessRights FullAccess -Confirm:$false
# Turnoff automapping
Add-MailboxPermission -Identity $MailboxUSername -User $UsersSharedMailbox.User -AccessRights FullAccess -AutoMapping $false
# melding automapping oke & andere kleur
WriteTextInColor -Text "AutoMapping off" -Color green
}
|
Functie color:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
function WriteTextInColor {
param (
$Color,
$Text
)
#sla begin kleur op
$BeginColor = $host.UI.RawUI.ForegroundColor
#stel nieuwe kleur in
$host.UI.RawUI.ForegroundColor = $Color
#print text
Write-Host $Text
#Reset kleurtje
$host.UI.RawUI.ForegroundColor = $BeginColor
}
|
bron
GitHub