简体   繁体   中英

No Static IP address in Azure Functions when making outbound calls to external parties

I have Azure Durable Functions Application on Consumption Plan that has Orchestrator Function that executes set of Activities. Activity can be writing files to external SFTP server, which allows connection only for whitelisted IPs. Azure Functions does not have Static IP Address, but rather large range of IP addresses, which is not acceptable, since only 1 or few IP Addresses are acceptable by external SFTP server.

How to better mitigate this issue? Is it possible to use Azure Gateway/Azure Api Management or it rather helps for inbound connections and not for Activity Function that will write to External SFTP? Should some kind of Proxy be used?

You will need any service that supports a public static ip address. You should compare the price / complexity to change your current solution to one of them.

PS: It worths a mention that at this moment, API Management in Consumption Plan does not accept static ip address.

If there are no other nicely managed solutions you can use, one option is dumping the FTP files to blob storage, and sending a message through a message queue containing the file reference to a VM cluster.

Those static-IP VMs can be set to listen to the message queue, retrieve the files from blob storage, and upload them to the external FTP site. If it goes too slowly you can just add more VMs to listen to the queue.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM