Adaptador SFTP

BizTalk Server incluye un adaptador SFTP para enviar y recibir mensajes de un servidor FTP seguro mediante el protocolo de transferencia de archivos SSH. En este tema se incluyen los pasos para configurar una ubicación de recepción de SFTP y configurar un puerto de envío SFTP para recibir y enviar mensajes desde un servidor FTP seguro. También incluye preguntas y respuestas comunes.

Requisitos previos

A partir de BizTalk Server 2016, el adaptador SFTP usa WinSCP para conectarse a SFTP y, por lo tanto, admite una gama mayor de servidores SFTP. Descargue WinSCP en el entorno de ejecución de BizTalk Server. Asegúrese de comprobar las versiones de WinSCP admitidas para cada BizTalk Server verison:

  • BizTalk Server 2020 con CU1 o CU2: WinSCP versión 5.17.6
  • BizTalk Server 2020: WinSCP versión 5.15.4
  • BizTalk Server 2016 Con CU9: WinSCP versión 5.19.2
  • BizTalk Server 2016 Con CU7: WinSCP versión 5.15.9
  • BizTalk Server 2016: WinSCP versión 5.7.7

o en Requisitos de hardware y software

BizTalk Server 2013 y BizTalk Server 2013 R2 usan la biblioteca ssh anterior en lugar de WinSCP con compatibilidad limitada con el servidor.

Configuración de la ubicación de recepción

Nota

Antes de crear la ubicación de recepción, debe haber agregado ya un puerto de recepción unidireccional. Consulte Creación de un puerto de recepción para conocer los pasos específicos.

  1. En la consola de administración de BizTalk Server, expanda BizTalk Server, expanda Grupo de BizTalk, expanda Aplicaciones y, a continuación, expanda la aplicación en la que desea crear una ubicación de recepción.

  2. En el panel izquierdo, haga clic en el nodo Puertos de recepción y, en el panel derecho, haga clic con el botón derecho en el puerto de recepción al que desea asociar la nueva ubicación de recepción y, a continuación, haga clic en Propiedades.

  3. En el panel de la izquierda del cuadro de diálogo Propiedades de puerto de recepción , seleccione Ubicaciones de recepcióny, en el panel de la derecha, haga clic en Nueva para crear una nueva ubicación de recepción.

  4. En el cuadro de diálogo Propiedades de ubicación de recepción, en la sección Transporte , seleccione SFTP en la lista desplegable Tipo y, a continuación, haga clic en Configurar para configurar las propiedades de transporte de la ubicación de recepción.

  5. En las propiedades de transporte SFTP, haga lo siguiente:

    Otros

    Use Para hacer esto
    Connection Limit (Límite de conexiones) Especificar el número máximo de conexiones simultáneas que se pueden abrir con el servidor.

    Esta configuración es por servidor y por ubicación de recepción. Considere los siguientes escenarios:

    - Hay dos ubicaciones de recepción que tienen los mismos valores de propiedad de configuración, incluida la propiedad ConnectionLimit establecida en el mismo valor. Por ejemplo, la propiedad se establece en 6. En esta situación, hay un grupo de conexiones (con 6 conexiones disponibles) que usan ambas ubicaciones de recepción.

    - Hay dos ubicaciones de recepción configuradas con los mismos valores de configuración y tienen la propiedad ConnectionLimit establecida en valores diferentes. Por ejemplo, la propiedad ReceiveLocation1 se establece en 6 y la propiedad ReceiveLocation2 se establece en 5. En esta situación, cada ubicación de recepción tiene su propio grupo de conexiones con sus propias conexiones disponibles. El grupo de conexiones ReceiveLocation1 tiene 6 conexiones disponibles. El grupo de conexiones ReceiveLocation2 tiene 5 conexiones disponibles.
    Log Disponible a partir de BizTalk Server 2016.

    Escriba la ruta de acceso completa para crear un archivo de registro del lado cliente. Use este archivo de registro para solucionar los errores.
    Tiempo máximo de reutilización de la conexión en segundos Disponible a partir de BizTalk Server 2016 CU 7.

    El tiempo máximo de reutilización de la conexión permite que las conexiones se cierren correctamente y se quiten del grupo después de que se haya usado una conexión durante un período de tiempo específico. Un valor es 0 o menos indica que este comportamiento está deshabilitado.

    Sondeo

    Use Para hacer esto
    Habilitar la comparación en marca de tiempo Disponible a partir de la actualización acumulativa 6 de BizTalk Server 2016.

    Si Conservar después de descargar se establece en True, esta propiedad determina si un cambio en la marca de tiempo de archivo desencadenará una nueva descarga del archivo.

    Valor predeterminado: Falso
    Intervalo de sondeo Especifique los intervalos en los que el adaptador sondea el servidor. Para efectuar un sondeo continuo, establezca este valor en cero.

    Valor predeterminado: 5
    Intervalo para volver a descargar Disponible a partir de la actualización acumulativa 6 de BizTalk Server 2016.

    Especifica el intervalo después del cual se descargará de nuevo el archivo. Aplicable si Conservar después de descargar es True y Habilitar comparación de marca de tiempo se establece en False. Si se establece en -1, el archivo no se descargará de nuevo.

    Valor predeterminado: 0

    -1 indica que el adaptador no descargará los archivos de nuevo.

    0 indica que el adaptador descargará el archivo en cada ciclo de sondeo.
    Conservar después de la descarga Disponible a partir de la actualización acumulativa 6 de BizTalk Server 2016.

    Especifica si el adaptador conservará un archivo del servidor SFTP después de descargarlo.

    Valor predeterminado: Falso
    Unidad Especifica la unidad en la que se ha especificado el intervalo de sondeo, por ejemplo, segundos, minutos, horas o días.

    Valor predeterminado: Segundos

    Proxy (disponible a partir de BizTalk Server 2013 R2)

    Use Para hacer esto
    Dirección Especifica el nombre DNS o la dirección IP del servidor proxy.
    Contraseña Especifica la contraseña para el servidor proxy.
    Port Especifica el puerto para el servidor proxy.
    Tipo Especifica el protocolo que usa el servidor proxy.
    UserName Especifica el nombre de usuario para el servidor proxy.

    Seguridad

    Use Para hacer esto
    Aceptar cualquier clave de host del servidor SSH Cuando es True, la ubicación de recepción acepta cualquier clave de host pública SSH del servidor. Cuando es False, la ubicación de recepción usa la huella digital del servidor para la autenticación. Escriba la huella digital en la propiedad SSHServerHostKeyFingerPrint .

    Valor predeterminado: Falso
    Modo de autenticación de cliente Seleccione el método de autenticación que usa la ubicación de recepción para autenticar el cliente en el servidor SSH. Si se establece en Contraseña, debe escribir el valor en la propiedad Password . Si se establece en PublicKeyAuthentication, debe escribir la clave privada del usuario en la propiedad PrivateKey . Si se establece en MultiFactorAuthentication , debe escribir Nombre de usuario con su contraseña y PrivateKey. Además, si la clave privada está protegida por una contraseña, escriba la contraseña también para la propiedad PrivateKeyPassword .

    Valor predeterminado: Contraseña
    Cifrado Disponible a partir de BizTalk Server 2013 R2.

    Escriba el tipo de cifrado.

    BizTalk Server opciones de 2013 R2: Automático, AES y TripleDES

    BizTalk Server opciones de 2016: Auto, AES, Arcfour, Blowfish, TripleDES y DES
    Directiva de selección de algoritmos de intercambio de claves Disponible a partir de BizTalk Server actualización acumulativa 6 de 2016.

    Especifique la lista separada por comas del orden de preferencia de KEX. Token WARN se usa para delimitar KEX estándar. El adaptador SFTP de BizTalk no usará nada después de WARN. Ejemplo: ecdh,dh-gex-sha1,dh-group14-sha1,rsa,WARN,dh-group1-sha1. Visite el sitio web de WinSCP para obtener la información más reciente.
    Contraseña Especifique la contraseña de usuario de SFTP si establece ClientAuthenticationMode en Password.
    Clave privada Especifique la clave privada para el usuario SFTP si establece ClientAuthenticationMode en PublicKeyAuthentication.

    Nota: El archivo de clave privada debe ser el archivo .ppk especificado.
    Contraseña de clave privada Especifique una contraseña de clave privada, si es necesario para la clave especificada en la propiedad PrivateKey .
    Huella digital de clave de host del servidor SSH Especifica la huella digital de la clave de host pública para el servidor SSH.
    Afiliada de SSO Disponible a partir de BizTalk Server 2020.

    Especificar la aplicación afiliada de inicio de sesión único empresarial.
    Nombre de usuario Especifica la contraseña para iniciar sesión en el servidor SFTP.

    Servidor SSH

    Use Para hacer esto
    Máscara de archivo Especifica la máscara de archivo para usar al recibir archivos de un servidor seguro de FTP. Para mejorar el rendimiento, sea más específico para evitar intentar descargar otros archivos protegidos.
    Ruta de acceso a la carpeta Especifica la ruta de la carpeta en el servidor seguro FTP desde donde la ubicación de recepción puede recuperar archivos. Para mejorar el rendimiento, evite usar carpetas con una gran cantidad de archivos que no reciba.
    Port Especifica la dirección del puerto del servidor FTP seguro en el que tiene lugar la transferencia del archivo.
    Dirección del servidor Especifica el nombre de servidor o la dirección IP del servidor FTP seguro.
  6. Haga clic en OK.

  7. Especifique los valores apropiados en el cuadro de diálogo Propiedades de la ubicación de recepción para completar la configuración de la ubicación de recepción y haga clic en Aceptar para guardar la configuración. Para obtener información sobre el cuadro de diálogo Propiedades de ubicaciones de recepción , vea Crear una ubicación de recepción.

Configuración del puerto de envío

  1. En la consola de administración de BizTalk Server, cree un nuevo puerto de envío o haga doble clic en un puerto de envío existente para modificarlo. Para obtener más información, vea Crear un puerto de envío. Configure todas las opciones de puerto de envío y especifique SFTP para la opción Tipo en la sección Transporte de la pestaña General .

  2. En la pestaña General , en la sección Transporte , haga clic en el botón Configurar .

  3. En las propiedades de transporte de SFTP, escriba lo siguiente:

    Otros

    Use Para hacer esto
    Connection Limit (Límite de conexiones) Especificar el número máximo de conexiones simultáneas que se pueden abrir con el servidor.
    Log Disponible a partir de BizTalk Server 2016.

    Escriba la ruta de acceso completa para crear un archivo de registro del lado cliente. Use este archivo de registro para solucionar los errores.
    Tiempo máximo de reutilización de la conexión en segundos Disponible a partir de BizTalk Server 2016 CU 7.

    El tiempo máximo de reutilización de la conexión permite que las conexiones se cierren y quiten correctamente del grupo después de que se haya usado una conexión durante un período de tiempo específico. Un valor es 0 o menos indica que este comportamiento está deshabilitado.
    Carpeta temporal Disponible a partir de BizTalk Server 2013 R2.

    Una carpeta temporal en el servidor SFTP para cargar archivos grandes antes de que se puedan mover de forma atómica a la ubicación necesaria en el mismo servidor.

    Proxy (disponible a partir de BizTalk Server 2013 R2)

    Use Para hacer esto
    Dirección Especifica el nombre DNS o la dirección IP del servidor proxy.
    Contraseña Especifica la contraseña para el servidor proxy.
    Port Especifica el puerto para el servidor proxy.
    Tipo Especifica el protocolo que usa el servidor proxy.
    Nombre de usuario Especifica el nombre de usuario para el servidor proxy.

    Seguridad

    Use Para hacer esto
    Acceso a cualquier clave de host del servidor SSH Cuando es True, el puerto de envío acepta cualquier clave de host pública SSH del servidor. Cuando es False, el puerto coincide con la clave de host con la clave especificada en la propiedad SSHServerHostKey .

    Valor predeterminado: Falso
    Modo de autenticación de cliente Especifica el método de autenticación que usa el puerto de envío para autenticar el cliente en el servidor SSH. Si se establece en Contraseña, debe escribir el valor en la propiedad Password . Si se establece en PublicKeyAuthentication, debe escribir la clave privada del usuario en la propiedad PrivateKey . Si se establece en MultiFactorAuthentication , debe proporcionar el nombre de usuario con su contraseña y PrivateKey. Además, si la clave privada está protegida por una contraseña, escriba la contraseña también para la propiedad PrivateKeyPassword .

    Valor predeterminado: Contraseña
    Cifrado Disponible a partir de BizTalk Server 2013 R2.

    Escriba el tipo de cifrado.

    BizTalk Server opciones de 2013 R2: Automático, AES y TripleDES

    BizTalk Server opciones de 2016: Auto, AES, Arcfour, Blowfish, TripleDES y DES
    Directiva de selección de algoritmos de intercambio de claves Disponible a partir de BizTalk Server actualización acumulativa 6 de 2016.

    Especifique la lista separada por comas del orden de preferencia de KEX. Token WARN se usa para delimitar KEX estándar. Ejemplo: ecdh,dh-gex-sha1,dh-group14-sha1,rsa,WARN,dh-group1-sha1. Visite el sitio web de WinSCP para obtener la información más reciente.
    Contraseña Especifique la contraseña de usuario de SFTP si establece ClientAuthenticationMode en Password.
    Clave privada Especifique la clave privada para el usuario SFTP si establece ClientAuthenticationMode en PublicKeyAuthentication.
    Contraseña de clave privada Especifique una contraseña de clave privada, si es necesario para la clave especificada en la propiedad PrivateKey .
    Huella digital de la tecla del host del servidor SSH Especifica la huella digital del servidor utilizado por el adaptador para autenticar el servidor si la propiedad AccessAnySSHServerHostKey está establecida en False. Si las huellas digitales no coinciden, la conexión fallará.
    Afiliada de SSO Disponible a partir de BizTalk Server 2020.

    Especificar la aplicación afiliada de inicio de sesión único empresarial.
    Nombre de usuario Especifica un nombre de usuario para el servidor FTP seguro.

    Servidor SSH

    Use Para hacer esto
    Anexar si existe Si el archivo que se va a transferir al servidor FTP seguro ya existe en el destino, esta propiedad especifica si los datos del archivo que se va a transferir deben anexarse al archivo existente. Si se establece en True, se anexan los datos. Si se establece en False, se sobrescribe el archivo en el servidor de destino.

    Valor predeterminado: Falso
    Ruta de acceso a la carpeta Especifica la ruta de la carpeta en el servidor de FTP seguro en la que se copia el archivo.
    Port Especifica la dirección del puerto del servidor FTP seguro en el que tiene lugar la transferencia del archivo.
    Dirección del servidor Especifica el nombre de servidor o la dirección IP del servidor FTP seguro.
    Nombre de archivo de destino Especifica el nombre con el que el archivo se transfiere al servidor FTP seguro. También puede usar macros para el nombre de archivo de destino.
  4. Haga clic en Aceptar y en Aceptar de nuevo para guardar la configuración.

Usar una versión más reciente de WinSCP

Para usar una versión más reciente de WinSCP con BizTalk Server, agregue una redirección de ensamblados para que BizTalk sepa qué ensamblado cargar. El redireccionamiento se configura en los archivos de configuración de BizTalk Server: BTSNTSVC.exe.config (instancias de host de 32 bits) y BTSNTSVC64.exe.config (instancias de host de 64 bits).

A continuación se incluye la sintaxis de configuración de ejemplo. Asegúrese de reemplazar por %NEWVERSION% la versión:

<configuration>
 <runtime>
  <assemblyBinding>
   <dependentAssembly>
    <assemblyIdentity name="WinSCPnet" publicKeyToken="2271ec4a3c56d0bf" culture="neutral" />
    <bindingRedirect oldVersion="1.0.0.0-1.65535.65535.65535" newVersion="%NEWVERSION%"/>
   </dependentAssembly>
  </assemblyBinding>
 </runtime>
</configuration>

Cuando haya terminado, la configuración será similar a la siguiente:

Redireccionamiento del ensamblado en el archivo de configuración.

Preguntas más frecuentes

Pregunta Respuesta
¿Qué servidores SFTP son compatibles? Consulte Servidores SFTP compatibles. A partir de BizTalk Server 2016, el adaptador SFTP usa WinSCP para conectarse a SFTP. Como resultado, los servidores SFTP que admiten WinSCP deben funcionar.
¿Se puede usar el adaptador SFTP con el método de autenticación mutua (clave pública y contraseña)? - A partir de BizTalk Server 2013 R2, sí. Si se establece en MultiFactorAuthentication , debe proporcionar el nombre de usuario con su contraseña y PrivateKey. Además, si la clave privada está protegida por una contraseña, especifique también la contraseña para la propiedad PrivateKeyPassword .

- Para BizTalk Server 2013, se puede usar Password o PublicKeyAuthentication. MultiFactorAuthentication no se admite en el adaptador SFTP incluido con BizTalk Server 2013.
¿Qué formatos de clave privada se admiten? ¿Se puede usar el formato de clave privada OpenSSH? El adaptador SFTP admite únicamente el formato de archivo de clave privada PuTTY. También se puede usar PuTTYgen para convertir de OpenSSH al formato .ppk.
Para SSHServerHostKeyFingerPrint, ¿qué formato y algoritmo de huella digital deben usarse? Debe usar la huella digital MD5 de la clave del servidor con el formato : ssh-rsa 2048 90:e4:9b:67:d9:22:a7:5f:6f:33:db:6a:b1:23:96:12.
¿Admite el adaptador SFTP el cifrado de 256 bits? Sí, el adaptador SFTP admite el cifrado de 256 bits. Los algoritmos de cifrado admitidos incluyen:

- Cifrado AES: SDCTR o CBC de 256 bits, de 192 bits o de 128 bits

- Cifrado 3DES (Triple-DES): SDCTR o CBC de 168 bits
¿Qué versiones SSH admite el adaptador? Sólo SSH2. No se puede establecer conexión con los servidores SFTP con la versión SSH1.
¿La máscara del archivo distingue mayúsculas de minúsculas? No. *.txt y *.TXT funcionan por igual. Instale la actualización acumulativa más reciente para BizTalk Server 2013. BizTalk Server versión RTM de 2013 tenía máscaras de archivo que distinguen mayúsculas de minúsculas.
Exportar enlaces da un campo de contraseña en blanco. ¿Al intentar crear una ubicación de recepción al importar estos enlaces qué cambios se realizarán? Editar el archivo de enlace editando el campo de contraseña. Además, en <Password vt="1">MySecretPassword</Password>, vt="1" indica un valor NULL. Cambie a vt="8", que indica una cadena. Por ejemplo:

<Password vt="8">MySecretPassword</Password>

Si desea obtener información más detallada, consulte https://msdn.microsoft.com/library/system.runtime.interopservices.varenum(v=vs.100).aspx.
¿Cómo se pueden especificar las rutas de acceso de archivo? Normalmente, las rutas de acceso se especifican con el formato /folder/pathname. Sin embargo, los distintos servidores requieren diferentes formatos, con o sin barras iniciales o finales. Por lo tanto, también puede intentar lo siguiente:

- /folder/pathname

- /folder/pathname/

- folder/pathname

- folder/pathname/