Compartir por


Registrar e implementar complementos

 

Publicado: noviembre de 2016

Se aplica a: Dynamics CRM 2015

Los complementos y las actividades personalizadas de flujo de trabajo son el código personalizado que desarrolla para ampliar la funcionalidad de Microsoft Dynamics 365 existente. Antes de que se pueda usar un complemento o una actividad de flujo de trabajo, se debe registrar con el servidor. Puede registrar complementos y actividades personalizadas del flujo de trabajo mediante mediante programación con Microsoft Dynamics CRM 2015 y actualización de Microsoft Dynamics CRM Online 2015 escribiendo código de registro mediante determinadas clases de SDK. Sin embargo, para facilitar la curva de aprendizaje y agilizar el desarrollo y la implementación de código personalizado, se incluye un complemento y una herramienta de registro de actividad de flujo de trabajo personalizada en la carpeta Bin del SDK.Descargue el paquete de SDK de Microsoft Dynamics CRM.

Aunque este tema se centra sobre todo en complementos, la mayoría de la información también es aplicable a las actividades de flujo de trabajo personalizado. Una diferencia entre los dos es que para que los ensamblados de actividad de flujo de trabajo personalizado, puede registrar solo el ensamblado. Para los complementos, puede registrar el ensamblado de complementos y uno o varios pasos por complemento. Para obtener más información acerca de las actividades personalizadas de flujo de trabajo, consulte Actividades de flujo de trabajo personalizadas (ensamblados de flujo de trabajo).

System_CAPS_security Seguridad Nota

No registre ningún complemento ni actividad de flujo de trabajo personalizada a menos que se obtenga de una fuente de confianza y confiable.

Para obtener más información acerca de cómo empaquetar los complementos como componentes de la solución, vea Empaquetar y distribuir las extensiones con soluciones.

En este tema

Herramienta de registro de complementos

Almacenamiento de complementos

Implementación

Control de versiones de ensamblado y soluciones

Restricciones de seguridad

Registrar complementos mediante programación

Habilitar o deshabilitar la ejecución de código personalizado

Herramienta de registro de complementos

La Plug-in Registration proporciona una interfaz gráfica de usuario y admite el registro de complementos y actividades de flujo de trabajo personalizadas con Microsoft Dynamics 365. Sin embargo, los complementos y las actividades personalizadas de flujo de trabajo se pueden registrar solo en el espacio asilado (modo aislado de Microsoft Dynamics CRM Online).

Para obtener más información sobre cómo registrar e implementar un complemento mediante la herramienta, consulte Tutorial: registrar un complemento mediante la herramienta de registro de complementos. La herramienta se puede agregar al menú Herramientas de Visual Studio como herramienta externa para acelerar el proceso de desarrollo.

Almacenamiento de complementos

Para una implementación local, los complementos que no se registran en el espacio asilado se pueden almacenar en la base de datos de servidor de Microsoft Dynamics 365 o en el sistema de archivos en disco. Se recomienda que almacene los complementos listos para producción en la base de datos de Microsoft Dynamics 365 , en vez de en disco. Los complementos almacenados en la base de datos se distribuyen entre varios servidores de Microsoft Dynamics 365 en un clúster del centro de datos. El almacenamiento en disco resulta útil para depurar los complementos mediante Microsoft Visual Studio. Sin embargo, puede depurar un complemento almacenado en la base de datos. Para obtener más información, vea Depurar un complemento.

Los complementos registrados en el espacio asilado se deben almacenar en la base de datos independientemente de la implementación de Microsoft Dynamics 365 (local IFD o en línea).

Implementación

Para las instalaciones de Microsoft Dynamics 365 locales o con conexión a Internet (IFD), cuando implemente complementos de otro equipo en el disco de servidor de Microsoft Dynamics 365 (implementación en disco), se debe copiar el ensamblado de complementos manualmente en el servidor antes del registro. El ensamblado se debe implementar en la carpeta <installdir>\Program Files\Microsoft CRM\server\bin\assembly en cada servidor donde se ejecuta el complemento.

El registro de complementos se debe realizar después de que se haya copiado el ensamblado en la carpeta …\bin\assembly del servidor para evitar la situación en que un usuario del sistema ocasiona que se genere un evento en Microsoft Dynamics 365 pero el ensamblado de complementos registrado aún no existe en el servidor. Para la implementación de la base de datos del servidor, el ensamblado de complementos se copia automáticamente durante el registro de complementos de manera que la situación anterior no es un problema.

Dependiendo del diseño del complemento, los complementos pueden requerir que se ejecuten otros ensamblados a los que se hace referencia. Independientemente de si implementa el complemento en la base de datos o en disco, si el complemento requiere que se ejecuten otros ensamblados, debe poner las copias de estos ensamblados en la caché de ensamblados global en cada servidor donde se ejecuta el complemento. Esto no se aplica a un servidor de Microsoft Dynamics CRM Online porque no tiene acceso a la caché de ensamblados global en el servidor.

Para mover un complemento de un entorno de desarrollo a un servidor de almacenamiento provisional o un servidor de producción

  1. En el equipo de implementación, compile el código del complemento. No incluya la información de depuración. Optimice el complemento para obtener rendimiento.

  2. Registre el complemento en la base de datos de servidor de Microsoft Dynamics 365.

  3. Mediante la aplicación web de Microsoft Dynamics 365 , cree una solución o use una existente y agregue el complemento a esa solución.

  4. Después de agregar cualquier otro componente que desee a la solución, exporte la solución.

  5. Importe la solución en el servidor de almacenamiento provisional o de producción.

Control de versiones de ensamblado y soluciones

Se pueden controlar las versiones de ensamblados de complementos con un formato de número de principal.secundaria.compilación.revisión definido en el archivo Assembly.info del proyecto de Microsoft Visual Studio. Según la parte del número de versión de ensamblado que se cambie en una solución más reciente, se aplica el siguiente comportamiento cuando se actualiza una solución existente a través de la importación.

  • Se modifica el número de versión de compilación o de ensamblado de revisión.

    Esto se considera una actualización en contexto. La versión anterior del ensamblado desaparece cuando se importa la solución que contiene el ensamblado actualizado. Los pasos preexistentes de la solución anterior cambian automáticamente para hacer referencia a la versión más reciente del ensamblado.

  • El número de versión de ensamblado principal o secundario, a excepción de los números de compilación o revisión, se modifica.

    Cuando una solución actualizada que contiene el ensamblado revisado se importa, el ensamblado se considera un ensamblado completamente distinto al de la versión anterior del ensamblado en la solución existente. Los pasos de registro de complementos de la solución existente continuarán haciendo referencia a la versión anterior del ensamblado. Si desea que los pasos de registro de complementos para el ensamblado anterior señalen al ensamblado revisado, deberá usar la herramienta de registro de complementos para cambiar manualmente la configuración del paso para hacer referencia al tipo de ensamblado revisado. Esto debe hacerse antes de exportar el ensamblado actualizado a una solución para importación posterior.

Para obtener más información sobre soluciones, consulte Introducción a soluciones.

Restricciones de seguridad

Hay una restricción de seguridad que permite que solo los usuarios con privilegios registren los complementos. Para los complementos que no se registran en el aislamiento, la cuenta de usuario del sistema bajo la que se registra el complemento debe existir en el grupo Administradores de implementaciones de Administrador de implementaciones. Solo la cuenta de usuario del administrador del sistema o cualquier cuenta de usuario incluida en el grupo Administradores de implementaciones puede ejecutar el Administrador de implementaciones.

Importante

Para los complementos sin aislar, si no se puede incluir la cuenta de usuario de registro en el grupo Administradores de implementaciones da lugar a que se emita una excepción durante el registro de complementos. La descripción de la excepción indica que "no dispone de privilegios suficientes para completar la operación de creación para una entidad de SDK".

La cuenta de usuario del sistema en la que se va a registrar el complemento debe tener los siguientes privilegios de seguridad en toda la organización:

  • prvCreatePluginAssembly

  • prvCreatePluginType

  • prvCreateSdkMessageProcessingStep

  • prvCreateSdkMessageProcessingStepImage

  • prvCreateSdkMessageProcessingStepSecureConfig

Para obtener más información, vea Security role and privilege reference y El modelo de seguridad de Microsoft Dynamics CRM 2015.

Para los complementos registrados en el espacio asilado (modo aislado), la cuenta de usuario del sistema en la que el complemento se va a registrar debe tener el rol de administrador del sistema. La suscripción en el grupo Administradores de implementaciones no es obligatoria.

Registrar complementos mediante programación

Los tipos clave de entidad usados para registrar los complementos e imágenes son: PluginAssembly, PluginType, SdkMessageProcessingStep y SdkMessageProcessingStepImage. Los tipos clave de entidad usados para registrar las actividades de flujo de trabajo personalizadas son PluginAssembly y PluginType. Use estas entidades con las operaciones de creación, actualización y eliminación.

Para obtener más información sobre las imágenes, consulte Comprender el contexto de los datos pasados a un complemento.

Habilitar o deshabilitar la ejecución de código personalizado

Puede usar Windows PowerShell para habilitar o deshabilitar el código personalizado, incluidos los complementos y las actividades de flujo de trabajo personalizadas, en el servidor como se describe aquí. Como alternativa, puede usar el servicio web de implementación. Para obtener más información, consulte Entidades de implementación y valores de configuración de implementación para establecer la propiedad CustomCodeSettings.AllowExternalCode.

Para habilitar la ejecución de código personalizado

  1. Abra una ventana de comandos de Windows PowerShell.

  2. Agregue el complemento PowerShell de Microsoft Dynamics 365:

    Add-PSSnapin Microsoft.Crm.PowerShell
    
  3. Recupere la configuración actual:

    $setting = get-crmsetting customcodesettings
    
  4. Modifique la configuración actual:

    $setting.AllowExternalCode="True"
    
    set-crmsetting $setting
    
  5. Compruebe la configuración:

    get-crmsetting customcodesettings
    

Para deshabilitar la ejecución de código personalizado

  1. Abra una ventana de comandos de Windows PowerShell.

  2. Agregue el complemento PowerShell de Microsoft Dynamics 365:

    Add-PSSnapin Microsoft.Crm.PowerShell
    
  3. Recupere la configuración actual:

    $setting = get-crmsetting customcodesettings
    
  4. Modifique la configuración actual:

    $setting.AllowExternalCode=0
    
    set-crmsetting $setting
    
  5. Compruebe la configuración:

    get-crmsetting customcodesettings
    

Ver también

Desarrollo de complementos
Depurar un complemento
Aislamiento, relacioens de confianza y estadísticas de complementos
Empaquetar y distribuir las extensiones con soluciones
PluginAssembly entity privileges
PluginType entity privileges
SdkMessageProcessingStep entity privileges
SdkMessageProcessingStepImage entity privileges
SdkMessageProcessingStepSecureConfig entity privileges

© 2017 Microsoft. Todos los derechos reservados. Copyright