Compartir a través de


Usar cmdlets de PowerShell para que las herramientas de XRM se conecten a Dynamics 365

 

Publicado: enero de 2017

Se aplica a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Los útiles de XRM le proporcionan los siguientes cmdlets de Windows PowerShell que puede utilizar para conectarse a Microsoft Dynamics 365 y recuperar las organizaciones a las que el usuario actual tiene acceso: Get-CrmConnection y Get-CrmOrganizations.

En este tema

Requisitos previos

Registro de los cmdlets

Uso del cmdlet para recuperar organizaciones de Dynamics 365

Use el cmdlet para conectarse a Dynamics 365

Requisitos previos

  • Para usar los cmdlets de los útiles XRM, necesita la versión 3.0 de PowerShell o posterior. Para comprobar la versión, abra una ventana de PowerShell y ejecute el siguiente comando: $Host

  • Establezca la directiva de ejecución para ejecutar los scripts de PowerShell firmados. Para ello, abra una ventana de PowerShell como administrador y ejecute el siguiente comando: Set-ExecutionPolicy -ExecutionPolicy AllSigned

Registro de los cmdlets

Antes de usar los cmdlets de PowerShell debe registrarlos.

  1. Descargue el paquete de SDK de Microsoft Dynamics CRM. Ejecute el archivo del paquete para extraer el contenido del paquete. El ensamblado de PowerShell (Microsoft.Xrm.Tooling.CrmConnector.Powershell.dll) y el script (RegisterXRMTooling.ps1) para registrar los cmdlets se encuentran en la carpeta de \SDK\bin en el SDK.

  2. Inicie Windows PowerShell en el equipo con los privilegios elevados (ejecute como administrador).

  3. En el símbolo del sistema, cambie el directorio a la carpeta que contiene el archivo de PowerShelldll y el script para registrar los cmdlets. Por ejemplo:

    cd c:\SDK\bin
    
  4. Ejecute el script RegisterXRMTooling.ps1 para registrar el ensamblado de PowerShell de los útiles de XRM e instale el complemento de Windows PowerShell. Escriba el siguiente comando y presione ENTRAR:

    .\RegisterXRMTooling.ps1
    
  5. Agregue el complemento de Windows PowerShell. Así se registran los cmdlets Get-CrmConnection y Get-CrmOrganizations.

    Add-PSSnapin Microsoft.Xrm.Tooling.Connector
    

Ahora está listo para usar estos cmdlets de Windows PowerShell. Para mostrar los cmdlets que registró, ejecute el comando siguiente en la ventana de Windows PowerShell:

Get-Help “Crm”

Uso del cmdlet para recuperar organizaciones de Dynamics 365

Use el cmdlet Get-CrmOrganizations para recuperar las organizaciones a las que tiene acceso.

  1. Especifique las credenciales para conectarse a la instancia de Dynamics 365 (local) o de Microsoft Dynamics 365 (online). Si ejecuta el siguiente comando se le pedirá que escriba su nombre de usuario y contraseña para conectarse a la instancia de Dynamics 365 y se almacenará en la variable $Cred.

    $Cred = Get-Credential
    
  2. Use el siguiente comando para recuperar sus organizaciones y almacenar la información en la variable $CRMOrgs:

    • Si va a conectarse al servidor de Dynamics 365 (local):

      $CRMOrgs = Get-CrmOrganizations –ServerUrl http://<CRM_Server_Host> –Credential $Cred
      
    • Si va a conectarse a la instancia de Microsoft Dynamics 365 (online):

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

      Nota

      Los valores válidos del parámetro DeploymentRegion son: NorthAmerica, EMEA, APAC, SouthAmerica, Oceania, JPN, CAN, IND y NorthAmerica2. Para el parámetro OnlineType, especifique Office365.

    • Si va a conectarse al servidor de Dynamics 365 mediante la autenticación basada en notificaciones en el dominio de inicio especificado:

      $CRMOrgs = Get-CrmOrganizations –ServerUrl http://<CRM_Server_Host> –Credential $Cred –HomRealmURL http://<Identity_Provider_Address>
      
  3. Sus credenciales suministradas se validan al ejecutar el comando en el paso 2. Tras la ejecución correcta del comando, escriba el siguiente comando, y presione ENTRAR para mostrar las organizaciones a las que tiene acceso:

    $CRMOrgs
    

    Lista de organizaciones devueltas por el cmdlet

    Sugerencia

    Puede usar la variable que se usó para almacenar las organizaciones de Dynamics 365 recuperadas (en este caso, $CRMOrgs) con el cmdlet Get-CrmConnection para conectarse a Dynamics 365. Para especificar el nombre de la organización, utilice el siguiente comando: $CRMOrgs.UniqueName.

    Si hay más de un valor de organización almacenado en la variable $CRMOrgs, puede referirse a la organización nth con el siguiente comando: $CRMOrgs[n-1]. Por ejemplo, para referirse al nombre único de la segunda organización de la variable $CRMOrgs (”SampleOrg”), use el siguiente comando: $CRMOrgs[1].UniqueName.Más información:TechNet: Acceso de valores en una matriz

Use el cmdlet para conectarse a Dynamics 365

Use el cmdlet Get-CrmConnection para conectarse a una instancia de Dynamics 365. El cmdlet le permite usar el control común de inicio de sesión de los útiles de XRM para especificar sus credenciales y conectarse a Dynamics 365 o especificar sus credenciales como parámetros en línea.Más información:Usar el control de inicio de sesión común de los útiles de XRM en las aplicaciones cliente

Conexión a Dynamics 365 mediante el control de inicio de sesión común

  1. Si desea usar el control de inicio de sesión común para proporcionar sus credenciales para conectarse a Dynamics 365, use el siguiente comando. La información de conexión se almacena en la variable $CRMConn para poder usarla más adelante.

    $CRMConn = Get-CrmConnection -InteractiveMode
    
  2. Se abre el cuadro de diálogo LoginControl. Especifique las credenciales para conectarse a la instancia de Dynamics 365 y haga clic en Iniciar sesión.

Conexión a Dynamics 365 especificando las credenciales en línea

  1. Para conectarse a Dynamics 365, use los comandos siguientes. Tenga en cuenta que estos comandos usan la variable $Cred que se creó anteriormente para almacenar las credenciales mientras se recuperaban las organizaciones. La información de conexión se guarda en la variable $CRMConn:

    • Si va a conectarse al servidor de Dynamics 365 (local):

      $CRMConn = Get-CrmConnection –ServerUrl http://<CRM_Server_Host> -Credential $Cred -OrganizationName <OrgName>
      
    • Si va a conectarse a la instancia de Microsoft Dynamics 365 (online):

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

      Nota

      Los valores válidos para el parámetro DeploymentRegion son: NorthAmerica, EMEA, APAC, SouthAmerica, Oceania, JPN, CAN, IND y NorthAmerica2. Para el parámetro OnlineType, especifique Office365.

    • Si va a conectarse al servidor de Dynamics 365 mediante la autenticación basada en notificaciones en el dominio de inicio especificado:

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

    Nota

    Para el parámetro OrganizationName de todos los comandos anteriores, puede especificar el nombre único o el nombre descriptivo de la organización. También puede usar el nombre único o el nombre descriptivo de la organización que recuperó mediante el cmdlet Get-CrmOrganizations y que almacenó en la variable $CRMOrgs. Por ejemplo, puede usar $CRMOrgs[x].UniqueName o $CRMOrgs[x].FriendlyName.

  2. Sus credenciales suministradas se validan al ejecutar el comando en el paso 1. Tras la ejecución correcta del cmdlet, escriba el siguiente comando, y presione ENTRAR para mostrar la información y el estado de conexión:

    $CRMConn
    

    Información y estado de la conexión de CRM

Ver también

Usar constructores CrmServiceClient para conectarse a Dynamics 365
Crear aplicaciones cliente de Windows mediante las herramientas XRM
Blog: Módulo de PowerShell para realizar operaciones de datos y manipular la configuración de usuarios y del sistema en CRM

Microsoft Dynamics 365

© 2017 Microsoft. Todos los derechos reservados. Copyright