Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

ScriptAgent und ein Fehler :-(

Frage Microsoft Exchange Server

Mitglied: LyriC76

LyriC76 (Level 1) - Jetzt verbinden

14.08.2014, aktualisiert 17.08.2014, 1143 Aufrufe, 12 Kommentare

Guten Morgen,

ich komme schon seit tagen nicht weiter, vielleicht hat hier jemand eine Idee.
Das Script läuft beim aktivieren einer Mailbox mit.

hier mal das Script:
01.
<?xml version="1.0" encoding="utf-8" ?> 
02.
<Configuration version="1.0"> 
03.
 <Feature Name="MailboxProvisioning" Cmdlets="enable-mailbox"> 
04.
  <ApiCall Name="OnComplete"> 
05.
	if ($succeeded)  
06.
07.
	do { 
08.
         start-sleep 20 
09.
         $mbxExists = Get-MailBoxPermission -Identity $USER -User "NT AUTHORITY\SELF" -ErrorAction SilentlyContinue | FW IsValid 
10.
		} while (!$mbxExists) 
11.
		 
12.
			$USER = $provisioningHandler.UserSpecifiedParameters["Name"] 
13.
			$OU = (Get-User -Identity $USER).OrganizationalUnit 
14.
			$ATT = (Get-mailbox -Identity $USER).customattribute1 
15.
	 
16.
		if ( 
17.
			($OU -eq "it-contact.local/Frankfurt (FFM)/IT-Contact/Users") -and ($ATT -eq "extern") 
18.
        	)	{ 
19.
					Enable-Mailbox -Identity $USER -Archive -ArchivDatabase ArchivMDB 
20.
					Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
21.
					Set-Mailbox -Identity $USER _ 
22.
					-SingleItemRecoveryEnabled $true _ 
23.
					-UseDatabaseQuotaDefaults $false _ 
24.
					-IssueWarningQuota 450MB _ 
25.
					-ProhibitSendQuota 500MB _ 
26.
					-ProhibitSendReceiveQuota 550MB _ 
27.
					-ArchiveQuota 1GB _ 
28.
					-ArchiveWarningQuota 800MB _ 
29.
					-RetainDeletedItemsFor "30.00:00:00" _ 
30.
					-AddressBookPolicy "IT-Contact extern GmbH" 
31.
32.
		 
33.
		elseif ( 
34.
				($OU -eq "it-contact.local/Frankfurt (FFM)/IT-Contact/Users") -and ($ATT -ne "extern") 
35.
				)	{ 
36.
					Enable-Mailbox -Identity $USER -Archive -ArchivDatabase ArchivMDB 
37.
					Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
38.
					Set-Mailbox -Identity $USER _ 
39.
					-SingleItemRecoveryEnabled $true _ 
40.
					-UseDatabaseQuotaDefaults $false _ 
41.
					-IssueWarningQuota 900MB _ 
42.
					-ProhibitSendQuota 1GB _ 
43.
					-ProhibitSendReceiveQuota 1,1GB _ 
44.
					-ArchiveQuota 2GB _ 
45.
					-ArchiveWarningQuota 1,8GB _ 
46.
					-RetainDeletedItemsFor "30.00:00:00" _ 
47.
					-AddressBookPolicy "IT-Contact GmbH" 
48.
					}		 
49.
 
50.
		elseif ( 
51.
				($OU -eq "it-contact.local/Frankfurt (FFM)/MOC Testumgebung/Users") -and ($ATT -eq "extern") 
52.
				)	{ 
53.
					Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
54.
					Set-Mailbox -Identity $USER _ 
55.
					-SingleItemRecoveryEnabled $true _ 
56.
					-UseDatabaseQuotaDefaults $false _ 
57.
					-IssueWarningQuota 180MB _ 
58.
					-ProhibitSendQuota 200MB _ 
59.
					-ProhibitSendReceiveQuota 220MB _ 
60.
					-RetainDeletedItemsFor "30.00:00:00" _ 
61.
					-AddressBookPolicy "MOC Testumgebung extern" 
62.
					}	 
63.
 
64.
		elseif ( 
65.
				($OU -eq "it-contact.local/Frankfurt (FFM)/MOC Testumgebung/Users") -and ($ATT -ne "extern") 
66.
				)	{ 
67.
					Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
68.
					Set-Mailbox -Identity $USER _ 
69.
					-SingleItemRecoveryEnabled $true _ 
70.
					-UseDatabaseQuotaDefaults $false _ 
71.
					-IssueWarningQuota 180MB _ 
72.
					-ProhibitSendQuota 200MB _ 
73.
					-ProhibitSendReceiveQuota 220MB _ 
74.
					-RetainDeletedItemsFor "30.00:00:00" _ 
75.
					-AddressBookPolicy "MOC Test intern" 
76.
					}	 
77.
78.
   </ApiCall> 
79.
  </Feature> 
80.
</Configuration>
und hier die Fehlerausgabe:
01.
Summary: 1 item(s). 1 succeeded, 0 failed. 
02.
Elapsed time: 00:00:06 
03.
 
04.
 
05.
XXXXXX XXXXXX 
06.
Completed 
07.
 
08.
Warning: 
09.
The cmdlet extension agent with the index 5 has thrown an exception in OnComplete(). The exception is: Microsoft.Exchange.Provisioning.ProvisioningException: ScriptingAgent: Exception thrown while invoking scriptlet for OnComplete API: Missing expression after unary operator '-'.. ---> System.Management.Automation.ParseException: Missing expression after unary operator '-'. 
10.
   at System.Management.Automation.Runspaces.AsyncResult.EndInvoke() 
11.
   at System.Management.Automation.PowerShell.EndInvoke(IAsyncResult asyncResult) 
12.
   at Microsoft.Exchange.Configuration.MonadDataProvider.MonadPipelineProxy.ClosePipeline(MonadAsyncResult asyncResult) 
13.
   --- End of inner exception stack trace --- 
14.
   at Microsoft.Exchange.ProvisioningAgent.ScriptingAgentHandler.OnComplete(Boolean succeeded, Exception e) 
15.
   at Microsoft.Exchange.Provisioning.ProvisioningLayer.OnComplete(Task task, Boolean succeeded, Exception exception) 
16.
 
17.
Exchange Management Shell command completed: 
18.
Enable-Mailbox -Identity 'it-contact.local/Frankfurt (FFM)/IT-Contact/Users/XXXXX XXXXX' -Alias 'XXXXX' 
19.
 
20.
Elapsed Time: 00:00:06
Nagut es ist laut der Ausgabe nicht wirklich ein Fehler sondern eine Warnung.
Nur wird es auch nicht ausgeführt als die Erweiterungen ein oder ausgeschaltet.

Vielen Dank für eure Ideen.
lG LyriC
Mitglied: colinardo
14.08.2014, aktualisiert um 13:32 Uhr
Hallo LyriC,
den Codeumbruch via "_" gibt es vielleicht in VB, aber nicht in Powershell. In Powershell kannst du hierfür den Backtick (`) nutzen.

Auch für die GB-Werte wie z.B. 1,1GB solltest du den Punkt als Dezimaltrenner verwenden, sonst ist das für Powershell ein Array aus einer 1 und 1GB.

Dann würde ich Zeile 9 anders schreiben (Format-Wide ist normalerweise nicht dazu geeignet die Boolean-Eigenschaft zuverlässig weiterzugeben):
$mbxExists = (Get-MailBoxPermission -Identity $USER -User "NT AUTHORITY\SELF" -ErrorAction SilentlyContinue).IsValid 
Außerdem würde ich empfehlen längere Scripte in ein Powershell-Script auszulagern und die benötigten Parameter an dieses zu übergeben.

Noch zur Info für bestimmte Sonderzeichen in der XML-Datei:
- Verwenden Sie anstelle des Größer-als-Zeichens (>) die Folge &gt; 
- Verwenden Sie anstelle des Kleiner-als-Zeichens (<) die Folge $lt; 
- Verwenden Sie anstelle eines kaufmännischen Und-Zeichens (&) die Folge &amp;
Grüße Uwe
Bitte warten ..
Mitglied: LyriC76
14.08.2014 um 18:23 Uhr
Hallo Uwe,

vielen dank für den Tipp.
Nun läuft das Script zwar aber es hört nicht mehr auf zu laufen.
bin schon bei 30min. angekommen. mis...
Irgendwas stimmt damit noch nicht.
Bitte warten ..
Mitglied: colinardo
14.08.2014, aktualisiert um 19:14 Uhr
Ich vermute wenn das ein deutsches System ist musst du anstatt "NT AUTHORITY\SELF" die deutsche Variante nehmen "NT-AUTORITÄT\SELBST" checke das Ergebnis erst mal separat außerhalb des Scriptes !! Wenn in dem Befehl nämlich etwas nicht stimmt oder es keine Objekt zurückgibt läuft das unendlich in einer Schleife !
p.s. Die Schleife ist sowieso Schwachsinn, denn wenn das Event OnComplete abgeschlossen ist, existiert die Mailbox schon, man muss also nicht nochmal eine Prüfung einbauen.
Bitte warten ..
Mitglied: LyriC76
14.08.2014 um 20:30 Uhr
vielen Dank für die Antwort.

Ich habe den befehl getestet: (Get-MailBoxPermission -Identity $USER -User "NT AUTHORITY\SELF" -ErrorAction SilentlyContinue).IsValid
bekam ein true zurück.

stimmt vieleicht was mit dem sleep nicht?

ich poste nochmal das Script:
01.
<?xml version="1.0" encoding="utf-8" ?> 
02.
<Configuration version="1.0"> 
03.
 <Feature Name="MailboxProvisioning" Cmdlets="enable-mailbox"> 
04.
  <ApiCall Name="OnComplete"> 
05.
	if ($succeeded)  
06.
07.
	 
08.
		$USER = $provisioningHandler.UserSpecifiedParameters["Name"] 
09.
	 
10.
		do { 
11.
			sleep -seconds 1 
12.
			$mbxExists = Get-MailBoxPermission -Identity $USER -User "NT AUTHORITY\SELF" -ErrorAction SilentlyContinue | FW IsValid 
13.
		} while (!$mbxExists) 
14.
 
15.
		$OU = (Get-MailBox -Identity $USER).OrganizationalUnit 
16.
		$ATT = (Get-mailbox -Identity $USER).customattribute1 
17.
		 
18.
		if ( 
19.
				($OU -eq "it-contact.local/Frankfurt (FFM)/IT-Contact/Users") -and ($ATT -eq "extern") 
20.
		)	{ 
21.
				Enable-Mailbox $USER -Archive -ArchivDatabase ArchivMDB 
22.
				Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
23.
				Set-Mailbox -Identity $USER ` 
24.
					-SingleItemRecoveryEnabled $true ` 
25.
					-UseDatabaseQuotaDefaults $false ` 
26.
					-IssueWarningQuota 450MB ` 
27.
					-ProhibitSendQuota 500MB ` 
28.
					-ProhibitSendReceiveQuota 550MB ` 
29.
					-ArchiveQuota 1GB ` 
30.
					-ArchiveWarningQuota 800MB ` 
31.
					-RetainDeletedItemsFor "30.00:00:00" ` 
32.
					-AddressBookPolicy "IT-Contact extern GmbH" 
33.
34.
		 
35.
		elseif ( 
36.
				($OU -eq "it-contact.local/Frankfurt (FFM)/IT-Contact/Users") -and ($ATT -ne "extern") 
37.
		)		{ 
38.
				Enable-Mailbox $USER -Archive -ArchivDatabase ArchivMDB 
39.
				Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
40.
				Set-Mailbox -Identity $USER ` 
41.
					-SingleItemRecoveryEnabled $true ` 
42.
					-UseDatabaseQuotaDefaults $false ` 
43.
					-IssueWarningQuota 900MB ` 
44.
					-ProhibitSendQuota 1GB ` 
45.
					-ProhibitSendReceiveQuota "1.1GB" ` 
46.
					-ArchiveQuota 2GB ` 
47.
					-ArchiveWarningQuota "1.8GB" ` 
48.
					-RetainDeletedItemsFor "30.00:00:00" ` 
49.
					-AddressBookPolicy "IT-Contact GmbH" 
50.
			}		 
51.
 
52.
		elseif ( 
53.
				($OU -eq "it-contact.local/Frankfurt (FFM)/MOC Testumgebung/Users") -and ($ATT -eq "extern") 
54.
		)		{ 
55.
				Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
56.
				Set-Mailbox -Identity $USER ` 
57.
					-SingleItemRecoveryEnabled $true ` 
58.
					-UseDatabaseQuotaDefaults $false ` 
59.
					-IssueWarningQuota 180MB ` 
60.
					-ProhibitSendQuota 200MB ` 
61.
					-ProhibitSendReceiveQuota 220MB ` 
62.
					-RetainDeletedItemsFor "21.00:00:00" ` 
63.
					-AddressBookPolicy "MOC Testumgebung extern" 
64.
				}	 
65.
 
66.
		elseif ( 
67.
				($OU -eq "it-contact.local/Frankfurt (FFM)/MOC Testumgebung/Users") -and ($ATT -ne "extern") 
68.
		)		{ 
69.
				Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
70.
				Set-Mailbox -Identity $USER ` 
71.
					-SingleItemRecoveryEnabled $true ` 
72.
					-UseDatabaseQuotaDefaults $false ` 
73.
					-IssueWarningQuota 180MB ` 
74.
					-ProhibitSendQuota 200MB ` 
75.
					-ProhibitSendReceiveQuota 220MB ` 
76.
					-RetainDeletedItemsFor "21.00:00:00" ` 
77.
					-AddressBookPolicy "MOC Test intern" 
78.
			}	 
79.
80.
   </ApiCall> 
81.
  </Feature> 
82.
</Configuration>
Danke für deine (eure) Hilfe.
Bitte warten ..
Mitglied: colinardo
14.08.2014, aktualisiert um 20:32 Uhr
lass die Schleife weg, die brauchst du nicht ... überflüssig
Bitte warten ..
Mitglied: LyriC76
14.08.2014 um 20:45 Uhr
hm ich hab jetzt die schleife raus nun macht er nichts mehr vom script.
kann es sein das er die if und die elseif nicht mag?
Bitte warten ..
Mitglied: colinardo
14.08.2014, aktualisiert um 20:47 Uhr
Ist das dein Script oder hast du das wieder irgendwo "geklauft" ? Bist du Anfänger ?
Bitte warten ..
Mitglied: LyriC76
14.08.2014 um 20:57 Uhr
Hi,

naja also das ist mein script, bis auf den einen eintrag $mbxExists = (Get-MailBoxPermission -Identity $USER -User "NT AUTHORITY\SELF" -ErrorAction SilentlyContinue).IsValid .

Der Rest ist marke Eigenbau und leider ja bin Anfänger im Scripten geb ich zu aber jeder hat mal angefangen. ok vielleicht will ich ja zuviel.
Ich gehe nochmal ein wenig lesen.
Bitte warten ..
Mitglied: colinardo
LÖSUNG 14.08.2014, aktualisiert 17.08.2014
probiers mal hiermit: (kann's gerade nicht testen, waren aber noch ein paar Fehler drin).
Ich würde dir empfehlen das Script in der Entwurfsphase nicht mit dem Scripting-Agent zu testen sondern es für Tests erst mal so zu schreiben das du es als normales Script testen kannst. Wenn es dann läuft kannst du es in den Scripting-Agent implementieren.
01.
<?xml version="1.0" encoding="utf-8" ?> 
02.
<Configuration version="1.0"> 
03.
 <Feature Name="MailboxProvisioning" Cmdlets="enable-mailbox"> 
04.
  <ApiCall Name="OnComplete"> 
05.
	if ($succeeded)  
06.
07.
		$USER = $provisioningHandler.UserSpecifiedParameters["Name"] 
08.
                $cnt = 0	 
09.
		do { 
10.
                        $cnt++ 
11.
                        # maximale Wartezeit 60 Sekunden, dann Abbruch 
12.
                        if ($cnt -gt 60){exit} 
13.
			sleep -seconds 1 
14.
			$mbxExists = Get-MailBoxPermission -Identity $USER -User "NT AUTHORITY\SELF" -ErrorAction SilentlyContinue 
15.
		} while (!$mbxExists) 
16.
 
17.
		$OU = (Get-MailBox -Identity $USER).OrganizationalUnit 
18.
		$ATT = (Get-mailbox -Identity $USER).customattribute1 
19.
		 
20.
		if (($OU -eq "it-contact.local/Frankfurt (FFM)/IT-Contact/Users") -and ($ATT -eq "extern"))	{ 
21.
				Enable-Mailbox $USER -Archive -ArchivDatabase ArchivMDB 
22.
				Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
23.
				Set-Mailbox -Identity $USER ` 
24.
					-SingleItemRecoveryEnabled $true ` 
25.
					-UseDatabaseQuotaDefaults $false ` 
26.
					-IssueWarningQuota 450MB ` 
27.
					-ProhibitSendQuota 500MB ` 
28.
					-ProhibitSendReceiveQuota 550MB ` 
29.
					-ArchiveQuota 1GB ` 
30.
					-ArchiveWarningQuota 800MB ` 
31.
					-RetainDeletedItemsFor "30.00:00:00" ` 
32.
					-AddressBookPolicy "IT-Contact extern GmbH" 
33.
	    }elseif (($OU -eq "it-contact.local/Frankfurt (FFM)/IT-Contact/Users") -and ($ATT -ne "extern")){ 
34.
				Enable-Mailbox $USER -Archive -ArchivDatabase ArchivMDB 
35.
				Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
36.
				Set-Mailbox -Identity $USER ` 
37.
					-SingleItemRecoveryEnabled $true ` 
38.
					-UseDatabaseQuotaDefaults $false ` 
39.
					-IssueWarningQuota 900MB ` 
40.
					-ProhibitSendQuota 1GB ` 
41.
					-ProhibitSendReceiveQuota 1.1GB ` 
42.
					-ArchiveQuota 2GB ` 
43.
					-ArchiveWarningQuota 1.8GB ` 
44.
					-RetainDeletedItemsFor "30.00:00:00" ` 
45.
					-AddressBookPolicy "IT-Contact GmbH" 
46.
		}elseif (($OU -eq "it-contact.local/Frankfurt (FFM)/MOC Testumgebung/Users") -and ($ATT -eq "extern")){ 
47.
				Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
48.
				Set-Mailbox -Identity $USER ` 
49.
					-SingleItemRecoveryEnabled $true ` 
50.
					-UseDatabaseQuotaDefaults $false ` 
51.
					-IssueWarningQuota 180MB ` 
52.
					-ProhibitSendQuota 200MB ` 
53.
					-ProhibitSendReceiveQuota 220MB ` 
54.
					-RetainDeletedItemsFor "21.00:00:00" ` 
55.
					-AddressBookPolicy "MOC Testumgebung extern" 
56.
		}elseif (($OU -eq "it-contact.local/Frankfurt (FFM)/MOC Testumgebung/Users") -and ($ATT -ne "extern")){ 
57.
				Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
58.
				Set-Mailbox -Identity $USER ` 
59.
					-SingleItemRecoveryEnabled $true ` 
60.
					-UseDatabaseQuotaDefaults $false ` 
61.
					-IssueWarningQuota 180MB ` 
62.
					-ProhibitSendQuota 200MB ` 
63.
					-ProhibitSendReceiveQuota 220MB ` 
64.
					-RetainDeletedItemsFor "21.00:00:00" ` 
65.
					-AddressBookPolicy "MOC Test intern" 
66.
		}	 
67.
68.
   </ApiCall> 
69.
  </Feature> 
70.
</Configuration>
Grüße Uwe
Bitte warten ..
Mitglied: LyriC76
14.08.2014 um 21:16 Uhr
vielen Dank für die Hilfe.
Du hast recht es wäre einfacher wenn ich es erst mal in der Powershell versucht hätte.
Wahrscheinlich hätte ich auch dann Fehlermeldungen bekomme, mit denen ich vielleicht was hätte anfangen können.
Ich werde es morgen erstmal testen.
Ich habe gesehen das du da 2 - 3 Zusatztatsachen eingebaut hat $cnt = 0 und das darunter werde mal morgen nachschlagen was das bedeutet.
Danke nochmal für die Hilfe.
Werde melden ob es so funktioniert hat.

lG Micha
Bitte warten ..
Mitglied: colinardo
LÖSUNG 14.08.2014, aktualisiert 17.08.2014
Ich habe gesehen das du da 2 - 3 Zusatztatsachen eingebaut hat $cnt = 0 und das darunter werde mal morgen nachschlagen was das bedeutet.
das ist nur eine Exit-Bedingung damit das Script nicht unendlich in einer Schleife hängen bleibt. Nach spätestens 60 Durchläufen bricht hier das Script ab falls $mbxExists immer noch $false sein sollte.
Bitte warten ..
Mitglied: LyriC76
17.08.2014, aktualisiert um 11:04 Uhr
Hi,
danke für die Hilfe.
Inzwischen läuft das Script musste noch ein paar Parameter ändern.
Ich poste hier mal das fertige Script. Ich werde es noch ein wenig erweitern, aber vielleicht hilft es anderen.
01.
<?xml version="1.0" encoding="utf-8" ?> 
02.
<Configuration version="1.0"> 
03.
 <Feature Name="MailboxProvisioning" Cmdlets="Enable-Mailbox"> 
04.
  <ApiCall Name="OnComplete"> 
05.
	if ($succeeded)  
06.
07.
		$tObj = (Get-User $provisioningHandler.UserSpecifiedParameters["Identity"]).distinguishedName 
08.
		do { 
09.
			sleep -seconds 1 
10.
			$mbxExists = Get-MailBoxPermission -Identity $tObj -User "NT AUTHORITY\SELF" -ErrorAction SilentlyContinue 
11.
		} while (!$mbxExists) 
12.
		 
13.
		Set-ADServersettings -ViewEntireForest $true 
14.
		$USER = $provisioningHandler.UserSpecifiedParameters["Alias"] 
15.
		$OU = (Get-User -Identity $USER).OrganizationalUnit 
16.
		$ATT = (Get-mailbox -Identity $USER).customattribute1 
17.
		 
18.
		if (($OU -eq "XXXXXXXXXXXXXXXXXXXXXXXXXXX") -and ($ATT -eq "extern"))	{ 
19.
				Enable-Mailbox -Identity $USER -Archive -ArchiveDatabase ArchivMDB 
20.
				Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
21.
				Set-Mailbox -Identity $USER ` 
22.
					-SingleItemRecoveryEnabled $true ` 
23.
					-UseDatabaseQuotaDefaults $false ` 
24.
					-IssueWarningQuota 450MB ` 
25.
					-ProhibitSendQuota 500MB ` 
26.
					-ProhibitSendReceiveQuota 550MB ` 
27.
					-ArchiveQuota 1GB ` 
28.
					-ArchiveWarningQuota 800MB ` 
29.
					-UseDatabaseRetentionDefaults $false ` 
30.
					-RetainDeletedItemsFor "30.00:00:00" ` 
31.
					-AddressBookPolicy "XXXXXXXXXXXXXXXXXXX" 
32.
	    }elseif (($OU -eq "XXXXXXXXXXXXXXXXXXXXXXXXXXXX") -and ($ATT -ne "extern")){ 
33.
				Enable-Mailbox -Identity $USER -Archive -ArchiveDatabase ArchivMDB 
34.
				Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
35.
				Set-Mailbox -Identity $USER ` 
36.
					-SingleItemRecoveryEnabled $true ` 
37.
					-UseDatabaseQuotaDefaults $false ` 
38.
					-IssueWarningQuota 900MB ` 
39.
					-ProhibitSendQuota 1GB ` 
40.
					-ProhibitSendReceiveQuota "1,1GB" ` 
41.
					-ArchiveQuota 2GB ` 
42.
					-ArchiveWarningQuota "1,8GB" ` 
43.
					-UseDatabaseRetentionDefaults $false ` 
44.
					-RetainDeletedItemsFor "30.00:00:00" ` 
45.
					-AddressBookPolicy "XXXXXXXXXXXXXXXX" 
46.
		}elseif (($OU -eq "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX") -and ($ATT -eq "extern")){ 
47.
				Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
48.
				Set-Mailbox -Identity $USER ` 
49.
					-SingleItemRecoveryEnabled $true ` 
50.
					-UseDatabaseQuotaDefaults $false ` 
51.
					-IssueWarningQuota 180MB ` 
52.
					-ProhibitSendQuota 200MB ` 
53.
					-ProhibitSendReceiveQuota 220MB ` 
54.
					-UseDatabaseRetentionDefaults $false ` 
55.
					-RetainDeletedItemsFor "21.00:00:00" ` 
56.
					-AddressBookPolicy "XXXXXXXXXXXXXXXXX" 
57.
		}elseif (($OU -eq "XXXXXXXXXXXXXXXXXXXXXXXXXXX") -and ($ATT -ne "extern")){ 
58.
				Set-CASMailbox -Identity $USER -PopEnabled $false -ImapEnabled $false 
59.
				Set-Mailbox -Identity $USER ` 
60.
					-SingleItemRecoveryEnabled $true ` 
61.
					-UseDatabaseQuotaDefaults $false ` 
62.
					-IssueWarningQuota 180MB ` 
63.
					-ProhibitSendQuota 200MB ` 
64.
					-ProhibitSendReceiveQuota 220MB ` 
65.
					-UseDatabaseRetentionDefaults $false ` 
66.
					-RetainDeletedItemsFor "21.00:00:00" ` 
67.
					-AddressBookPolicy "XXXXXXXXXXXXXXXX" 
68.
		}	 
69.
70.
   </ApiCall> 
71.
  </Feature> 
72.
</Configuration>
Die XXXXXXXXXXXXXX bitte dem Passenden Wert ersetzen der bei euch zutrifft.

Nochmals vielen Dank.

lG
Micha
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...