從傳統模式移轉至宣告式驗證 (SharePoint Server 2010)

 

適用版本: SharePoint Foundation 2010, SharePoint Server 2010

上次修改主題的時間: 2016-11-30

本文中的程序提供相關指導,以協助您移轉設定為使用傳統模式驗證的現有 Microsoft SharePoint Server 2010 Web 應用程式,以使用宣告式驗證。若要實作非 Windows 驗證的驗證方法 (例如,若要建立支援表單型驗證的 Web 應用程式),您可能決定執行此作業。如需詳細資訊,請參閱<規劃驗證方法 (SharePoint Server 2010)>。

警告

將 Web 應用程式移轉至宣告式驗證之後,則無法回復到傳統模式驗證。

將使用傳統模式驗證的 SharePoint Server 2010 Web 應用程式轉換成使用宣告式驗證

執行下列程序中的步驟,使用 Windows PowerShell 將現有 Web 應用程式轉換為宣告式驗證。

將 Web 應用程式轉換為宣告式驗證

  1. 請確認符合下列基本需求:請參閱<Add-SPShellAdmin>。

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

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

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

  5. 在 Windows PowerShell 命令提示字元處,輸入下列項目:

    $WebAppName = "http:// yourWebAppUrl"
    $account = "yourDomain\yourUser"
    $wa = get-SPWebApplication $WebAppName
    
    Set-SPwebApplication $wa -AuthenticationProvider (New-SPAuthenticationProvider) -Zone Default
    
  6. 在出現 [移轉] 提示時,按一下 [是] 繼續。

  7. 在 Windows PowerShell 命令提示字元處,輸入下列命令,以將使用者設定為網站的管理員:

    $wa = get-SPWebApplication $WebAppName
    $account = (New-SPClaimsPrincipal -identity $account -identitytype 1).ToEncodedString()
    
  8. 在 Windows PowerShell 命令提示字元處,輸入下列命令,以設定原則授與使用者完整存取權:

    $zp = $wa.ZonePolicies("Default")
    $p = $zp.Add($account,"PSPolicy")
    $fc=$wa.PolicyRoles.GetSpecialRole("FullControl")
    $p.PolicyRoleBindings.Add($fc)
    $wa.Update()
    
  9. 在 Windows PowerShell 命令提示字元處,輸入下列命令,以執行使用者移轉:

    $wa = get-SPWebApplication $WebAppName
    $wa.MigrateUsers($true)
    

注意

建議您在執行命令列管理工作時使用 Windows PowerShell。Stsadm 命令列工具已過時,但為與舊版產品相容,仍會隨附提供。

其他移轉指導方針

在您執行前述程序中的步驟之後,可能會遇到下列一或多個問題。

  • 送出有效認證的使用者可能會收到其沒有權限的通知。若發生此種情況,可能在移轉前便已設定 Web 應用程式的 portalsuperuseraccount 屬性和 portalsuperreaderaccount 屬性。若是此情形,您必須更新 portalsuperuseraccount 屬性和 portalsuperreaderaccount 屬性,以使用新的宣告式帳戶名稱。移轉後,即可在已移轉 Web 應用程式的 Web 應用程式原則中,尋找新的宣告式帳戶名稱。

  • 若現有警示不是在移轉後呼叫,您可能必須刪除並重新建立警示。

  • 若搜尋編目在移轉後無法運作,請確定搜尋編目帳戶列出新的轉換帳戶名稱。若未列出新的轉換帳戶名稱,則必須手動建立編目帳戶的新原則。