2 Replies
      Latest reply on May 1, 2019 6:50 PM by mgrebenets
      mobiteam Level 1 Level 1 (0 points)

        Hello.

         

        I want to use Transporter (deliver, fastlane) to upload my app to the App Store behind an enterprise web proxy.

        Transporter is also used by Application Loader.

         

        Transporter use a jar file to upload data to App Store.

        And it can use DAV ( -t DAV ) to allow web proxy usage.

         

        So, I test connections with each method, from Application Loader to jar file.

         

        Any Java app can use proxy settings :

        -Dhttp.proxyHost=<host> -Dhttp.proxyPort=<port> -Dhttp.proxyUser=<user> -Dhttp.proxyPassword=<password> -Dhttps.proxyHost=<host> -Dhttps.proxyPort=<port> -Dhttps.proxyUser=<user> -Dhttps.proxyPassword=<password> -Djdk.http.auth.proxying.disabledSchemes= -Djdk.http.auth.tunneling.disabledSchemes=
        

         

        But, while using Transporter, the only parameters sent to proxy are :

        - host

        - port.

         

        The following proxy parameters are not sent :

        - user

        - password.

         

        And my proxy change SSL root certificate by a self-signed certificate.

         

        The proxy configuration :

        - Squid proxy

        - McAfee Web Gateway.

         

        Thanks for your help.

        • Re: Using Transporter behind enterprise proxy
          StevenLJackson1 Level 1 Level 1 (0 points)

          Did you ever get this resolved? I'm facing a similar issue...

          • Re: Using Transporter behind enterprise proxy
            mgrebenets Level 1 Level 1 (0 points)

            Yep, iTMSTransporter doesn't support proxy username/password configuration, which makes it really difficult to use behind proxy.

            It's been years and Apple didn't bother to add support for proxy authentication.

             

            What you can do is set up another proxy "in the middle".

            For example, configure CNTLM and point it to your company proxy using user's auth details.

            Then point transporter to CNTLM, this time there's no auth required.


            So then Transporter -- (no auth) --> CNTLM -- (username/pwd) --> Company Proxy

            One thing, though, CNTLM only works with NTLM authentication and doesn't support Basic authentication.
            So company proxy has to have NTLM authentication enabled for this setup to work.