使用 PowerShell Cmdlet 讓 XRM 工具連線至 Dynamics 365

 

發行︰ 2017年1月

適用於: Dynamics 365 (online)、Dynamics 365 (on-premises)、Dynamics CRM 2016、Dynamics CRM Online

XRM 工具提供了下列 Windows PowerShell Cmdlet,可用來連線至 Microsoft Dynamics 365 和擷取目前使用者可存取的組織:Get-CrmConnectionGet-CrmOrganizations

本主題內容

先決條件

註冊 Cmdlet

使用 Cmdlet 從 Dynamics 365 擷取組織

使用 Cmdlet 連線到 Dynamics 365

先決條件

  • 若要使用 XRM 工具 Cmdlet,您需要 PowerShell 版本 3.0 或更新版本。 若要檢查版本,請開啟 PowerShell 視窗,並執行下列命令:$Host

  • 設定執行原則執行簽署的 PowerShell 指令碼。 若要這麼做,請以系統管理員身分開啟 PowerShell 視窗,並執行下列命令:Set-ExecutionPolicy -ExecutionPolicy AllSigned

註冊 Cmdlet

在您使用 PowerShell Cmdlet 之前,必須先加以註冊。

  1. 下載 Microsoft Dynamics CRM SDK 套件。 執行套件檔案,解壓縮套件的內容。 用來註冊 Cmdlet 的 PowerShell 組件 (Microsoft.Xrm.Tooling.CrmConnector.Powershell.dll) 以及指令碼 (RegisterXRMTooling.ps1) 位於 SDK 中的 \SDK\bin 資料夾。

  2. 在電腦,以提高的權限 (以系統管理員身分執行) 啟動 Windows PowerShell。

  3. 在提示字元中,將您的目錄變更至包含用於註冊 Cmdlet 的 PowerShelldll 檔案和指令碼的資料夾。 例如:

    cd c:\SDK\bin
    
  4. 執行 RegisterXRMTooling.ps1 指令碼,以註冊 XRM 工具 PowerShell 組件,並安裝 Windows PowerShell 嵌入式管理單元。 輸入下列命令,並按下 ENTER:

    .\RegisterXRMTooling.ps1
    
  5. 新增 Windows PowerShell 嵌入式管理單元。 這樣就會註冊 Get-CrmConnection 和 Get-CrmOrganizations Cmdlet。

    Add-PSSnapin Microsoft.Xrm.Tooling.Connector
    

現在您已經可以使用這些 Windows PowerShell cmdlet。 若要列出已註冊的 cmdlet,請在 Windows PowerShell 視窗中執行下列命令:

Get-Help “Crm”

使用 Cmdlet 從 Dynamics 365 擷取組織

使用 Get-CrmOrganizations Cmdlet 擷取您可存取的組織。

  1. 提供認證,連線到您的 Dynamics 365 (內部部署) 或 Microsoft Dynamics 365 (線上) 執行個體。 執行下列命令將會提示您輸入使用者名稱和密碼,以連線到 Dynamics 365 執行個體,它將會儲存在 $Cred 變數中。

    $Cred = Get-Credential
    
  2. 使用下列命令擷取您的組織,並將資訊儲存在 $CRMOrgs 變數中:

    • 如果您連線到 Dynamics 365 (內部部署) 伺服器:

      $CRMOrgs = Get-CrmOrganizations –ServerUrl http://<CRM_Server_Host> –Credential $Cred
      
    • 如果您連線到 Microsoft Dynamics 365 (線上) 執行個體:

      $CRMOrgs = Get-CrmOrganizations -Credential $Cred -DeploymentRegion NorthAmerica –OnlineType Office365
      

      注意

      DeploymentRegion 參數的有效值包括:NorthAmericaEMEAAPACSouthAmericaOceaniaJPNCANINDNorthAmerica2。 對於 OnlineType 參數,請指定 Office365

    • 如果您連線到 Dynamics 365 伺服器,並對指定的首頁領域使用宣告型驗證:

      $CRMOrgs = Get-CrmOrganizations –ServerUrl http://<CRM_Server_Host> –Credential $Cred –HomRealmURL http://<Identity_Provider_Address>
      
  3. 當您在步驟 2 中執行命令時,會驗證您提供的認證。 命令成功執行時,輸入下列命令,然後按 ENTER 顯示您可存取的組織:

    $CRMOrgs
    

    Cmdlet 傳回的組織清單

    提示

    您可以使用變數 (用於儲存擷取的 Dynamics 365 組織,在此案例中為 $CRMOrgs) 與 Get-CrmConnection Cmdlet 連線至 Dynamics 365。 若要指定組織名稱,請使用下列命令:$CRMOrgs.UniqueName。

    如果 $CRMOrgs 變數中儲存了多個組織值,您可以使用下列命令參考第 nth 個組織:$CRMOrgs[n-1]。 例如,若要參考 $CRMOrgs 變數中第二個組織的唯一名稱 (「SampleOrg」),請使用下列命令:$CRMOrgs[1].UniqueName。其他資訊:TechNet:存取陣列中的值

使用 Cmdlet 連線到 Dynamics 365

使用 Get-CrmConnection Cmdlet 連線到 Dynamics 365 執行個體。 Cmdlet 可讓您使用 XRM 工具的一般登入控制項指定您的認證並連線到 Dynamics 365,或是讓您指定您的認證做為內嵌參數。其他資訊:在您的用戶端應用程式中使用 XRM 工具一般登入控制項

使用一般登入控制項連線至 Dynamics 365

  1. 如果您要使用一般登入控制項提供您的認證以連線至 Dynamics 365,請使用下列命令。 連線資訊會儲存在 $CRMConn 變數中,方便您之後使用。

    $CRMConn = Get-CrmConnection -InteractiveMode
    
  2. [LoginControl] 對話方塊隨即出現。 提供您的認證以連線至 Dynamics 365 執行個體,然後按一下 [登入]。

藉由指定內嵌認證連線至 Dynamics 365

  1. 若要連線到 Dynamics 365,請使用下列命令。 請注意,這些命令使用先前建立的 $Cred 變數儲存認證,同時擷取組織。 連線資訊是儲存在 $CRMConn 變數中:

    • 如果您連線到 Dynamics 365 (內部部署) 伺服器:

      $CRMConn = Get-CrmConnection –ServerUrl http://<CRM_Server_Host> -Credential $Cred -OrganizationName <OrgName>
      
    • 如果您連線到 Microsoft Dynamics 365 (線上) 執行個體:

      $CRMConn = Get-CrmConnection -Credential $Cred -DeploymentRegion <Deployment region name> –OnlineType Office365 –OrganizationName <OrgName>
      

      注意

      DeploymentRegion 參數的有效值包括:NorthAmericaEMEAAPACSouthAmericaOceaniaJPNCANINDNorthAmerica2。 對於 OnlineType 參數,請指定 Office365

    • 如果您連線到 Dynamics 365 伺服器,並對指定的首頁領域使用宣告型驗證:

      $CRMConn = Get-CrmConnection –ServerUrl http://<CRM_Server_Host> -Credential $Cred -OrganizationName <OrgName> –HomRealmURL http://<Identity_Provider_Address>
      

    注意

    對於所有先前命令中的 OrganizationName 參數,您可以指定組織唯一名稱或易記名稱。 您也可以使用透過 Get-CrmOrganizations Cmdlet 擷取並儲存到 $CRMOrgs 變數中的組織唯一名稱或易記名稱。 例如,您可以使用 $CRMOrgs[x].UniqueName 或 $CRMOrgs[x].FriendlyName。

  2. 當您在步驟 1 中執行命令時,會驗證您提供的認證。 Cmdlet 成功執行時,輸入下列命令,然後按 ENTER 顯示連線資訊和狀態:

    $CRMConn
    

    CRM 連線資訊和狀態

另請參閱

使用 CrmServiceClient 建構函式連線至 Dynamics 365
使用 XRM 工具,建立 Windows 用戶端應用程式
部落格:可在 CRM 中執行資料作業和操作使用者及系統設定的 PowerShell 模組

Microsoft Dynamics 365

© 2017 Microsoft. 著作權所有,並保留一切權利。 著作權