使用 XRM PowerShell cmdlets 工具连接到 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 包。 运行包文件,以提取包内容。PowerShell 程序集 (Microsoft.Xrm.Tooling.CrmConnector.Powershell.dll) 和注册 cmdlet 的脚本 (RegisterXRMTooling.ps1),均位于 SDK 中的 \SDK\bin 文件夹。

  2. 在您的计算机上使用升级的权限启动 Windows PowerShell(以管理员身份运行)。

  3. 在提示符中,对包含 PowerShelldll 文件和注册 cmdlet 脚本的文件夹,更改其目录。 例如:

    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 (online) 实例。 运行以下命令将会提示您键入您的用户名和密码,以连接到 Dynamics 365 实例,并存储在在 $Cred 变量中。

    $Cred = Get-Credential
    
  2. 使用以下命令检索您的组织,并将信息存储在 $CRMOrgs 变量中:

    • 如果要连接到 Dynamics 365(本地) 服务器:

      $CRMOrgs = Get-CrmOrganizations –ServerUrl http://<CRM_Server_Host> –Credential $Cred
      
    • 如果要连接到 Microsoft Dynamics 365 (online) 实例:

      $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 tooling 通用登录控件

使用公共登录控件连接到 Dynamics 365

  1. 如果您要使用常规登录控件来使用您的凭证连接到 Dynamics 365,请使用以下命令。 连接信息被存储于 $CRMConn 变量中,以便您可以将来使用。

    $CRMConn = Get-CrmConnection -InteractiveMode
    
  2. 显示“LoginControl”对话框。 提供您的凭据以连接到您的 Dynamics 365 实例,并单击“Login”。

通过指定凭据内联连接到 Dynamics 365

  1. 若要连接到 Dynamics 365,请使用以下命令。 请注意,在检索组织时,这些命令使用先前创建的 $Cred 变量来存储凭证。 连接信息被存储于 $CRMConn 变量中:

    • 如果要连接到 Dynamics 365(本地) 服务器:

      $CRMConn = Get-CrmConnection –ServerUrl http://<CRM_Server_Host> -Credential $Cred -OrganizationName <OrgName>
      
    • 如果要连接到 Microsoft Dynamics 365 (online) 实例:

      $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 参数,您可以指定组织唯一名称或友好名称。 您还可以使用通过获取-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。 保留所有权利。 版权