<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: &amp;quot;XSRF prevention check failed. Possible XSRF discovered.&amp;quot; in Integration, Extension &amp; APIs</title>
    <link>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890809#M3065</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jeff, in one of the environment, qlik sense is returning 403 error for a ticket request. Is there a way to turn on logging to get granular debug messages for ticket api?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 13 May 2015 01:53:23 GMT</pubDate>
    <dc:creator>rthamman</dc:creator>
    <dc:date>2015-05-13T01:53:23Z</dc:date>
    <item>
      <title>"XSRF prevention check failed. Possible XSRF discovered."</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890803#M3059</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;ticket REST api in Qlik Sense is returning "XSRF prevention check failed. Possible XSRF discovered." error. Xrf key is in the URL and the header. Any thoughts?? Below is the code snippet:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt; &lt;/TD&gt;&lt;TD&gt;String Xrfkey = "0123456789abcdef";&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;SPAN&gt; String targetURL = "&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://xx.xx.xx.xx:4243/qps/ticket?Xrfkey=" rel="nofollow"&gt;https://xx.xx.xx.xx:4243/qps/ticket?Xrfkey=&lt;/A&gt;&lt;SPAN&gt;";&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; URL url = new URL(targetURL + "?Xrfkey=" + Xrfkey);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; request = (HttpsURLConnection)url.openConnection();&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; request.setRequestMethod("POST");&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; request.setRequestProperty("Content-Type", "application/json");&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; request.setRequestProperty("X-Qlik-Xrfkey", Xrfkey);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; request.setUseCaches(false);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; request.setDoInput(true);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; request.setDoOutput(true);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; String userDirectory = "USERDIRECTORY";&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; String userId= "USERID";&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; String body = "{'UserDirectory':'" + userDirectory + "', 'UserId':'" + userId + "','Attributes': []}";&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; byte[] bodyBytes = body.getBytes("UTF-8");&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Error:&lt;/P&gt;&lt;P&gt;0070: 46 72 69 2C 20 31 30 20&amp;nbsp;&amp;nbsp; 41 70 72 20 32 30 31 35&amp;nbsp; Fri, 10 Apr 2015&lt;/P&gt;&lt;P&gt;0080: 20 30 36 3A 34 38 3A 31&amp;nbsp;&amp;nbsp; 30 20 47 4D 54 0D 0A 53&amp;nbsp;&amp;nbsp; 06:48:10 GMT..S&lt;/P&gt;&lt;P&gt;0090: 65 72 76 65 72 3A 20 51&amp;nbsp;&amp;nbsp; 50 53 2F 31 2E 31 2E 30&amp;nbsp; erver: QPS/1.1.0&lt;/P&gt;&lt;P&gt;00A0: 2E 30 20 4D 69 63 72 6F&amp;nbsp;&amp;nbsp; 73 6F 66 74 2D 48 54 54&amp;nbsp; .0 Microsoft-HTT&lt;/P&gt;&lt;P&gt;00B0: 50 41 50 49 2F 32 2E 30&amp;nbsp;&amp;nbsp; 0D 0A 44 61 74 65 3A 20&amp;nbsp; PAPI/2.0..Date: &lt;/P&gt;&lt;P&gt;00C0: 46 72 69 2C 20 31 30 20&amp;nbsp;&amp;nbsp; 41 70 72 20 32 30 31 35&amp;nbsp; Fri, 10 Apr 2015&lt;/P&gt;&lt;P&gt;00D0: 20 30 36 3A 34 38 3A 31&amp;nbsp;&amp;nbsp; 30 20 47 4D 54 0D 0A 0D&amp;nbsp;&amp;nbsp; 06:48:10 GMT...&lt;/P&gt;&lt;P&gt;00E0: 0A 33 37 0D 0A 58 53 52&amp;nbsp;&amp;nbsp; 46 20 70 72 65 76 65 6E&amp;nbsp; .37..XSRF preven&lt;/P&gt;&lt;P&gt;00F0: 74 69 6F 6E 20 63 68 65&amp;nbsp;&amp;nbsp; 63 6B 20 66 61 69 6C 65&amp;nbsp; tion check faile&lt;/P&gt;&lt;P&gt;0100: 64 2E 20 50 6F 73 73 69&amp;nbsp;&amp;nbsp; 62 6C 65 20 58 53 52 46&amp;nbsp; d. Possible XSRF&lt;/P&gt;&lt;P&gt;0110: 20 64 69 73 63 6F 76 65&amp;nbsp;&amp;nbsp; 72 65 64 2E 0D 0A 7F 6E&amp;nbsp;&amp;nbsp; discovered....n&lt;/P&gt;&lt;P&gt;0120: 8B 7B 18 15 D4 FC 0A 2C&amp;nbsp;&amp;nbsp; 9F 13 7E 96 27 99 3E 6B&amp;nbsp; .......,....'.&amp;gt;k&lt;/P&gt;&lt;P&gt;0130: C1 EB 0D 0D 0D 0D 0D 0D&amp;nbsp;&amp;nbsp; 0D 0D 0D 0D 0D 0D 0D 0D&amp;nbsp; ................&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Apr 2015 06:59:06 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890803#M3059</guid>
      <dc:creator>rthamman</dc:creator>
      <dc:date>2015-04-10T06:59:06Z</dc:date>
    </item>
    <item>
      <title>Re: "XSRF prevention check failed. Possible XSRF discovered."</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890804#M3060</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;It appears you are supplying the xrfkey twice in parameters and you are missing a certificate to trust the communication when you make the web request.&amp;nbsp; Here is the sample code from help.qlik.com.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.qlik.com/sense/en-us/developer/#../Subsystems/ProxyServiceAPI/Content/ProxyServiceAPI/ProxyServiceAPI-Example-Connect-API-Certificates.htm%3FTocPath%3DQlik%2520Sense%2520Proxy%2520Service%2520API%7CExamples%7C_____1" title="http://help.qlik.com/sense/en-us/developer/#../Subsystems/ProxyServiceAPI/Content/ProxyServiceAPI/ProxyServiceAPI-Example-Connect-API-Certificates.htm%3FTocPath%3DQlik%2520Sense%2520Proxy%2520Service%2520API%7CExamples%7C_____1"&gt;http://help.qlik.com/sense/en-us/developer/#../Subsystems/ProxyServiceAPI/Content/ProxyServiceAPI/ProxyServiceAPI-Exampl…&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;See how your targetUrl has XrfKey param twice?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;String targetURL = "&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://xx.xx.xx.xx:4243/qps/ticket" rel="nofollow"&gt;https://xx.xx.xx.xx:4243/qps/ticket&lt;/A&gt;&lt;STRONG&gt;?Xrfkey=&lt;/STRONG&gt;";&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;URL url = new URL(targetURL + "&lt;STRONG&gt;?Xrfkey=&lt;/STRONG&gt;" + Xrfkey);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Even after you fix this it likely won't give you a ticket because you are not supplying a cert in the request.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Apr 2015 18:42:21 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890804#M3060</guid>
      <dc:creator />
      <dc:date>2015-04-10T18:42:21Z</dc:date>
    </item>
    <item>
      <title>Re: "XSRF prevention check failed. Possible XSRF discovered."</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890805#M3061</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jeff,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm past the connectivity point.It is the qlik ticket API that is throwing the error. Here's the code. I have removed the ip address, etc...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;import java.io.BufferedReader;&lt;/P&gt;&lt;P&gt;import java.io.DataOutputStream;&lt;/P&gt;&lt;P&gt;import java.io.File;&lt;/P&gt;&lt;P&gt;import java.io.FileInputStream;&lt;/P&gt;&lt;P&gt;import java.io.InputStream;&lt;/P&gt;&lt;P&gt;import java.io.InputStreamReader;&lt;/P&gt;&lt;P&gt;import java.net.URL;&lt;/P&gt;&lt;P&gt;import java.security.KeyStore;&lt;/P&gt;&lt;P&gt;import java.security.SecureRandom;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;import javax.net.ssl.HostnameVerifier;&lt;/P&gt;&lt;P&gt;import javax.net.ssl.HttpsURLConnection;&lt;/P&gt;&lt;P&gt;import javax.net.ssl.KeyManagerFactory;&lt;/P&gt;&lt;P&gt;import javax.net.ssl.SSLContext;&lt;/P&gt;&lt;P&gt;import javax.net.ssl.SSLSession;&lt;/P&gt;&lt;P&gt;import javax.net.ssl.SSLSocketFactory;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;public class QlikTicket {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //if certificate for create for an IP address you need to do this.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HttpsURLConnection.setDefaultHostnameVerifier(new HostnameVerifier()&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public boolean verify(String hostname, SSLSession session)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (hostname.equals("xx.xx.xx.xx"))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; });&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static void main(String args[]) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HttpsURLConnection request = null; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InputStream inputStream = null;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; KeyStore keyStore&amp;nbsp; = KeyStore.getInstance(KeyStore.getDefaultType());&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileInputStream instream = new FileInputStream(new File("path to jks that has the client cert"));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; keyStore.load(instream, "password".toCharArray());&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; instream.close();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String Xrfkey = "0123456789abcdef";&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String targetURL = "&lt;A class="jive-link-external-small" href="https://xx.xx.xx.xx:4243/qps/ticket?Xrfkey=" rel="nofollow"&gt;https://xx.xx.xx.xx:4243/qps/ticket?Xrfkey=&lt;/A&gt;";&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; URL url = new URL(targetURL + "?Xrfkey=" + Xrfkey);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; request = (HttpsURLConnection)url.openConnection();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; request.setRequestMethod("POST");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; request.setRequestProperty("Content-Type", "application/json");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; request.setRequestProperty("X-Qlik-Xrfkey", Xrfkey);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; request.setUseCaches(false);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; request.setDoInput(true);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; request.setDoOutput(true);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String userDirectory = "USERDIRECTORY";&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String userId= "USERID";&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String body = "{'UserDirectory':'" + userDirectory + "', 'UserId':'" + userId + "','Attributes': []}";&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bodyBytes = body.getBytes("UTF-8");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance("SunX509");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; keyManagerFactory.init(keyStore, "password".toCharArray());&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SSLContext sslContext = SSLContext.getInstance("TLS");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sslContext.init(keyManagerFactory.getKeyManagers(), null, new SecureRandom());&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; request.setSSLSocketFactory(sslSocketFactory);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; request.setDoOutput(true);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; request.setDoInput(true);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DataOutputStream out = new DataOutputStream(request.getOutputStream());&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out.write(bodyBytes);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out.flush();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out.close();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inputStream = request.getErrorStream();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InputStreamReader inputStreamReader = null;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String string = null;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BufferedReader bufferedreader = null;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(inputStream != null) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inputStreamReader = new InputStreamReader(inputStream);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bufferedreader = new BufferedReader(inputStreamReader);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string = null;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while ((string = bufferedreader.readLine()) != null) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println("Error Received " + string);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inputStream = request.getInputStream();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inputStreamReader = new InputStreamReader(inputStream);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bufferedreader = new BufferedReader(inputStreamReader);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while ((string = bufferedreader.readLine()) != null) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println("Received " + string);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inputStream = request.getInputStream();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inputStreamReader = new InputStreamReader(inputStream);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bufferedreader = new BufferedReader(inputStreamReader);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while ((string = bufferedreader.readLine()) != null) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println("Received " + string);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }catch (Exception ex) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ex.printStackTrace();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(inputStream != null) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inputStream.close();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } catch(Exception ex1) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Error:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;00C0: 46 72 69 2C 20 31 30 20&amp;nbsp;&amp;nbsp; 41 70 72 20 32 30 31 35&amp;nbsp; Fri, 10 Apr 2015&lt;/P&gt;&lt;P&gt;00D0: 20 30 36 3A 34 38 3A 31&amp;nbsp;&amp;nbsp; 30 20 47 4D 54 0D 0A 0D&amp;nbsp;&amp;nbsp; 06:48:10 GMT...&lt;/P&gt;&lt;P&gt;00E0: 0A 33 37 0D 0A 58 53 52&amp;nbsp;&amp;nbsp; 46 20 70 72 65 76 65 6E&amp;nbsp; .37..XSRF preven&lt;/P&gt;&lt;P&gt;00F0: 74 69 6F 6E 20 63 68 65&amp;nbsp;&amp;nbsp; 63 6B 20 66 61 69 6C 65&amp;nbsp; tion check faile&lt;/P&gt;&lt;P&gt;0100: 64 2E 20 50 6F 73 73 69&amp;nbsp;&amp;nbsp; 62 6C 65 20 58 53 52 46&amp;nbsp; d. Possible XSRF&lt;/P&gt;&lt;P&gt;0110: 20 64 69 73 63 6F 76 65&amp;nbsp;&amp;nbsp; 72 65 64 2E 0D 0A 7F 6E&amp;nbsp;&amp;nbsp; discovered....n&lt;/P&gt;&lt;P&gt;0120: 8B 7B 18 15 D4 FC 0A 2C&amp;nbsp;&amp;nbsp; 9F 13 7E 96 27 99 3E 6B&amp;nbsp; .......,....'.&amp;gt;k&lt;/P&gt;&lt;P&gt;0130: C1 EB 0D 0D 0D 0D 0D 0D&amp;nbsp;&amp;nbsp; 0D 0D 0D 0D 0D 0D 0D 0D&amp;nbsp; ................&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Apr 2015 20:40:49 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890805#M3061</guid>
      <dc:creator>rthamman</dc:creator>
      <dc:date>2015-04-10T20:40:49Z</dc:date>
    </item>
    <item>
      <title>Re: "XSRF prevention check failed. Possible XSRF discovered."</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890806#M3062</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;did you change your code from&lt;/P&gt;&lt;P style="font-size: 13px; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; color: #3d3d3d;"&gt;&amp;nbsp; String targetURL = "&lt;A class="jive-link-external-small" href="https://xx.xx.xx.xx:4243/qps/ticket?Xrfkey=" rel="nofollow" style="font-weight: inherit; font-style: inherit; font-family: inherit; color: #3778c7;"&gt;https://xx.xx.xx.xx:4243/qps/ticket?Xrfkey=&lt;/A&gt;";&lt;/P&gt;&lt;P style="font-size: 13px; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; color: #3d3d3d;"&gt;&amp;nbsp; &lt;SPAN style="line-height: 1.5em;"&gt; URL url = new URL(targetURL + "?Xrfkey=" + Xrfkey);&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-size: 13px; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; color: #3d3d3d;"&gt;&lt;SPAN style="line-height: 1.5em;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-size: 13px; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; color: #3d3d3d;"&gt;to something like below to remove the duplicate '?Xrfkey=' ?&lt;/P&gt;&lt;P style="font-size: 13px; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; color: #3d3d3d;"&gt;&lt;/P&gt;&lt;P style="font-size: 13px; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; color: #3d3d3d;"&gt;&amp;nbsp; String targetURL = "&lt;A class="jive-link-external-small" href="https://xx.xx.xx.xx:4243/qps/ticket?Xrfkey=" rel="nofollow" style="font-weight: inherit; font-style: inherit; font-family: inherit; color: #3778c7;"&gt;https://xx.xx.xx.xx:4243/qps/ticket?&lt;/A&gt;";&lt;/P&gt;&lt;P style="font-size: 13px; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; color: #3d3d3d;"&gt;&amp;nbsp; &lt;SPAN style="line-height: 1.5em;"&gt;URL url = new URL(targetURL + "?Xrfkey=" + Xrfkey);&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Apr 2015 21:37:12 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890806#M3062</guid>
      <dc:creator />
      <dc:date>2015-04-10T21:37:12Z</dc:date>
    </item>
    <item>
      <title>Re: "XSRF prevention check failed. Possible XSRF discovered."</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890807#M3063</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Jeff. Removing the duplicate param worked.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Apr 2015 23:56:18 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890807#M3063</guid>
      <dc:creator>rthamman</dc:creator>
      <dc:date>2015-04-10T23:56:18Z</dc:date>
    </item>
    <item>
      <title>Re: "XSRF prevention check failed. Possible XSRF discovered."</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890808#M3064</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Rama, good to read that everything is working now.&amp;nbsp; Please click on the Actions button on my reply above and choose correct answer or helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Jeff G&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Apr 2015 13:48:06 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890808#M3064</guid>
      <dc:creator />
      <dc:date>2015-04-13T13:48:06Z</dc:date>
    </item>
    <item>
      <title>Re: "XSRF prevention check failed. Possible XSRF discovered."</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890809#M3065</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jeff, in one of the environment, qlik sense is returning 403 error for a ticket request. Is there a way to turn on logging to get granular debug messages for ticket api?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 May 2015 01:53:23 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890809#M3065</guid>
      <dc:creator>rthamman</dc:creator>
      <dc:date>2015-05-13T01:53:23Z</dc:date>
    </item>
    <item>
      <title>Re: "XSRF prevention check failed. Possible XSRF discovered."</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890810#M3066</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The proxy log located in %programdata%\Qlik\Sense\Logs\Proxy\Audit Proxy log file is where you want to look.&amp;nbsp; If you want to get it more granular, go to Proxies in the QMC and change the logging level from info to debug.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;jg&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 May 2015 14:41:55 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890810#M3066</guid>
      <dc:creator />
      <dc:date>2015-05-13T14:41:55Z</dc:date>
    </item>
    <item>
      <title>Re: "XSRF prevention check failed. Possible XSRF discovered."</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890811#M3067</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Rama,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does your server certificate or QlikClient certificate have a private key?&amp;nbsp; You must use client and server certificates with public and private keys because Qlik Sense uses Transport Layer Security (TLS) to secure communication.&amp;nbsp; No private keys on these certificates are the most common cause of 403 messages.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Because you are using java, do the certificates in your java keystore (jks) have private keys?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;jg&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 May 2015 17:45:14 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/quot-XSRF-prevention-check-failed-Possible-XSRF-discovered-quot/m-p/890811#M3067</guid>
      <dc:creator />
      <dc:date>2015-05-14T17:45:14Z</dc:date>
    </item>
  </channel>
</rss>

