8 Replies Latest reply on May 3, 2017 9:05 AM by Rajesh Hegde

    Tableau behind a IIS Reverse Proxy

    Valthor Druzin Halldorsson

      I'm planning to run Tableau behind a Microsoft IIS Reverse Proxy.
      Is there anything in particular that needs to be kept in mind on the Tablaeu side ? Any pitfalls that I should be aware of ?

        • 1. Re: Tableau behind a IIS Reverse Proxy
          Toby Erkson

          Valthor,

          Disclaimer:  I am NOT a network person and a newbie for server administration.

          We had an issue with getting Tableau online maps and worked with a Tableau Support engineer to get this fixed.  You may need to do the same but here's what I know that we needed to fix the issue so it's something to consider.  Note that I have changed our URL locations (corporate...) so, naturally, yours will be different but the concept is the same.

           

          Here is an excerpt from an email by my network guy from over a year ago:

           

          The key to this problem was tableau IS recognizing the hostname in the http request header. When the hostname was changed to what tableau recognizes, the problem was solved.

           

          There is one unresolved issue with the floating IPs so you may receive intermittent failures.  This will be resolved early next week either by using the fixed 65.bbb.ccc.ddd addresses that tableau supplied us, or dynamically obtaining a DNS resolution at request time.  The later is preferable as we have the same problem with other outside webservices.

           

          To test from the tableau server, as tableau suggested, the config file will need to be changed to use the corporate virtual domain names instead of tableau domains.  The translations are as follows:

          QA

          mapvisual2.tableausoftware.com = corporate-test.us164.corpintra.net

          mapspatial.tableausoftware.com = corporate-ps-test.us164.corpintra.net

           

          The email sent from Tableau Support:

          Hello Matt and Toby,

          Thank you for your time today on the Webex. Per our conversation, here is the documentation in regards to the Map Server IP addresses and the Web Proxy and Firewall Settings.

          The IP addresses (and corresponding map server hostnames) are as follows:

          The default DNS names point to multiple IP addresses:
          mapvisual2.tableausoftware.com
          mapspatial.tableausoftware.com

          These are the static map proxy DNS names and IP addresses:

          mapvisual2proxy.tableausoftware.com = 66.35.252.204 (mapvisual2.tableausoftware.com)
          mapspatialproxy.tableausoftware.com = 66.35.252.219  (mapspatial.tableausoftware.com)
          These IP addresses will need to be white-listed and exempted from any other security restrictions that may block access. After doing so, it should then be possible to load the following URL in Internet Explorer:

          http://66.35.252.204/tile/d/mode=named|from=tableau2_2_base/from=us_census00.state_geom|mode=theme|select=tableau.claritas.pop_c|colors=feffd9%2Cedf8b3%2Cc4eab1%2C7dcdbb%2C41b7c4|breaks=2010000.000000%2C4290000.000000%2C6400000.000000%2C12500000.000000/mode=named|from=tableau2_2_admin0_borders/mode=named|from=tableau2_2_admin1_borders/ol/5/5/10.png?apikey=ttab56540ba691a909b0f7d2af0f6fe7

          Using the Tableau Map proxy addresses requires the following file changes to all Tableau Software instances using the proxy map servers:

          1. Tableau Desktop: C:\Program Files (x86)\Tableau\Tableau 8.0\Mapsources\Online.tms
          --Note: Change "Program Files (x86)" to "Program Files" if using a 32-bit operating system

          2. Tableau Server: C:\Program Files (x86)\Tableau\Tableau Server\8.0\vizqlserver\mapsources\Online.tms

          To modify the files:

          1. Open the files in a text editor

          2. On the 3rd line of each file, change mapspatial.tableausoftware.com to mapspatialproxy.tableausoftware.com and mapvisual2.tableausoftware.com to mapvisual2proxy.tableausoftware.com

          3. Save and close each file

          4. Restart the software (Tableau Desktop or Tableau Server)

          Web Proxy and Firewall Settings
          http://kb.tableausoftware.com/articles/knowledgebase/web-proxy-and-firewall-settings

           

          Here's the beginning of our Online.tms file.  You'll see where we made our changes:

          <?xml version="1.0" encoding="utf-8"?>
          <mapsource inline="false" version="8.1">
              <connection class="OpenStreetMap" indicator-server="corporate-ps-48475-test.com" layer-separator="/" max-stretch="1.2" min-shrink="0.667" offline="" port="80" server="corporate-ps-48474-test.com" url-format="tile/d/{L}/ol/{Z}/{X}/{Y}.png?apikey={K}" username="ttab54560ba691a909b0f7d2af0f6fe6"/>
              <languages>
          ...
          
          

           

          So, after all of this was done my users could now get the Tableau online maps.  To insure this works every time I upgrade Tableau Server I have a copy of the Online.tms file in a different directory.  After installing/upgrading Server I have a batch script that copies the Online.tms file to the Server location, thus over-writing it"

          ...
          REM Updating ONLINE.TMS maps file...
          copy /Y "D:\Application\Tableau\Scripts\Online.tms" "D:\Application\Tableau\Tableau_Server\8.2\vizqlserver\mapsources"
          ...
          
          

           

          Hope this helps!

          2 of 2 people found this helpful
          • 2. Re: Tableau behind a IIS Reverse Proxy
            Toby Erkson

            In addition to the above, I found out that "Tableau - Classic" maps use the Online.tms file while the "Tableau" setting uses the Tableeau.tms file!  So there's yet another possible VIP that needs creating, "maps.tableausoftware.com" that's in that file we need to account for.

            1 of 1 people found this helpful
            • 3. Re: Tableau behind a IIS Reverse Proxy
              Valthor Druzin Halldorsson

              Thanks! I'll give this a try for sure

              • 4. Re: Tableau behind a IIS Reverse Proxy
                Surya SS

                Hi Valthor & Tobby,

                 

                I'm trying to accomplish a similar reverse proxy for tableau server. To explain it in short, clients will be accessing http://xyz.com/tableau which will in turn do a reverse proxy on http://tableau.xyz.local/

                 

                I am using URL rewrite modules in IIS server to enable this. But using the URL rewrite rule, I am not able to modify the URLs getting generated in the javascript content.  I have attached the web.config file which I am using. It would be great if you can guide me through this as you have already established the same. This web.config works fine except for the pulling the workbook from tableau server.

                 

                Will it be possible for you to share your web.config file too? Much appreciated.

                 

                Thanks,

                Surya

                • 5. Re: Tableau behind a IIS Reverse Proxy
                  Toby Erkson

                  I'm sorry Surya but what I wrote above is all I know.  I'm not experienced in infrastructure and don't have any more advice

                  • 6. Re: Tableau behind a IIS Reverse Proxy
                    Jeff D

                    Hi Surya, have you checked out the guidelines for adding a load balancer?  Add a Load Balancer

                    • 8. Re: Tableau behind a IIS Reverse Proxy
                      Rajesh Hegde

                      Hello Valthor,

                       

                      Did you manage to configure this successfully? If yes, are you using AD authentication on both IIS & Tableau level to achieve single sign on?

                       

                      Thank you.