維護 SharePoint Server 2013 中的使用者設定檔同步處理設定

 

**適用版本:**SharePoint Server 2013

**上次修改主題的時間:**2017-08-02

**摘要:**了解如何設定使用者設定檔同步處理之後保留SharePoint Server 2013中的使用者設定檔同步處理設定。

設定檔同步處理中SharePoint Server 2013啟用同步處理使用者和群組設定檔資訊儲存在整個企業儲存在目錄服務的設定檔資訊的SharePoint Server 2013設定檔存放區中之 [使用者設定檔服務的執行個體的管理員。設定使用者設定檔同步處理之後,您必須完成工作來維護的那些設定。這些工作包括,例如,移除的使用者帳戶已停用或刪除、 移動或重新命名伺服器,並啟動或停止 User Profile Synchronization service。如需詳細資訊,請參閱規劃 SharePoint Server 2013 Preview 的設定檔同步處理

若要執行本文中的PowerShell cmdlet,確認您具備下列成員資格:

  • SQL Server 執行個體上的 securityadmin 固定伺服器角色。

  • 所有要更新之資料庫上的 db_owner 固定資料庫角色。

  • 正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。

重要

本文適用於SharePoint Server 2013。

本文內容:

  • 重新命名使用者或變更使用者網域

  • 排除已停用帳戶的使用者

  • 移除過時的使用者與群組

  • 維護設定檔結構描述變更

  • 重新命名執行 User Profile Synchronization Service 的伺服器

  • 將 User Profile Synchronization Service 移至新的伺服器

  • 將使用者設定檔同步處理通訊限制在特定網域控制站

  • 調整使用者設定檔同步處理逾時

重新命名使用者或變更使用者網域

SharePoint Server 2013可讓您處理數個不同的使用者移轉案例。處理的 Active Directory 網域服務 (AD DS) 的案例的範例如下:

  • 帳戶名稱 (sAMAccountName) 在使用者所在的 AD DS 中發生變更。

  • 安全性識別碼 (SID) 發生變更。

  • 包含組織單位 (OU) 容器中的使用者帳戶所在的 AD DS 中變更的辨別的名稱 (DN) 變更。例如,如果使用者的辨別名稱移從 AD DS 中"使用者 = EUROPE\John Smith Manager = CN = John Rodman,OU = Users,DC = EMEA1,DC = corp,DC = contoso,DC = com"以"使用者 = EUROPE\John Smith Manager = CN = John Rodman,OU = 管理員、 DC = EMEA1,DC = corp,DC = contoso,DC = com", MigrateUser命令更新使用者設定檔儲存為此使用者。John Smith 的使用者設定檔會更新時同步處理使用者設定檔從 EMEA1.corp.contoso.com AD DS SharePoint Server 2013使用者設定檔儲存。

若要重新命名使用者或變更使用者網域

  1. 確認執行此程序的使用者帳戶具有下列認證:

    • 執行此程序的使用者帳戶是執行 SharePoint 管理中心網站之電腦的伺服器陣列管理員群組成員。

    • 執行此程序的使用者帳戶是安裝 User Profile Synchronization Service 之電腦的管理員群組成員。

  2. 如果正在進行同步處理,請開啟管理中心,然後按一下 [應用程式管理] 區段中的 [管理服務應用程式]。從服務應用程式清單中選取適當的 User Profile Service 應用程式。在「管理服務應用程式」頁面上,按一下 [停止設定檔同步處理]。

  3. 停用使用者設定檔累加同步處理計時器工作。

  4. 確定使用 stsadm -o migrateuser 進行的使用者移轉已成功。

  5. 經由瀏覽至已移轉使用者的「我的網站」(例如 http://mysite/person.aspx?accountname=<新的帳戶名稱>),確認該使用者的設定檔可以存取。

  6. 執行使用者設定檔同步處理。如需詳細資訊,請參閱在 SharePoint Server 中手動啟動設定檔同步處理

  7. 經由瀏覽至已移轉使用者的「我的網站」,再次檢查是否可存取該使用者的設定檔。

  8. 啟用使用者設定檔累加同步處理計時器工作。

排除已停用帳戶的使用者

您可以排除已停用帳戶在 AD DS 中所述SharePoint Server 2013的排除篩選的使用者。如要排除已停用之帳戶的使用者所需的步驟,請參閱同步處理 SharePoint Server 2013 中的使用者與群組設定檔

移除過時的使用者與群組

有過時的使用者或群組可以存在SharePoint Server 2013使用者設定檔儲存中的兩個原因:

  • 過時的使用者:「我的網站」清除計時器工作目前不在作用中。User Profile Synchronization 計時器工作會將已經從目錄來源中刪除的使用者標記為待刪除。當「我的網站」清除工作執行時,它會尋找所有標記為待刪除的使用者並刪除這些使用者的設定檔。然後將各自「我的網站」指派給已刪除之使用者的主管,並向該主管發出一封電子郵件通知此刪除情況。

  • 已過時的使用者與群組: 使用者設定檔儲存中存在的使用者並不設定檔同步處理來匯入的群組。便會發生此,例如,如果您從舊版SharePoint Server 2013升級並選擇只與SharePoint Server 2013同步的網域子集。

尋找及使用PowerShell移除過時的使用者和群組

  1. 確認您具備下列成員身分:

    • 設定檔資料庫中之 ImportExport_GetNonimportedObjectsImportExport_PurgeNonimportedObjects 預存程序的「執行」權限。
  2. 啟動 SharePoint 管理命令介面。

  3. 在 PowerShell 命令提示字元處,執行下列動作:

    1. 若要取得 User Profile Service 應用程式物件,請輸入下列命令:

      $upa = Get-spserviceapplication <identity>
      

      其中 <身分識別> 是 User Profile Synchronization Service 應用程式的 GUID。

    2. 若要檢視要刪除的使用者和群組,請輸入下列命令:

      Set-SPProfileServiceApplication $upa -GetNonImportedObjects $true
      
    3. 若要刪除過時的使用者和群組,請輸入下列命令:

      警告

      此動作無法復原。

      Set-SPProfileServiceApplication $upa -PurgeNonImportedObjects $true
      

如需詳細資訊,請參閱<Get-SPServiceApplication>和<Set-SPProfileServiceApplication>。

維護設定檔結構描述變更

設定檔結構描述變更包括例如新增新的使用者設定檔屬性,變更使用者設定檔屬性對應,或變更設定檔同步處理連線篩選器的事項。當設定檔結構描述變更時,您必須先執行完整非週期性的同步處理之前排程週期性設定檔同步處理。如需執行完整非週期性設定檔同步處理,請參閱在 SharePoint Server 中手動啟動設定檔同步處理所需的步驟。

重新命名執行 User Profile Synchronization Service 的伺服器

請使用下列程序來重新命名設定檔同步處理伺服器。

若要重新命名伺服器使用PowerShell執行 User Profile synchronization service

  1. 啟動 SharePoint 管理命令介面。

  2. 在 PowerShell 命令提示字元處,輸入下列命令:

    Rename-SPServer <Identity> -Name <newName>
    

    其中:

    • 身分識別是伺服器的舊名稱。

    • 新名稱是伺服器的新名稱。

如需使用 Microsoft PowerShell 重新命名伺服器的詳細資訊,請參閱<Rename-SPServer>。

將 User Profile Synchronization Service 移至新的伺服器

使用下列程序,將 User Profile Synchronization Service 移至新伺服器。

使用管理中心將 User Profile Synchronization service 移至新的伺服器

  1. 確認執行此程序的使用者帳戶具有下列認證:

    • 執行此程序的使用者帳戶是執行 SharePoint 管理中心網站之電腦的伺服器陣列管理員群組成員。

    • 執行此程序的使用者帳戶是安裝 User Profile Synchronization Service 之電腦的管理員群組成員。必須符合此條件才能啟動 User Profile Synchronization Service。User Profile Synchronization Service 啟動之後,您可以從管理員群組移除伺服器陣列帳戶。

  2. 在目前執行 User Profile Synchronization Service 之伺服器的 SharePoint 管理中心網站上,按一下 [系統設定] 區段中的 [管理伺服器上的服務]。

  3. 按一下在 [User Profile Synchronization Service] 旁的 [停止],以停止 User Profile Synchronization Service。

  4. 在新的使用者設定檔同步處理伺服器之 SharePoint 管理中心網站上,按一下 [系統設定] 區段中的 [管理伺服器上的服務]。

  5. 按一下在 [User Profile Synchronization Service] 旁的 [啟動],以啟動 User Profile Synchronization Service。

  6. 在新的使用者設定檔同步處理伺服器之 SharePoint 管理中心網站上,按一下 [應用程式管理] 區段中的 [管理服務應用程式]。

  7. 在「服務應用程式」頁面上,按一下適當的 User Profile Service 應用程式之名稱所對應的連結。

  8. 在「User Profile Service 應用程式」頁面上,按一下 [同步處理] 區段中的 [啟動設定檔同步處理]。

  9. 在「啟動設定檔同步處理」頁面上,選取 [啟動完整同步處理],然後按一下 [確定]。

將使用者設定檔同步處理通訊限制在特定網域控制站

請使用下列程序將設定檔同步處理通訊限制在特定網域控制站。

若要使用 Windows PowerShell 限制在特定網域控制站的使用者設定檔同步處理通訊

  1. 啟動 SharePoint 管理命令介面。

  2. 若要取得 User Profile Service 應用程式物件,請輸入下列命令:

    $upa=Get-SPServiceApplication <GUID>
    

    其中 <GUID> 是 User Profile Synchronization Service 應用程式的 GUID。

  3. 若要將設定檔同步處理通訊限制在特定網域控制站,請輸入下列命令:

    Set-SPProfileServiceApplication $upa -UseOnlyPreferredDomainControllers $true
    

    注意

    可能需要五分鐘傳播至SharePoint 管理中心網站已變更的屬性值。重設IIS管理中心伺服器上會強制要載入立即的新值。如需重設IIS的詳細資訊,請參閱IIS 重設活動

如需詳細資訊,請參閱 < Get-spserviceapplication > 與 < Set-spprofileserviceapplication。

調整使用者設定檔同步處理逾時

下列情況會發生逾時問題:

  • 嘗試在管理中心的 [新增/編輯同步處理連線] 頁面上連線目錄服務伺服器時。

  • 嘗試在管理中心的 [新增/編輯同步處理連線] 頁面上填入容器清單時。狀態列中出現 JavaScript 逾時錯誤時,會出現此情況。

  • 在管理中心的 [新增/編輯同步處理連線] 頁面上按一下[確定]時。如此會導致下列錯誤訊息,且出現此情況的原因在於 Forefront Identity Manager Web 服務在建立或更新使用者設定檔同步處理連線時出現逾時:

    「要求通道在等待回覆時於 00:01:29.9062626 之後逾時。請增加傳送至要求呼叫的逾時值,或增加繫結上的 SendTimeout 值。分配給此作業的時間可能是較長逾時的一部分。」

若要使用 Windows PowerShell 調整使用者設定檔同步處理逾時

  1. 如果您想變更連線目錄伺服器的逾時值,請執行下列動作:

    1. 將下列程式碼貼到 [記事本] 等文字編輯器:

      $upsAppProxy = Get-SPServiceApplicationProxy <UPSAppProxyGUID>
      $upsAppProxy.LDAPConnectionTimeout = <NewTimeout>
      $upsAppProxy.Update()
      
    2. <UPS 應用程式 ProxyGUID> 取代成 User Profile Service 應用程式 Proxy 的 GUID,並將 <新逾時> 變更為新的逾時值 (秒)。預設逾時為 120 秒。

    3. 將檔案儲存成以 ANSI 編碼的文字檔案,副檔名為 .ps1。

  2. 如果想要變更「填入容器」控制項的逾時值,請執行以下步驟:

    1. 將下列程式碼貼到記事本等文字編輯器:

      $upsAppProxy = Get-SPServiceApplicationProxy <UPSAppProxyGUID>
      $upsAppProxy.ImportConnAsyncTimeout = <NewTimeout>
      $upsAppProxy.Update()
      
    2. 如果想變更呼叫 Forefront Identity Manager Web 服務的逾時值,請執行下列動作:

      <UPS 應用程式 Proxy GUID> 取代成 User Profile Service 應用程式Proxy 的 GUID,並將 <新逾時> 變更為新的逾時值 (秒)。預設逾時為 1,000 秒 (大約 17 分鐘)。

    3. 將下列程式碼貼到記事本等文字編輯器:

      $upsApp = Get-SPServiceApplication 
      <UPSAppGUID>
      $upsApp.FIMWebClientTimeOut = 
      <NewTimeout>
      $upsApp.Update()
      
    4. <UPS 應用程式 Proxy GUID> 取代成 User Profile Service 應用程式的 GUID,並將 <新逾時> 變更為新的逾時值 (毫秒)。預設逾時為 300,000 毫秒 (5 分鐘)。

    5. 將檔案儲存成以 ANSI 編碼的文字檔案,副檔名為 .ps1,例如 AdjustProfileSyncTimeouts.ps1。

  3. 在 [開始] 功能表上,按一下 [所有程式]。

  4. 按一下 [Microsoft SharePoint 2013 產品]。

  5. 按一下 [SharePoint 2013 管理命令介面]。

  6. 變更至您儲存檔案的目錄。

  7. 在 Microsoft PowerShell 命令提示字元處輸入下列命令,以執行指令碼檔案:

    ./<file name>.ps1
    

    其中 <檔案名稱> 是要執行之檔案的名稱。

如需詳細資訊,請參閱 < Get-spserviceapplicationproxy > 與 < Get-spserviceapplication。