本文為機器翻譯文章。如需檢視英文版,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

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

 

適用版本:SharePoint Server 2013

上次修改主題的時間:2016-12-16

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

透過 SharePoint Server 2013 中的設定檔同步處理,User Profile Service 執行個體的管理員能夠將 SharePoint Server 2013 設定檔儲存中所儲存的使用者與群組設定檔資訊,與企業目錄服務中所儲存的設定檔資訊進行同步處理。設定使用者設定檔同步處理之後,必須完成某些工作才能保留這些設定。這些工作的範例包括移除已停用或已刪除帳戶的使用者、移動或重新命名伺服器,以及啟動或停止 User Profile Synchronization Service 等。如需詳細資訊,請參閱<規劃 SharePoint Server 2013 Preview 的設定檔同步處理>。

重要事項 重要事項:
本文僅適用於 SharePoint Server 2013。

本文內容:

開始此作業之前,請檢閱下列必要條件的相關資訊:

重要事項 重要事項:
如需設定檔同步處理所需的其他需求,請參閱<SharePoint 2013 的硬體及軟體需求>。
注意事項 附註:
因為 SharePoint 2013 在 Internet Information Services (IIS) 中以網站形式運作,所以管理員與使用者均依賴瀏覽器提供的協助工具功能。SharePoint 2013 支援所支援瀏覽器的協助工具功能。如需詳細資訊,請參閱下列資源:

SharePoint Server 2013 可讓您處理多種不同使用者移轉案例。以下是針對 Active Directory 網域服務 (AD DS) 處理的案例範例:

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

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

  • 辨別名稱 (DN) 發生變更,其中包括使用者帳戶所在之 AD DS 的組織單位 (OU) 容器中的變更。例如,如果使用者的辨別名稱在 AD DS 中從 "User= EUROPE\John Smith, Manager=CN=John Rodman, OU=Users, DC=EMEA1, DC=corp, DC=contoso, DC=com" 移到 "User= EUROPE\John Smith, Manager=CN=John Rodman, OU=Managers, DC=EMEA1, DC=corp, DC=contoso,DC=com",MigrateUser 命令會更新此使用者的使用者設定檔儲存。在將使用者設定檔從 EMEA1.corp.contoso.com AD DS 同步到 SharePoint Server 使用者設定檔儲存時,John Smith 的使用者設定檔會進行更新。

重新命名使用者或變更使用者網域
  1. 確認執行此程序的使用者帳戶具有下列認證:

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

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

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

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

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

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

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

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

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

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

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

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

  • 過時的使用者與群組:使用者設定檔儲存中存在不是由設定檔同步處理所匯入的使用者與群組。舉例來說,如果您從舊版的 SharePoint Server 升級,而且選擇只與 SharePoint Server 2013 同步處理網域的子集,即會出現此情況。

使用 Windows PowerShell 尋找及移除過時的使用者與群組
  1. 確認您具備下列成員資格:

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

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

    • 執行 Windows PowerShell Cmdlet 之伺服器上的管理員群組。

    • 設定檔資料庫中之 ImportExport_GetNonimportedObjectsImportExport_PurgeNonimportedObjects 預存程序的「執行」權限。

    系統管理員可以使用Add-SPShellAdmin cmdlet 來授與使用SharePoint 2013 cmdlet 的權限。您可以使用 SQL Management Studio或 TRANSACT-SQL 來授與資料庫權限。如需詳細資訊,請參閱GRANT 物件的權限 (TRANSACT-SQL)

    注意事項 附註:
    如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。如需 Windows PowerShell 權限的其他資訊,請參閱<Add-SPShellAdmin>。
  2. 啟動 SharePoint 2013 管理命令介面。

    • 若為 Windows Server 2008 R2:

      • 在 [開始] 功能表上,依序按一下 [所有程式]、[Microsoft SharePoint 2013 產品] 及 [SharePoint 2013 管理命令介面]。

    • 若為 Windows Server 2012:

      1. 在 [開始] 畫面上,按一下 [SharePoint 2013 管理命令介面]。

        如果 [SharePoint 2013 管理命令介面] 不在 [開始] 畫面上:

      2. 以滑鼠右鍵依序按一下 [電腦]、[所有應用程式] 與 [SharePoint 2013 管理命令介面]。

    如需如何與Windows Server 2012互動的詳細資訊,請參閱 <的 Windows Server 2012 R2 和 Windows Server 2012 一般管理工作與導覽

  3. 在 Windows 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>。

注意事項 附註:
我們建議您在執行命令列管理工作時使用 Windows PowerShell。Stsadm 命令列工具雖已被取代,但依然涵蓋在內,這是為了與先前的產品版本相容。

設定檔結構描述變更包括新增新的使用者設定檔屬性、變更使用者設定檔屬性對應,或變更設定檔同步處理連線篩選等內容。當設定檔結構描述發生變更時,必須先執行非週期性的完整同步處理,然後再排程週期性的設定檔同步處理。如需執行非週期性之設定檔完整同步處理所需的步驟,請參閱<在 SharePoint Server 2013 中以手動方式啟動設定檔同步處理>。

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

使用 Windows PowerShell 重新命名執行 User Profile Synchronization Service 的伺服器
  1. 確認您具備下列成員資格:

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

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

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

    管理員可以使用 Add-SPShellAdmin Cmdlet 來授與使用 SharePoint 2013 Cmdlet 的權限。

    注意事項 附註:
    如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。如需 Windows PowerShell 權限的其他資訊,請參閱<Add-SPShellAdmin>。
  2. 啟動 SharePoint 2013 管理命令介面。

    • 若為 Windows Server 2008 R2:

      • 在 [開始] 功能表上,依序按一下 [所有程式]、[Microsoft SharePoint 2013 產品] 及 [SharePoint 2013 管理命令介面]。

    • 若為 Windows Server 2012:

      1. 在 [開始] 畫面上,按一下 [SharePoint 2013 管理命令介面]。

        如果 [SharePoint 2013 管理命令介面] 不在 [開始] 畫面上:

      2. 以滑鼠右鍵依序按一下 [電腦]、[所有應用程式] 與 [SharePoint 2013 管理命令介面]。

    如需如何與Windows Server 2012互動的詳細資訊,請參閱< Windows Server 2012 一般管理工作及瀏

  3. 在 Windows PowerShell 命令提示字元處輸入下列命令:

    Rename-SPServer <Identity> -Name <newName>
    

    其中:

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

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

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

注意事項 附註:
我們建議您在執行命令列管理工作時使用 Windows PowerShell。Stsadm 命令列工具雖已被取代,但依然涵蓋在內,這是為了與先前的產品版本相容。

使用下列程序,將 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. 確認您具備下列成員資格:

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

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

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

    管理員可以使用 Add-SPShellAdmin Cmdlet 來授與使用 SharePoint 2013 Cmdlet 的權限。

    注意事項 附註:
    如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。如需 Windows PowerShell 權限的其他資訊,請參閱<Add-SPShellAdmin>。
  2. 在 [開始] 功能表上,按一下 [所有程式]。

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

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

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

    $upa=Get-SPServiceApplication <GUID>
    

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

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

    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. 確認您具備下列成員資格:

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

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

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

    管理員可以使用 Add-SPShellAdmin Cmdlet 來授與使用 SharePoint 2013 Cmdlet 的權限。

    注意事項 附註:
    如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。如需 Windows PowerShell 權限的其他資訊,請參閱<Add-SPShellAdmin>。
  2. 如果您想變更連線目錄伺服器的逾時值,請執行下列動作:

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

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

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

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

    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。

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

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

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

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

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

    ./<file name>.ps1
    

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

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

https://technet.microsoft.com/zh-tw/library/ff607714.aspx
顯示: