Connecting to IIS web server

Hello,

We would like to connect to an IIS web server (IIS Web Server Overview | Microsoft Learn) to retrieve files. Is it possible to connect EasyMorph to an IIS web server, and access the files that are in this server’s folders? If so, what connector type should I use and what information should I receive from the Server admin in order to get access to the server?

Thanks very much,

Roberto

There are not so many options for accessing files with EasyMorph on IIS.

EasyMorph supports SFTP, but IIS doesn’t support SFTP.
IIS supports WebDAV, but it’s not supported by EasyMorph.

The only option I can think of is to download files from IIS over the FTP(S) protocol using the “Download file” action. In the action, provide a URL that starts with ftp:// or ftps:// and credentials for basic authentication.

Uploading files might be possible with a “Web request” action using a POST request, but I didn’t try it.

1 Like

@dgudkov Thanks. Regarding the files I have to download, if I don’t know what their names are, is there a way to list all the files in the folder (using somthing similar to the “List files” action, however where I can authenticate into the IIS Server) and then in a child module, download those files (passing the full file path as a parameter)?

Thanks!

Hi @dgudkov, one additional question - in the “Download file” action it states that “Downloading fails if the remote site uses an expired or invalid SSL certificate.” If we have a self-signed certificate, will the download fail?

Hi @roberto

Although EasyMorph does not provide direct integration with IIS, you can try the web crawler method.

If you are using IIS with Directory Browsing enabled, then the HTML page generated by IIS will look something like this:

<pre> 3/11/2023  2:02 PM     32371648 <A HREF="/EasyMorph.Setup%201.zip">EasyMorph.Setup 1.zip</A><br> 3/11/2023  2:02 PM     32371648 <A HREF="/EasyMorph.Setup%202.zip">EasyMorph.Setup 2.zip</A><br>

This page can be parsed using regex, and the HREF
attribute value can be retrived. Although this method is not recommended, it allows you to get a list of files and folders of the current folder level.
Folder names contain / at the end.
To process all the folders, you will need to go recursively through the entire site.

You can download files using Iterate WebRequest. A self-signed certificate should be ok.

See the attached sample project.

IIS community 1.morph (5.7 KB)


Another option is to use the ftp utility built into Windows using the “Run program” action. With it, you can list files and download/upload them. Since it comes with Windows, it works out of the box.

Hello,

Thanks @dgudkov and @ckononenko, at the end we are able to obtain the file paths directly, so that is no longer an issue.

However, I’m facing an issue with the connection. FTPS has been set up (with a Self-Signed certificate) and I’m able to connect to it using FileZilla (an FTP client), however it doesn’t work in EasyMorph.

In FileZilla, for the connection to work I had to select “Require implicit FTP over TLS”, as the connection to the host via FTPS is done through Port 990.

In EasyMorph, I have tried “ftps://hostname:990/filepath” - in this case the connection seems to be established because the “Download file” action starts, however it never finishes, it stays at “Running” and the file is never downloaded. The fact that the connection is established but the download never finishes - can this be related to the Self-signed certificate, and the fact that it hasn’t been accepted through a pop-up?. In FileZilla, when I created the FTPS connection, it showed me a warning pop-up regarding the self-signed certificate, but I accepted the pop-up and the connection was established correctly.

Is there something I have to change in how I send the request in order to make this work?

In FileZilla, the connection passes through the following stages when connecting:

image

I have the feeling that when downloading the file from EasyMorph, the process gets stuck at one of these steps.

Thanks!

Roberto

Hello @dgudkov and @ckononenko,

Regarding my last post, do you know what could be happening for the transfer to work in FileZilla but not through EasyMorph?

Thanks,

Roberto

Hello Roberto,

Implicit FTP over TLS is not supported by the .NET Framework components, used internally by the “Download file” action.