Usar cmdlets do PowerShell para ferramentas XRM e conectar ao Dynamics 365
Publicado: janeiro de 2017
Aplicável a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
As ferramentas XRM fornecem os seguintes cmdlets do Windows PowerShell que você pode usar para conectar ao Microsoft Dynamics 365 e recuperar organizações que o usuário atual tem acesso: Get-CrmConnection e Get-CrmOrganizations.
Neste tópico
Pré-requisitos
Registrar o cmdlets
Use o cmdlet para recuperar organizações do Dynamics 365
Use o cmdlet para se conectar ao Dynamics 365
Pré-requisitos
Para usar os cmdlets da ferramenta XRM, você precisará do PowerShell versão 3.0 ou posterior. Para verificar a sua versão do PowerShell, abra uma janela do $Host, então execute o seguinte comando:
Defina a política de execução para executar os scripts do PowerShell assinados. Para isso, abra uma janela do PowerShell como administrador, então execute o seguinte comando:Set-ExecutionPolicy -ExecutionPolicy AllSigned
Registrar o cmdlets
Antes de poder usar os cmdlets do PowerShell, você pode registrá-los.
Baixe o pacote do SDK do Microsoft Dynamics CRM. Execute o arquivo do pacote para extrair seu conteúdo. O assembly do PowerShell (Microsoft.Xrm.Tooling.CrmConnector.Powershell.dll) e o script (RegisterXRMTooling.ps1) para registrar os cmdlets são instalados na pasta \SDK\bin no SDK.
Inicie o Windows PowerShell no computador com privilégios elevados (executar como administrador).
No prompt, altere seu diretório à pasta que contém o arquivo PowerShelldll e o script para registrar cmdlets. Por exemplo:
cd c:\SDK\bin
Execute o script RegisterXRMTooling.ps1 para registrar a ferramenta XRM do assembly PowerShell e instale o snap-in do Windows PowerShell. Digite o comando a seguir e pressione ENTER:
.\RegisterXRMTooling.ps1
Adicione o snap-in do Windows PowerShell. Isso registra os cmdlets Get-CrmOrganizations e Get-CrmConnection.
Add-PSSnapin Microsoft.Xrm.Tooling.Connector
Você está pronto para usar os cmdlets do Windows PowerShell. Para listar os cmdlets registrados, execute o comando na janela do Windows PowerShell:
Get-Help “Crm”
Use o cmdlet para recuperar organizações do Dynamics 365
Use o cmdlet Get-CrmOrganizations para recuperar as organizações às quais você tem acesso.
Forneça suas credenciais para se conectar à instância do Dynamics 365 (local) ou Microsoft Dynamics 365 (online). Executar o seguinte comando solicitará que você digite seu nome de usuário e senha para se conectar à instância do Dynamics 365 e iremos serão armazenados à variável $Cred.
$Cred = Get-Credential
Use o seguinte comando para recuperar as organizações e armazenar as informações na variável $CRMOrgs:
Se estiver se conectando a um servidor do Dynamics 365 (local):
$CRMOrgs = Get-CrmOrganizations –ServerUrl http://<CRM_Server_Host> –Credential $Cred
Se estiver se conectando a uma instância do Microsoft Dynamics 365 (online):
$CRMOrgs = Get-CrmOrganizations -Credential $Cred -DeploymentRegion NorthAmerica –OnlineType Office365
Observação
Para o parâmetro DeploymentRegion, os valores válidos são NorthAmerica, EMEA, APAC, SouthAmerica, Oceania, JPN, CAN, IND e NorthAmerica2. Para o parâmetro OnlineType, especifique Office365.
Se você estiver se conectado ao servidor do Dynamics 365 usando a autenticação baseada em declarações na região inicial especificada:
$CRMOrgs = Get-CrmOrganizations –ServerUrl http://<CRM_Server_Host> –Credential $Cred –HomRealmURL http://<Identity_Provider_Address>
Suas credenciais fornecidas são validadas ao executar o comando na etapa 2. Na execução correta do comando, digite o seguinte comando e pressione ENTER para exibir as organizações às quais você tem acesso:
$CRMOrgs
Dica
Você pode usar a variável usada para armazenar as organizações do Dynamics 365 recuperadas (neste caso $CRMOrgs) com o cmdlet Get-CrmConnection para se conectar ao Dynamics 365. Para especificar o nome de organização, use o seguinte comando: $CRMOrgs.UniqueName.
Se houver mais de um valor de organização armazenado na variável $CRMOrgs, você pode consultar a organização nth usando o seguinte comando: $CRMOrgs[n-1]. Por exemplo, para consultar o nome exclusivo da segunda organização na variável $CRMOrgs (”SampleOrg”), use o seguinte comando: $CRMOrgs[1].UniqueName.Para obter mais informações:TechNet: Acessar valores em uma matriz
Use o cmdlet para se conectar ao Dynamics 365
Use o cmdlet Get-CrmConnection para se conectar a uma instância do Dynamics 365. O cmdlet permite usar o controle de logon comum das ferramentas XRM para especificar suas credenciais e se conectar ao Dynamics 365 ou permite especificar suas credenciais como parâmetros embutidos.Para obter mais informações:Use o controle de login comum das ferramentas XRM nos seus aplicativos cliente
Conecte-se ao Dynamics 365 usando o controle de logon comum
Se você deseja usar o controle de logon comum para fornecer suas credenciais para entrar no Dynamics 365, use o seguinte comando. As informações de conexão são armazenadas na variável $CRMConn de modo que você possa usá-la posteriormente.
$CRMConn = Get-CrmConnection -InteractiveMode
A caixa de diálogo LoginControl é exibida. Forneça suas credenciais para se conectar à instância do Dynamics 365 e clique em Login.
Conectar ao Dynamics 365 especificando as credenciais embutidas
Para se conectar ao Dynamics 365, use os seguintes comandos. Observe que esses comandos usam a variável $Cred que foi criada anteriormente para armazenar as credenciais para recuperar as organizações. As informações de conexão são armazenadas na variável $CRMConn:
Se estiver se conectando a um servidor do Dynamics 365 (local):
$CRMConn = Get-CrmConnection –ServerUrl http://<CRM_Server_Host> -Credential $Cred -OrganizationName <OrgName>
Se estiver se conectando a uma instância do Microsoft Dynamics 365 (online):
$CRMConn = Get-CrmConnection -Credential $Cred -DeploymentRegion <Deployment region name> –OnlineType Office365 –OrganizationName <OrgName>
Observação
Para o parâmetro DeploymentRegion, os valores válidos são NorthAmerica, EMEA, APAC, SouthAmerica, Oceania, JPN, CAN, IND e NorthAmerica2. Para o parâmetro OnlineType, especifique Office365.
Se você estiver se conectado ao servidor do Dynamics 365 usando a autenticação baseada em declarações na região inicial especificada:
$CRMConn = Get-CrmConnection –ServerUrl http://<CRM_Server_Host> -Credential $Cred -OrganizationName <OrgName> –HomRealmURL http://<Identity_Provider_Address>
Observação
Para o parâmetro OrganizationName em todos os comandos anteriores, você pode especificar o nome exclusivo da organização ou nome amigável. Você também pode usar o nome exclusivo da organização ou o nome amigável que você recuperou usando o cmdlet Get-CrmOrganizations e armazenado na variável $CRMOrgs. Por exemplo, você pode usar $CRMOrgs[x].UniqueName ou $CRMOrgs[x].FriendlyName.
Suas credenciais fornecidas são validadas ao executar o comando na etapa 1. Na execução correta do cmdlet, digite o seguinte comando e pressione ENTER para exibir as informações e status de conexão:
$CRMConn
Confira Também
Os os construtores para conectar ao Dynamics 365
Criar aplicativos cliente do Windows usando as ferramentas XRM
Blog: Módulo do PowerShell para executar operações de dados e manipular configurações de usuário e de sistema no CRM
Microsoft Dynamics 365
© 2017 Microsoft. Todos os direitos reservados. Direitos autorais