Can integration services (SSIS) traffic to the internet be routed via a proxy ?

Greg Booth 1,276 Reputation points
2022-11-01T12:06:39.64+00:00

We deploy integration services on a server.
We have a package that needs to be able to access a web resource ( a script component is grabbing some data from an API by calling out to a URL).
The server is currently only allowed to talk to talk to the internet via the firewall to resources with a fixed IP address - but the URL we want to use this time does not have a fixed IP address - and we want to route SSIS via the proxy. Is this possible ?

As we are using a script component, we could add lines of code to direct the traffic (for this script component) via the proxy ?

When developing the package we used Visual Studio, and had to add a section to the devenv. exe.config in c:\program files (x86)... visual studio... to force the traffic through the proxy (but maybe this is forcing the traffic through the users proxy ). We added a section to the config like

<system.net> <settings> <ipv6 enabled="true"/> <servicePointManager expect100Continue="false"/> </settings> <defaultProxy useDefaultCredentials="true" enabled="true"> <proxy usesystemdefault="True" /> </defaultProxy></system.net>

Is there a similar .config file for SSIS on the server where the package will be deployed too ?
Or can we force the traffic to use the proxy by adding lines of .net code to the script component to have the same affect ?

Kind regards

SQL Server Integration Services
SQL Server Integration Services
A Microsoft platform for building enterprise-level data integration and data transformations solutions.
2,451 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Amira Bedhiafi 15,216 Reputation points
    2023-08-16T14:16:48.9566667+00:00

    SSIS traffic to the internet can be routed via a proxy, and it is possible to manage this scenario both by configuration and through code in the script component. For an SSIS package that requires accessing a web resource via a proxy, you can use .NET code within the script component to set up the necessary web proxy settings. By leveraging the System.Net.WebProxy class in your script component, you can programmatically define the proxy server details and assign it to the web request:

    WebProxy proxy = new WebProxy("http://proxyserver:port", true);
    
    proxy.Credentials = CredentialCache.DefaultCredentials;
    
    WebRequest request = WebRequest.Create("http://url");
    
    request.Proxy = proxy;
    
    
    

    This allows you to control the routing of that specific web request through the specified proxy. Also in a deployed environment, you may find specific .config files where similar proxy settings can be applied, depending on the version and setup of SSIS.

    0 comments No comments