updated july 16, 2025
In today’s highly secure environments, ensuring robust authentication mechanisms is critical to safeguarding sensitive data and systems. For organizations within the United States Department of Defense (DoD) and other federal agencies, the Common Access Card (CAC) has become an essential tool for enforcing secure access controls.
As a leader in data analytics and security, Splunk Enterprise offers built-in support for CAC authentication, enabling organizations to leverage this secure method of access control for their Splunk deployments. This whitepaper provides a comprehensive guide on configuring Splunk Enterprise to use CACs for authentication, ensuring seamless integration with existing DoD security protocols.
A Common Access Card (CAC) is a smart card distributed by the United States Department of Defense (DoD) to authorized personnel. This card is about the size of a credit card and contains an embedded chip that holds a certificate unique to the cardholder. The CAC is used to gain access to DoD buildings, controlled spaces, computer systems, and networks. It prominently lists the user’s name, rank, service agency, and pay grade, along with other relevant information.
As of Splunk Enterprise version 9.0.2 and higher, administrators can configure Splunk Web to authenticate users through the certificates stored on their CACs. When properly configured, this method allows authorized users to log into Splunk Enterprise without entering a username or password. Instead, they insert their CAC into a card reader connected to a DoD-authorized computer, and the browser retrieves the certificate from the card to present to Splunk Enterprise for authentication.
To enable CAC authentication in Splunk Enterprise, administrators must configure several components, including the Splunk Web server, certificate authorities (CAs), and LDAP directories. The following sections outline the necessary steps for configuring Splunk Enterprise to authenticate users via CACs.
Prior to Splunk v9.0.2, enabling PIV token authentication for Splunk logins required use of a reverse proxy, such as Apache, to pass the token information to Splunk for LDAP authentication. Starting with version 9.0.2, there is now the ability to configure CAC/PIV token authentication within Splunk itself.
PIV token authentication is setup by adding configuration to the authentication.conf, web.conf and server.conf files found in the /opt/splunk/etc/system/local directory.
First configure LDAPS authentication using either Splunk web GUI by navigating to Settings > Authentication Methods > LDAP > Configure Splunk to Use LDAP > New LDAP
Your setup may look like below:

Or, add the following configuration to the authentication.conf file. Note: All values in bold are custom values.
| [authentication] authSettings = LDAP_Config ##Custom name given to LDAP stanza## authType = LDAP[LDAP_Config]SSLEnabled=1 anonymous_referrals = 1 bindDN = splunkbind ##AD account to connect Splunk to Active Directory## bindDNpassword = password ##Password to the bindDN account## charset = utf8 emailAttribute = mail enableRangeRetrieval = 0 groupBaseDN = CN=GroupName,OU=OrgUnit,DC=domain,DC=com groupMappingAttribute = dn groupMemberAttribute = member groupNameAttribute = cn host = DC1.domain.com ##Must be FQDN of LDAP server## nestedGroups = 0 network_timeout = 20 pagelimit = -1 port = 636 realNameAttribute = cn sizelimit = 1000 timelimit = 15 userBaseDN = OU=Users,OU=OrgUnit,DC=domain,DC=com userNameAttribute = userprincipalname |
Add the following configuration to the web.conf file:
| [settings] ### Start Splunk Web Using HTTPS ### enableSplunkWebSSL = 1 SSL Certificate Files ### CAC/PIV Authentication ### Banner ### |
Add the following configuration to the server.conf:
| [sslConfig] serverCert = /opt/splunk/etc/auth/certs/myserver.pem sslRootCAPath = /opt/splunk/etc/auth/certs/rootCA_chain.pem sslPassword = password |
After configuring Splunk Enterprise for CAC authentication, it is essential to thoroughly test the setup to ensure that it works as expected. Testing should include:
Configuring Splunk Enterprise to use a Common Access Card (CAC) for authentication strengthens your organization’s security posture by aligning with DoD and federal standards for secure access. By following the proper configuration steps and validating the setup, you can ensure a secure and efficient implementation of CAC authentication within your Splunk Enterprise environment.
To learn more about Splunk and how SecureStrux can support your organization in the design and deployment of a compliant Splunk architecture, please reach out to our sales team.