Getting Data In

negotiate authentication in custom python search commands

cphair
Builder

Hello,

I'd like to use a custom search command that makes a live REST query to another system with a special account and returns the results to Splunk. Unfortunately, the other system uses Windows client credentials (my script is running on a Windows search head) and doesn't like basic authentication--the script errors out with a 401 when it tries to open the URL. With the modules provided in Splunk 4.3.4's Python (Python 2.7.2, I guess), is it possible to make the REST call with another account's credentials without using basic auth? I've looked for non-Splunk Python code examples, and they either use basic auth or they use the ntlm module, which doesn't appear to be included in Splunk Python by default.

0 Karma

dart
Splunk Employee
Splunk Employee

I'd suggest using this technique to include another python library, such as requests.

I've also used an alternate technique of shelling out to another script, in this case perl, but you could do so to use system python instead.

#! /usr/bin/env python
"""
    Python wrapper script for the perl script
"""
import os,sys

script = r'/path/to/my/script.pl'

os.execv(script, sys.argv[1])
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!

Automating Threat Operations and Threat Hunting with Recorded Future

    Automating Threat Operations and Threat Hunting with Recorded Future June 29, 2026 | Register   Is your ...

Keep the Learning Going with the New Best of .conf Hub

Hello Splunkers, With .conf26 getting closer, there’s already a lot of excitement building around this year’s ...

Splunk Community Badges!

  Hey everyone! Ready to earn some serious bragging rights in the community? Along with our existing badges ...