workwithMailbox.ps1
#workwithMailbox.ps1 / rb / 2020
#create or delete a ExchangeMailbox with Powershell
# erforderliche Provisioning-Parameter der Resource:
# $username # wird immer von Tenfold mitgeliefert
# $connecttionUri #  z.B. "https://meinExchgsrv/Powershell/"
# erforderliche Resourcenbedingungen:
# "Resource - New"
# "Resource - Delete"
##############################################################
 
$username = $params.request.person.masterdata.userName
$connectionUri = $params.connectionUri
 
###############################################################
#####Remoteverbindung zum Exchange herstellen
 
$sessionOption = New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck
 
$admsession = New-Pssession -Configurationname Microsoft.Exchange -connectionuri $connectionUri -credential $cred  -sessionoption $sessionOption -authentication basic
 
if ($admsession.State -ne 'Opened')
{
  throw "error: new-pssession on $server failed"
}
else
{
 
Import-PSSession $admsession -AllowClobber -DisableNameChecking -WarningAction:SilentlyContinue | Out-Null
#prüfen ob der Benutzer schon ein Postfach hat und es erstellen oder löschen
$status = get-Mailbox $username -ErrorAction:SilentlyContinue
if ($status)
           	{
            	Disable-Mailbox -identity $username -confirm:$false 
           	}
else	 	{
        	Enable-Mailbox -identity $username -confirm:$false
	    	}
 
Remove-PSSession $admsession
}