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.

  1. 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.

  2. Inicie o Windows PowerShell no computador com privilégios elevados (executar como administrador).

  3. 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
    
  4. 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
    
  5. 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.

  1. 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
    
  2. 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>
      
  3. 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
    

    Lista de organizações devolvidas pelo cmdlet

    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

  1. 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
    
  2. 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

  1. 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.

  2. 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
    

    informações e status da conexão CRM

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