使用 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-CrmConnection 和 Get-CrmOrganizations。
本主题内容
必备条件
注册 cmdlet
使用 cmdlet 检索 Dynamics 365 的组织
使用 cmdlet 连接到 Dynamics 365
必备条件
若要使用 XRM 工具 cmdlet,您需要 PowerShell 3.0 版或更高版本。 若要查看版本,请打开 PowerShell 窗口,并运行以下命令:$Host
设置执行策略以运行签名的 PowerShell 脚本。 为此,请打开 PowerShell 窗口作为管理员,并运行以下命令:Set-ExecutionPolicy -ExecutionPolicy AllSigned
注册 cmdlet
在可以使用 PowerShell cmdlet 前,您必须注册。
下载 Microsoft Dynamics CRM SDK 包。 运行包文件,以提取包内容。PowerShell 程序集 (Microsoft.Xrm.Tooling.CrmConnector.Powershell.dll) 和注册 cmdlet 的脚本 (RegisterXRMTooling.ps1),均位于 SDK 中的 \SDK\bin 文件夹。
在您的计算机上使用升级的权限启动 Windows PowerShell(以管理员身份运行)。
在提示符中,对包含 PowerShelldll 文件和注册 cmdlet 脚本的文件夹,更改其目录。 例如:
cd c:\SDK\bin
运行 RegisterXRMTooling.ps1 脚本,以注册 XRM 工具 PowerShell 程序集,并安装 Windows PowerShell 嵌入式管理单元。 键入以下命令,然后按 Enter:
.\RegisterXRMTooling.ps1
添加 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 检索您有权访问的组织。
提供您的凭据以连接到您的 Dynamics 365(本地) 或 Microsoft Dynamics 365 (online) 实例。 运行以下命令将会提示您键入您的用户名和密码,以连接到 Dynamics 365 实例,并存储在在 $Cred 变量中。
$Cred = Get-Credential
使用以下命令检索您的组织,并将信息存储在 $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 参数,有效值为 NorthAmerica、EMEA、APAC、SouthAmerica、Oceania、JPN、CAN、IND 和 NorthAmerica2。 对于 OnlineType 参数,请指定 Office365。
如果使用针对指定主页领域基于声明的身份验证连接到 Dynamics 365 服务器:
$CRMOrgs = Get-CrmOrganizations –ServerUrl http://<CRM_Server_Host> –Credential $Cred –HomRealmURL http://<Identity_Provider_Address>
当运行命令到步骤 2 时,您提供的凭据是有效的。 在成功执行命令的情况下,请键入以下命令,然后按 Enter 显示您可以访问的组织:
$CRMOrgs
提示
您可以使用用于存储已检索 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
如果您要使用常规登录控件来使用您的凭证连接到 Dynamics 365,请使用以下命令。 连接信息被存储于 $CRMConn 变量中,以便您可以将来使用。
$CRMConn = Get-CrmConnection -InteractiveMode
显示“LoginControl”对话框。 提供您的凭据以连接到您的 Dynamics 365 实例,并单击“Login”。
通过指定凭据内联连接到 Dynamics 365
若要连接到 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 参数,有效值为 NorthAmerica、EMEA、APAC、SouthAmerica、Oceania、JPN、CAN、IND 和 NorthAmerica2。 对于 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。
当运行命令到步骤 1 时,您提供的凭据是有效的。 在成功执行 cmdlet 的情况下,请键入以下命令,然后按 Enter 显示连接信息和状态:
$CRMConn
另请参阅
使用 CrmServiceClient 构造函数连接到 Dynamics 365
使用 XRM 工具,构建 Windows 客户端应用程序
博客:用于在 CRM 中执行数据操作和处理用户和系统设置的 PowerShell 模块
Microsoft Dynamics 365
© 2017 Microsoft。 保留所有权利。 版权