Questione : scambio ospitato?

attualmente abbiamo andare daddy come il nostri fotoricettore e scambio ospitati. non siamo soddisfatti dei loro servizi e la posta scende atleast ogni altro mese. siamo una ditta di legge dello smb con un preventivo stretto e vorremmo avere la capacità di ripartire il calendario tra altri colleghe. lo scambio ospitato dei godaddy non permette quello. può chiunque suggerirlo un buon fornitore ospitato di scambio?? class= del

Risposta : scambio ospitato?

Ha trovato il codice. Qui sono alcune delle parti chiave del codice/logica.

Di nuovo, per ogni webapplication, ottengo ogni accumulazione del luogo. Il codice comincia su una collezione data del luogo.

Ottenere la lista di utente dell'accumulazione del luogo.
Per ogni utente, controllo se l'utente esiste in ANNUNCIO via LoginName (samAccountName). Se l'utente esiste salto (migrateuser non stato necessario). Se l'utente non esiste, non ottiene il Sid dell'utente e non osserva in su l'ANNUNCIO ha basato sul Sid.
Se trovato, ottenere il nuovo nome di inizio attività e generare migrano l'ordine dell'utente allo schedario di lavoro.
Si noti che lo schedario di lavoro avrà multiplo ripetere le linee per lo stesso utente attraverso le collezioni del luogo. Uso un ordine di specie del powershell rimuovere i duplicati alla fine (GASCROMATOGRAFIA C:\migrateUsers.txt| Specie | 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:
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:
66:
[System.Reflection.Assembly]:: LoadWithPartialName (“Microsoft.SharePoint„) > $null
$site = nuovo-oggetto Microsoft.SharePoint.SPSite ($SiteCollectionURL)
$web = $site.openweb ()

$siteCollUsers = $web.SiteUsers

foreach ($MyUser in $siteCollUsers)
{
	se (($MyUser.LoginName.ToLower () - Ne “sharepoint \ sistema„) - e ($MyUser.LoginName.ToLower () - Ne “autorità del NT \ utenti autenticati„) - e (Ne “autorità del NT \ servizio locale„ di $MyUser.LoginName.ToLower () -))
	{
		$UserName = $MyUser.LoginName.ToLower ()
		$UserNameSplit = $UserName.split (“\ ")
		Inizio attività dell'utente dell'#Write-Ospite “: „, $MyUser.LoginName, “SID: „, $MyUser.Sid

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

			$nameFromSID = ConvertTo-Nome $MyUser.Sid
			se ($nameFromSID - Ne “utente non trovato„)
			{
				$command = “stsadm.exe - migrateuser della o - oldlogin„ + $MyUser.LoginNAme + “- newlogin„ + $nameFromSID + “- ignoresidhistory„
				Scrivere-uscita $command | fuori-lima C:\migrateUsers.txt - aggiungere
			}


		}
	}
}

$web. Disporre ()
$site. Dispongono ()

ConvertTo-Nome di funzione ($SID) 
{
   presa 
   {
      “Utente non trovato„; continuare
   }
   ((nuovo-oggetto security.principal.securityidentifier $SID) .translate ([security.principal.ntaccount])). Valore
}

funzione Check_User_In_ActiveDirectory ([stringa] $LoginName, [stringa] $domaincnx)
{
	$returnValue = $false
	#Filter sull'utente che esiste ed attivato
	$strFilter = “(& (|(objectCategory=user) (objectCategory=group))(samAccountName=$LoginName))„
	$objDomain = Nuovo-Oggetto System.DirectoryServices.DirectoryEntry ($domaincnx)

	$objSearcher = Nuovo-Oggetto System.DirectoryServices.DirectorySearcher
	$objSearcher.SearchRoot = $objDomain
	$objSearcher.PageSize = 1000
	$objSearcher.Filter = $strFilter
	$objSearcher.SearchScope = “sotto-albero„

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

	$colResults = $objSearcher.FindAll ()

	se ($colResults.Count - GT 0)
	{
		Il cliente dell'#Write-Ospite “esiste ed Active: „, $LoginName
		$returnValue = $true
	}
	$returnValue di ritorno
}
Altre soluzioni  
 
programming4us programming4us