Frage : bewirteter Austausch?

wir haben z.Z., Vati als unser bewirtetes Netz und Austausch zu gehen. wir sind nicht mit ihren Dienstleistungen glücklich und Post geht atleast jeder andere Monat hinunter. wir sind eine smb Sozietät mit einem festen Etat und möchten die Fähigkeit haben, Kalender unter anderen Mitarbeitern zu teilen. bewirteter Austausch der godaddys erlaubt nicht den. kann jemand mich empfehlen ein guter bewirteter Austauschversorger??

Antwort : bewirteter Austausch?

Fand den Code. Sind hier einige der Schlüsselstücke des Codes/der Logik.

Wieder für jedes webapplication, erhalte ich jede Aufstellungsortansammlung. Der Code beginnt auf einer gegebenen Aufstellungsortansammlung.

Die Aufstellungsortansammlungs-Benutzerliste erhalten.
Für jeden Benutzer Überprüfung, wenn Benutzer in der ANZEIGE über LoginName (samAccountName) existieren. Wenn Benutzer Zeilensprung (das migrateuser nicht benötigt) existieren. Wenn Benutzer oben existiert nicht, erhält SID des Benutzers und schaut, gründete ANZEIGE auf SID.
Wenn Sie gefunden werden, den neuen LOGON-Namen erhalten und erzeugen abwandern Benutzerbefehl zur Reihenakte.
Merken, dass die Reihenakte Mehrfachverbindungsstelle hat, Linien für den gleichen Benutzer über den Aufstellungsortansammlungen zu wiederholen. Ich verwende einen powershell Artbefehl, die Duplikate im Ende (GASCHROMATOGRAPHIE C:\migrateUsers.txt zu entfernen| Art | GU > C:\migrateUsers.bat)



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:
6:
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:
66:
[System.Reflection.Assembly]:: LoadWithPartialName („Microsoft.SharePoint“) > $null
$site = Neugegenstand Microsoft.SharePoint.SPSite ($SiteCollectionURL)
$web = $site.openweb ()

$siteCollUsers = $web.SiteUsers

foreach ($MyUser in $siteCollUsers)
{
	wenn (($MyUser.LoginName.ToLower () - Ne „sharepoint \ System“) - und ($MyUser.LoginName.ToLower () - Ne „NT-Berechtigung \ beglaubigte Benutzer“) - und ($MyUser.LoginName.ToLower () - Ne „NT-Berechtigung \ lokaler Service“))
	{
		$UserName = $MyUser.LoginName.ToLower ()
		$UserNameSplit = $UserName.split („\ ")
		#WriteWirt „Benutzer-LOGON: “, $MyUser.LoginName, „SID: “, $MyUser.Sid

		$returncheck = Check_User_In_ActiveDirectory $UserNameSplit [1] $mydomaincnx 
		wenn ($returncheck - eq $False)
		{

			$nameFromSID = ConvertTo-Name $MyUser.Sid
			wenn ($nameFromSID - Ne „Benutzer nicht gefunden“)
			{
				$command = „stsadm.exe - O migrateuser - oldlogin“ + $MyUser.LoginNAme + „- newlogin“ + $nameFromSID + „- ignoresidhistory“
				Schreiben-Ausgang $command | Herausakte C:\migrateUsers.txt - hinzufügen
			}


		}
	}
}

$web. Abschaffen ()
$site. Schaffen ab ()

Funktion ConvertTo-Name ($SID) 
{
   Falle 
   {
      „Benutzer nicht gefunden“; fortfahren
   }
   ((Neugegenstand security.principal.securityidentifier $SID) .translate ([security.principal.ntaccount])). Wert
}

Funktion Check_User_In_ActiveDirectory ([Schnur] $LoginName, [Schnur] $domaincnx)
{
	$returnValue = $false
	#Filter auf Benutzer, der existiert und aktivierte
	$strFilter = „(u. (|(objectCategory=user) (objectCategory=group))(samAccountName=$LoginName))“
	$objDomain = Neu-Gegenstand System.DirectoryServices.DirectoryEntry ($domaincnx)

	$objSearcher = Neu-Gegenstand System.DirectoryServices.DirectorySearcher
	$objSearcher.SearchRoot = $objDomain
	$objSearcher.PageSize = 1000
	$objSearcher.Filter = $strFilter
	$objSearcher.SearchScope = „Unterbaum“

	#$objSearcher.PropertiesToLoad.Add („Name“)

	$colResults = $objSearcher.FindAll ()

	wenn ($colResults.Count - GT 0)
	{
		#WriteWirt „Konto existiert und Active: “, $LoginName
		$returnValue = $true
	}
	Rückhol$returnValue
}
Weitere Lösungen  
 
programming4us programming4us