CARVIEW |
Securing Splunk Enterprise
- Install Splunk Enterprise securely
- Create secure administrator credentials
- About TLS encryption and cipher suites
- Secure Splunk Enterprise with FIPS
- About default certificate authentication
- Harden the Splunk Enterprise installation directory on Windows
- Secure Splunk Enterprise on your network
- Disable unnecessary Splunk Enterprise components
- Secure Splunk Enterprise service accounts
- Deploy secure passwords across multiple servers
- Harden the network port that App Key Value Store uses
- Best practices for hardening Splunk Enterprise servers and the operating systems they use
- Use network access control lists to protect your deployment
- Use access control to secure Splunk data
- About user authentication
- About configuring role-based user access
- Define roles on the Splunk platform with capabilities
- Create and manage users with Splunk Web
- Create and manage roles with Splunk Web
- Find existing users and roles
- Secure access for Splunk knowledge objects
- Password best practices for administrators
- Configure Splunk password policies
- Configure a Splunk Enterprise password policy using the Authentication.conf configuration file
- Password best practices for users
- Unlock a user account
- Change a user password
- Manage out-of-sync passwords in a search head cluster
- Set up user authentication with LDAP
- Manage Splunk user roles with LDAP
- LDAP prerequisites and considerations
- Secure LDAP authentication with transport layer security (TLS) certificates
- How the Splunk platform works with multiple LDAP servers for authentication
- Configure LDAP with Splunk Web
- Map LDAP groups to Splunk roles in Splunk Web
- Configure single sign-on with SAML
- Configure SSO with PingIdentity as your SAML identity provider
- Configure SSO with Okta as your identity provider
- Configure SSO with Microsoft Azure AD or AD FS as your Identity Provider
- Configure SSO with OneLogin as your identity provider
- Configure SSO with Optimal as your identity provider
- Configure SSO in Computer Associates (CA) SiteMinder
- Secure SSO with TLS certificates on Splunk Enterprise
- Configure Ping Identity with leaf or intermediate SSL certificate chains
- Configure SAML SSO for other IdPs
- Configure authentication extensions to interface with your SAML identity provider
- Configure advanced settings for SSO
- Map groups on a SAML identity provider to Splunk roles
- Modify or remove role mappings
- Troubleshoot SAML SSO
- About multifactor authentication with Duo Security
- Configure Splunk Enterprise to use Duo Security multifactor authentication
- Configure Duo multifactor authentication for Splunk Enterprise in the configuration file
- About multifactor authentication with RSA Authentication Manager
- Configure RSA authentication from Splunk Web
- Configure Splunk Enterprise to use RSA Authentication Manager multifactor authentication via the REST endpoint
- Configure Splunk Enterprise to use RSA Authentication Manager multifactor authentication in the configuration file
- User experience when logging into a Splunk instance configured with RSA multifactor authentication
- About securing inter-Splunk communication
- Configure secure communications between Splunk instances with updated cipher suite and message authentication code
- Securing distributed search heads and peers
- Secure deployment servers and clients using certificate authentication
- Secure Splunk Enterprise services with pass4SymmKey
- schedule report failed
- Error Message on indexer console
- DBConnect errors and performance
- javaagent do not show any business transaction
- HTTP 401 -- Remote login disabled because you are ...
- How do I benchmark system health before a Splunk E...
- Some pages not working after working on "Access Co...
- Search Head Cluster: How to manage new roles betwe...
- Problem in installing appdynamic agent on Adobe CQ...
- Internet Explorer Login Fails
Connect your authentication system with Splunk Enterprise using the authentication.conf configuration file
To integrate your authentication system with your Splunk Enterprise deployment, use the authentication.conf file. Confirm that your authentication system runs properly, then perform the following steps:
- Create and test a Python authentication script. See Create the authentication script for the procedure.
- Edit the authentication.conf configuration file to enable the authentication script. See Enable your authentication script in this topic.
- Edit the authentication.conf file to set the authentication cache duration for your script. See Set authentication cache durations in this topic.
Enable your authentication script
After you create a Python script to implement authentication, you must update the authentication.conf file located in $SPLUNK_HOME/etc/system/local/
to enable your script. You can also copy and edit a sample authentication.conf from $SPLUNK_HOME/share/splunk/authScriptSamples/
.
Specify Scripted
as your authentication type under the [authentication]
stanza heading:
[authentication] authType = Scripted authSettings = script
Set script variables under the [script]
stanza heading. For example:
[script] scriptPath = $SPLUNK_HOME/bin/python $SPLUNK_HOME/bin/<scriptname.py>
Set authentication cache durations
Enable authentication caching to significantly speed authentication performance when you use scripted authentication. You do so by adding the optional [cacheTiming]
stanza in the authentication.conf file. Each script function (except getSearchFilter
) has a cacheTiming
setting, which turns on caching for that function and specifies its cache duration.
For example, to specify the cache timing for the getUserInfo
function, use the userInfoTTL
attribute. Caching for a function occurs only if you specify its associated setting.
The cacheTiming
settings specify the frequency at which Splunk software calls your script to communicate with the external authentication system. You can specify the time in seconds (s), minutes (m), hours (h), or days (d). In most cases, limit the cache frequency to seconds or minutes. If you don't specify a time unit Splunk software uses seconds. For example, a value of "5" is equivalent to "5s".
This example shows typical values for the caches:
[cacheTiming] userLoginTTL = 10s getUserInfoTTL = 1m getUsersTTL = 2m
In most cases, set userLoginTTL
to a low value, since this determines how long the Splunk platform caches user login and password validity.
To refresh all caches immediately, use the CLI command splunk reload auth
:
./splunk reload auth
Running this command does not log current users out of the instance.
You can also refresh caches in Splunk Web:
- In the System menu, under Users and authentication select Access controls.
- Select Authentication method.
- Select Reload authentication configuration to refresh the caches.
Each function, except for getUsers
, has a separate cache for each user. If, for example, you have 10 users logged on and you've specified the userInfoTTL
setting, the getUserInfo
function has 10 user-based caches. The getUsers
function encompasses all users and has a single, global cache.
Create the authentication script | Use PAM authentication |
This documentation applies to the following versions of Splunk® Enterprise: 8.2.0, 8.2.1, 8.2.2, 8.2.3, 8.2.4, 8.2.5, 8.2.6, 8.2.7, 8.2.8, 8.2.9, 8.2.10, 8.2.11, 8.2.12, 9.0.0, 9.0.1, 9.0.2, 9.0.3, 9.0.4, 9.0.5, 9.0.6, 9.0.7, 9.0.8, 9.0.9, 9.0.10, 9.1.0, 9.1.1, 9.1.2, 9.1.3, 9.1.4, 9.1.5, 9.1.6, 9.1.7, 9.1.8, 9.1.9, 9.2.0, 9.2.1, 9.2.2, 9.2.3, 9.2.4, 9.2.5, 9.2.6, 9.3.0, 9.3.1, 9.3.2, 9.3.3, 9.3.4, 9.4.0, 9.4.1, 9.4.2
Comments
Connect your authentication system with Splunk Enterprise using the authentication.conf configuration file
You must be logged into splunk.com in order to post comments. Log in now.
Please try to keep this discussion focused on the content covered in this documentation topic. If you have a more general question about Splunk functionality or are experiencing a difficulty with Splunk, consider posting a question to Splunkbase Answers.
Your Comment Has Been Posted Above
Feedback submitted, thanks!