Hi, I have been using SEO tools for Excel for years and had no issue what so ever. However, since my current company updated their CDN contract, it seems that the tool no longer can access the domain and every request, for example @HtmlTitle, ends in a "access denied" result. What should I look for, in order to get the tool excluded from the blocked list or what do I tell my IT they should look for? Many thanks in advance!
Hello, Max.
We have the same problem in our company, as our IT team is very serious about blocking unauthorized or questionable activity. I solved this concern by implementing a whitelist that allows access whenever a secure 'fingerprint' is detected. Here's how to do that:
- Generate a secure string (aka 'fingerprint') that is ONLY KNOWN TO YOU. I use a custom function that produces a unique, SHA-1 hash string based upon any input value — you can find that UDF here.
Otherwise, a simpler (although less secure) method is to use SeoTools' built-in function,SeoToolsFingerPrint()
, to generate an 8-part Hex string based upon the current SeoTools user. - Next, work with your IT and CDN support teams to create a new policy that allows access whenever your unique fingerprint appears within a User-Agent string. Alternatively, you could even pass your fingerprint as a custom request header variable (or Both, for added security ). Ask your tech team(s) if they have a preference.
Once these two steps are completed, you can verify success by utilizing SeoTools' HttpSettings()
function to specify your new User-Agent string — and/or custom request header variable — that includes your new fingerprint.
So, if your User-Agent is 'SeoTools 10.0.0.0/Excel 16 64bit/Microsoft Windows NT 10.0.19045.0/.Net 4.0.30319.42000' [=SeoToolsUserAgent()
] and your fingerprint is '6AD6-8876-66B3-8899-9728-9BA5-954D-D566' [=SeoToolsFingerPrint()
], then your modified / secure User-Agent string would be:
SeoTools 10.0.0.0/Excel 16 64bit/Microsoft Windows NT 10.0.19045.0/.Net 4.0.30319.42000 6AD6-8876-66B3-8899-9728-9BA5-954D-D566
To wrap all this up with an example, here's the final formula to pull the HTML title from a page, substituting 'www.yoursite.com' with your own URL :
=XpathOnUrl( "https://www.yoursite.com/", "//title", "", HttpSettings( TRUE,,,,,,, {"User-Agent","SeoTools 10.0.0.0/Excel 16 64bit/Microsoft Windows NT 10.0.19045.0/.Net 4.0.30319.42000 6AD6-8876-66B3-8899-9728-9BA5-954D-D566"} ) )
Note that if you prefer to use SeoTools' built-in functions such as HtmlTitle()
, rather than the more robust — and recommended — XpathOnUrl()
, you can simply insert the following entry within the <RequestHeaders>...<RequestHeaders>
section of your SeoTools.config.xml file:
<Header Name="User-Agent">SeoTools 10.0.0.0/Excel 16 64bit/Microsoft Windows NT 10.0.19045.0/.Net 4.0.30319.42000 6AD6-8876-66B3-8899-9728-9BA5-954D-D566</Header>
IMPORTANT
If you choose to use the SeoTools.config.xml setting, rather than the recommended XpathOnUrl()
function, it's important to keep in mind that this would become the default User-Agent, even when you're using SeoTools on other websites. So, those sites will be able to see your SECRET fingerprint! Therefore, I strongly recommend using XpathOnUrl()
, so that you can be in control and maintain security. If your fingerprint ever gets compromised, repeat steps 1 & 2 above and have the old fingerprint removed from the whitelist.
Feel free to PM me if I can answer any questions.
-Tim W.