Security

SplunkJS SDK: Getting error "Request header field X-Splunk-Form-Key is not allowed by Access-Control-Allow-Headers" after migrating to 6.5.x

mgarciar
Path Finder

Hi all,

I have a custom web page calling Splunk services using SplunkJS SDK. After migrating to 6.5, the page started failing with this message:

XMLHttpRequest cannot load https://(hostname):(port)/services/auth/login?output_mode=json. Request header field X-Splunk-Form-Key is not allowed by Access-Control-Allow-Headers. 

The code is the following:

function getJSONConnectionParams(username,password,hostname){
     return JSON.parse('{"username":"'+username+'","password":"'+password+'","scheme":"https","host":"'+hostname+'","port":8089}');
}

var http = new splunkjs.JQueryHttp();
var service = new splunkjs.Service(http,getJSONConnectionParams(splunkCurrentUser,currentPassword,getHostName()));

service.login(function(err) { ... }

The error shows up when the login function is called.

Splunk Web UI and Management port are using HTTPS, both certificates are the same. Also the crossOriginReference is enabled on the server.conf file.

Any help will be appreciated.

Thanks and regards,

0 Karma
1 Solution

mgarciar
Path Finder

Looking at the splunkjs code I found the "SplunkWebHttp" which seems to be using the standard " /splunkd/__raw" path.
Replacing the line:

var http = new splunkjs.JQueryHttp();

with

var http = new splunkjs.SplunkWebHttp();

Solved the issue.

I couldn't find any documentation about this. Seems all samples assume you want to use a proxy server.

View solution in original post

0 Karma

mgarciar
Path Finder

Looking at the splunkjs code I found the "SplunkWebHttp" which seems to be using the standard " /splunkd/__raw" path.
Replacing the line:

var http = new splunkjs.JQueryHttp();

with

var http = new splunkjs.SplunkWebHttp();

Solved the issue.

I couldn't find any documentation about this. Seems all samples assume you want to use a proxy server.

0 Karma
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

SOC4Kafka - New Kafka Connector Powered by OpenTelemetry

The new SOC4Kafka connector, built on OpenTelemetry, enables the collection of Kafka messages and forwards ...

Rounding off the Splunk Dashboard Contest

What does a contest-winning Splunk dashboard look like? In this case, it isn't in a browser tab at all. It ...

A Four Part Event Series: AI + Observability: AI Agents, LLMs, Apps, & Infrastructure

AI + Observability: AI Agents, LLMs, Apps, & Infrastructure The rapid evolution of artificial intelligence ...