Nutzersuche mit Adressbuchrichtlinien einschränken 236

Mit Hilfe von Adressbuchrichtlinien kann man die Kommunikation und die tenantweite Suche von Nutzern einschränken. Dies funktioniert in Outlook und in Teams.

Der Nutzer kann dann nur Mitglieder seiner eigenen Adressliste finden und anschreiben.

Damit die Adressbuchrichtlinien in Teams funktionieren, muss man diese im Teams Admincenter freischalten:

Benötigte „Adress Lists“ Rolle zuweisen

Um eine neue Adressenliste erstellen zu können, muss man die „Adress Lists“ Rolle dem „Organization Management“ (hier sind normalerweise die Admin Accounts enthalten) hinzufügen. Diese Einstellung kann im Exchange Online Admincenter vorgenommen werden:

Exchange Online Management Modul installieren

Eine neue Adressbuchrichtlinie kann man mit Hilfe von Powershell erstellen. Dazu muss man erst das ExchangeOnlineManagement Modul für Powershell installieren:

https://www.powershellgallery.com/packages/ExchangeOnlineManagement/2.0.3

In Powershell kann man das Modul mit Hilfe folgenden Befehls installieren:

Install-Module -Name ExchangeOnlineManagement -RequiredVersion 2.0.3

Dann kann man sich mit dem Modul verbinden:

Import-Module ExchangeOnlineManagement
Connect-ExchangeOnline

Eine neue Adressbuchrichtlinie (ABP) benötigt folgende 4 Parameter um erstellt zu werden:

  • eine AdressList (AL)
  • ein OfflineAdressBook (OAB)
  • eine GlobalAdressList (GAL)
  • eine RoomList (Rooms) – hier kann auch die AdressList übergeben werden
New-AddressBookPolicy
   [-Name] <String>
   -AddressLists <AddressListIdParameter[]>
   -GlobalAddressList <GlobalAddressListIdParameter>
   -OfflineAddressBook <OfflineAddressBookIdParameter>
   -RoomList <AddressListIdParameter>

Es wird empfohlen, die Nutzer den Adresslisten mit Hilfe von „Custom Attributes“ in Exchange Online hinzuzufügen.

Custom Attributes Nutzern hinzufügen

Mit Hilfe von AzureAD und dem Exchange Online Modul können Nutzer ausgewählt und ein passendes „Custom Attribute“ hinzugefügt werden:

# Modul um Einstellungen in Exchange Online vorzunehmen
Import-Module ExchangeOnlineManagement
Connect-ExchangeOnline 

# Modul um Nutzer des Tenants auszuwählen
AzureADPreview\Connect-AzureAD

# sammelt Nutzer, die der Abteilung 5a angehören
$userList = Get-AzureADUser -All $true | Where-Object {$_.department -eq "5a" }
foreach( $user in $userList){
    # gibt dem Nutzer ein Exchange Online Benutzerdefiniertes Attribut
    Get-mailbox -Identity $user.userPrincipalName | Set-mailbox –customattribute1 "5a"
}

Nach dem Ausführen des Befehls, bekommt der entsprechende Nutzer ein neues Attribut mit Wert:

Die Nutzer werden nun automatisch anhand der gesetzten Attribute den Adresslisten hinzugefügt.

Adressliste (AL) erstellen

Die Adressliste wird anhand der vorher festgelegten „Custom Attributes“ angelegt:

#create AdressList
New-AddressList -Name "5a-AL" -RecipientFilter {(CustomAttribute1 -eq "5a")}

# listet alle vorhandenen ALs auf
Get-AddressList
# löscht eine AL
Remove-AddressList -Identity name

OfflineAdressBook(OAB) erstellen

Das Offline Adress Book bekommt die gleichen Nutzer wie die AdressList:

#create OfflineAdressBook
New-OfflineAddressBook -Name "5a-OAB" -AddressLists "5a-AL"

# listet alle vorhandenen OABs auf
Get-OfflineAddressBook
# löscht ein OAB
Remove-OfflineAddressBook -Identity name

Globale Adressliste (GAL) erstellen

Auch die GAL wird Nutzer anhand der „Custom Attributes“ aufnehmen:

#create GlobalAdressList
New-GlobalAddressList -Name "5a-GAL" -RecipientFilter {(CustomAttribute1 -eq "5a")}

# listet alle vorhandenen GALs auf
Get-GlobalAddressList
# löscht eine GAL
Remove-GlobalAddressList -Identity name

Adressbuchrichtlinie (ABP) erstellen

Jetzt kann mit Hilfe der vorher erstellten Listen eine Adressbuchrichtlinie erstellt werden:

#now create AdressBookPolicy
New-AddressBookPolicy -Name "5a-ABP" -AddressLists "\5a-AL" -OfflineAddressBook "\5a-OAB" -GlobalAddressList "\5a-GAL" -RoomList "\5a-AL"

# listet alle vorhandenen ABPs auf
Get-AddressBookPolicy
# löscht eine ABP
Remove-AddressBookPolicy -Identity name

Diese Richtlinie kann dann mit Powershell oder im Exchange Online Admincenter Nutzern zugewiesen werden:

# sammelt Nutzer, die der Abteilung 5a angehören
$userList = Get-AzureADUser -All $true | Where-Object {$_.department -eq "5a" }
foreach( $user in $userList){
    # gibt dem Nutzer die erstellte AdressBookPolicy
    Get-mailbox -Identity $user.userPrincipalName | Set-mailbox –addressbookpolicy 5a-ABP
}

Links