Open source SSO for PCI DSS requirement 8

A self-hosted identity provider can carry much of PCI DSS Requirement 8, but it does not make an environment compliant on its own. This page maps each requirement to configuration, platforms and evidence.

On this page

Open source SSO for PCI DSS requirement 8: what the identity layer must prove

A self-hosted SSO provider can enforce most of PCI DSS Requirement 8 centrally, but the assessor judges the whole identity estate, including any application that bypasses SSO. The identity layer has to prove that every path into the cardholder data environment (CDE) runs through the same controlled login. PCI DSS is maintained by the PCI Security Standards Council (PCI SSC) and applies to merchants, processors, acquirers, issuers and service providers that store, process or transmit cardholder data, or that could affect the security of the CDE. If your organization is in one of those groups, the requirement applies to your workforce logins even when the identity provider runs on your own infrastructure.

Requirement 8.4.1 (MFA for non-console administrative access into the CDE), 8.4.2 (MFA for all access into the CDE) and 8.5.1 (MFA systems that resist replay, cannot be bypassed without documented and time-limited authorization, and require at least two factor types that must all succeed) became mandatory on 31 March 2025 under PCI DSS v4.0.1. Confirm with your payment brands and your assessor which version and reporting template apply to your entity. Compliance is documented either in a Report on Compliance completed by a Qualified Security Assessor or on a Self-Assessment Questionnaire, and each route ends with an Attestation of Compliance (AOC). A certificate is not accepted as validation. Start by listing every application, admin console, jump host and vendor connection that can reach the CDE, then check which of them authenticate through the identity provider. The gaps you find become your remediation plan.

DeployOpen plans, implements, hardens and documents the self-hosted identity stack, and prepares the configuration exports, access reviews and MFA enrollment records that an assessor will ask to see. DeployOpen does not issue reports, attestations or certifications, and the QSA or your acquirer's process decides the outcome. Ask any implementation partner to show, in writing, how each in-scope application is tied to the identity provider, how exceptions are approved and time-limited, and which evidence is generated automatically versus assembled by hand before the assessment starts.

How each Requirement 8 control maps to the identity provider

This table maps the PCI DSS Requirement 8 controls to what the identity provider must do and where it is configured in Keycloak or authentik. Read each row as a control to evidence: the left column names the requirement, the middle column states the function, and the right column names the configuration area to review with your assessor and integrator.

RequirementWhat the identity provider must doKeycloak or authentik configuration to review
8.2.1 to 8.2.4 (unique IDs, shared accounts, approved changes)Give every person a unique identity, block shared or generic logins for people, and route account creation and changes through an approved workflowRealm user profiles with unique usernames, no shared accounts in the directory, and admin event logging; authentik users and groups with audit of account changes
8.2.5 and 8.2.6 (termination and inactive accounts)Revoke access for leavers immediately and disable or remove accounts inactive for 90 days or moreDisable users at source or through directory sync (LDAP or Active Directory federation in Keycloak; source and sync stages in authentik); scheduled review of last login data; confirm the 90-day rule is enforced by your process or tooling
8.2.7 (third-party remote access accounts)Give vendor and third-party accounts unique identities, enable them only for approved windows and monitor their useSeparate group or realm for external users with time-limited access; expiry on accounts; conditional MFA and session limits for vendor logins
8.2.8 (idle session timeout)End sessions after a defined idle period so a user must authenticate againRealm SSO session idle and max lifespan settings in Keycloak; authentik session and flow settings for idle expiry; confirm values with your assessor
8.3.4 (lockout after invalid attempts)Lock user IDs after no more than 10 invalid attempts for at least 30 minutes or until identity is confirmedKeycloak brute force detection with maximum login failures and wait increment; authentik password and lockout policies in the authentication flow; test that lockout applies to both password and MFA failures
8.3.6 (password length and character mix)Require at least 12 characters with numbers and letters, or eight only where the system cannot support 12Keycloak realm password policy with length and digit/letter rules; authentik password policy with minimum length and character rules; document any system that limits the minimum to eight and its compensating approach
8.3.7 (password history)Block reuse of the last four passwordsKeycloak password history policy in the realm password policy; authentik password history (an enterprise-only feature on its pricing page); confirm availability in your edition
8.4.1 and 8.4.2 (MFA for administrative and all CDE access)Require MFA for non-console administrative access and for all access into the CDE; application or system accounts doing automated work are excluded from 8.4.2Conditional OTP or WebAuthn required actions and authentication flows scoped to CDE clients; authentik authentication stages bound to CDE applications; service accounts kept on separate, documented client credentials
8.4.3 (remote access including vendors)Require MFA for every remote network session from outside the entity's network that could reach or affect the CDEConditional authentication by IP range, network or client; MFA mandatory for VPN, bastion and vendor portal clients; test from outside the network
8.5.1 (MFA system strength)Use replay-resistant factors, allow no undocumented bypass (including by administrators), require two factor types and make every factor succeedPasskeys or WebAuthn with phishing resistance; no bypass flows for admins without documented, time-limited approval; OTP plus WebAuthn or password plus passkey combinations; authentication flows set to require all stages to pass

Which open-source identity platform fits which CDE setup

Many card-processing organizations already run Active Directory for workstations and file services, and the question is how to put MFA in front of cardholder data environment (CDE) access without rebuilding the directory. Keycloak fits this setting well because it supports LDAP and Active Directory user federation, so accounts stay authoritative in the existing directory while Keycloak handles the login flows, MFA and session rules. FreeIPA suits estates that are directory-centric and want Kerberos and LDAP from one product, though it is a different directory rather than a federation layer over Active Directory.

  • Keycloak federation: Users and groups are read from Active Directory, and Keycloak enforces MFA and session timeouts on top of them.
  • Keycloak database: Production use requires one of the supported databases listed in the Keycloak database guide, such as PostgreSQL within the supported version range.
  • authentik directory links: LDAP is a supported provider type, but Microsoft Entra ID integration is an Enterprise-only feature.
  • FreeIPA: Best suited when the team wants to replace the directory itself, with Kerberos for internal services.
  • ZITADEL: Lists SCIM and SAML 2.0 in its README, so confirm the directory connectors it supports for your Active Directory version.

Confirm with the vendor which directory connector versions, password policy features and audit logs your Active Directory setup needs, and document the choice in your Requirement 8 evidence.

Platforms that fit PCI DSS identity controls and why

Requirement 8 is decided in the identity provider, but an assessor will also examine the components around it: the MFA method, the service credentials and the logs of authentication events. The cards below cover the workforce identity platforms most often shortlisted for this scope, plus the adjacent components that need to be in the same evidence set.

Keycloak for central login

Keycloak is an Apache-2.0 identity server that supports OpenID Connect, OAuth 2.0 and SAML 2.0, with user federation to LDAP and Active Directory and an admin console for account lifecycle tasks. It helps with unique IDs (8.2.1), revoking terminated users (8.2.5) and MFA for access into the cardholder data environment (8.4.2). Confirm the high availability design: Keycloak's supported clustered designs need a synchronously replicated database, and that database is part of the CDE scope question.

authentik for policy-driven access

authentik is MIT-licensed for most of its code, with an enterprise directory under a separate license. Its providers cover OIDC, SAML, LDAP, proxy and RADIUS, which helps place MFA in front of web applications, VPN gateways and legacy services that Requirement 8.4.3 covers. Confirm which controls sit in the enterprise edition: password history and enhanced audit logging are listed as enterprise-only features, and both map to Requirement 8.3.7 and audit evidence.

ZITADEL for passkeys and SCIM

ZITADEL is AGPL-3.0 licensed and lists SSO, MFA, FIDO2 and WebAuthn passkeys, SAML 2.0 and SCIM. Passkeys support the phishing-resistant factors that Requirement 8.5.1 expects of an MFA system, and SCIM supports timely deprovisioning. Confirm the AGPL obligations with counsel before modifying the code, and confirm which passkey types are accepted by your assessor, since synced passkeys raise questions addressed in PCI SSC guidance.

FreeIPA for directory-backed accounts

FreeIPA combines an LDAP directory, Kerberos and certificate authority services under one administration model, which suits organizations that keep their workforce identities in a Linux-centric directory and need Kerberos for server logins. It supports unique user IDs and central disablement of inactive accounts under Requirements 8.2.1 and 8.2.6. Confirm its MFA integration with your chosen IdP, since FreeIPA usually relies on a companion component for OTP or passkey factors and that component must meet Requirement 8.5.1 on its own.

OpenBao for service credentials

Requirement 8 covers human users, but PCI DSS assessors also review application and system accounts and the secrets they use. OpenBao, licensed under MPL-2.0, can store, rotate and distribute database passwords, API keys and certificates so that service credentials are not embedded in code. Note that Requirement 8.4.2 does not apply to automated application and system accounts, so confirm with your assessor how service credentials are scoped and documented.

Wazuh or Security Onion for authentication logs

An identity platform shows its control only if authentication events leave it. Wazuh (GPL-2.0) and Security Onion (Elastic License 2.0) can collect identity provider and directory logs, alert on lockouts and failed logins, and retain evidence that Requirement 10 reviewers will request. Confirm the license terms for Security Onion's Elastic License 2.0 before commercial use, and confirm that the identity provider's event logs, not only host logs, reach the SIEM with time synchronization.

How to configure the identity provider for the CDE

This sequence takes a self-hosted identity provider from an unscoped user directory to a configuration that covers the cardholder data environment (CDE) access paths in PCI DSS Requirement 8. The output is a documented set of realm settings, MFA rules and session controls, plus exported configuration that can support the assessor's review.

  1. Define the CDE and remote access population

    The assessed entity lists every system in the cardholder data environment, every administrative console that reaches it, and every group of people who connect from outside the network, including employees, contractors and vendors. The QSA or internal assessor will test against this list, so the scope document must match what the identity provider will actually protect. Confirm the scope with your QSA or internal assessor before any realm changes. The step is done when each application, console and remote path has a named owner and a group in the identity provider that maps to it.

  2. Consolidate accounts and remove shared logins

    Platform engineers and identity administrators export user records from each directory and application that touches the CDE, then merge duplicates into one identity per person. Shared, generic and service accounts are inventoried separately, because Requirement 8.2 expects each person to have a unique ID and the assessor will look for shared credentials. Human users who need a second identity for administration get a separately named account. The step closes when the identity provider holds one record per person, each shared or generic account has a documented owner and justification, and the list is saved for evidence.

  3. Set the realm password and lockout policy

    Identity administrators configure the realm or tenant password policy to require at least 12 characters, with both numbers and letters, a history check that blocks reuse of the last four passwords, and lockout after no more than 10 invalid attempts for at least 30 minutes or until identity is confirmed. Settings are applied in a pre-production realm first and then promoted through the normal change process. Test one login per rule to confirm the policy is enforced, and export the realm configuration so the policy is evidenced as a configuration file rather than a screenshot.

  4. Enforce conditional MFA for CDE and admin access

    Administrators create authentication flows that require MFA for every access into the CDE, every non-console administrative session, and every remote network login from outside the entity's network, including third parties. Conditional rules (for example, by client, group or source network) keep the flow narrow so that service accounts performing automated functions are handled under a documented exception. Check the flows with a test user in each group and record which factor was used. Review FAQ 1595 and FAQ 1596 on synced passkeys and phishing-resistant authentication before deciding which factor types to allow for the CDE.

  5. Require replay-resistant, multi-factor authentication

    Identity administrators limit the MFA methods accepted for CDE access to mechanisms that resist replay and use at least two different factor types, and they configure the flow so that every factor must succeed before a session is granted. Any path that allows an administrator to skip MFA is either removed or documented with management approval for a limited period. Testers attempt a replayed one-time code, a login with the second factor missing and an administrator bypass, and the results are saved with the test plan. FAQ 1584 covers how factor success feedback should be handled in this design.

  6. Bind the identity provider to the bastion and VPN

    Network engineers configure the bastion host, VPN gateway or zero trust proxy so that every remote and administrative session must complete an identity provider login before it reaches the CDE. Client secrets, redirect URIs and token lifetimes are set per client, and the network side rejects sessions that arrive without a valid token. Testers confirm that a direct connection to a CDE host without the gateway fails, and the gateway logs show which identity authorized each session. The step closes when the network path cannot reach the CDE without the identity check.

  7. Configure session timeouts and disable inactive accounts

    Identity administrators set idle session timeouts on CDE clients and administrative consoles, and they schedule a job that disables accounts with no activity for 90 days, while a joiner, mover and leaver process removes access for terminated staff on the day they leave. Because the automated check depends on the last-login data the identity provider stores, its retention and the job's output are tested against a sample account. Record the job and its results for the assessor. The step is complete when a test account is disabled after the inactivity rule and a terminated user cannot sign in.

  8. Turn on audit logs and export the configuration

    Platform engineers enable event logging for logins, failed logins, MFA events, admin changes and lockouts, and forward those events to the SIEM used for CDE monitoring. They then export the realm or tenant configuration, the authentication flows, the client list and the change history, and store them under version control with the upgrade records. Keycloak recommends testing upgrades in a pre-production environment before applying them, and the Keycloak Operator documentation recommends manual approval mode for operator updates so that no upgrade lands without review. The step closes when a sample of logs can be traced to a named user and an exported configuration matches production.

Evidence assessors ask for and which component produces it

What configuration export proves password and passphrase rules for PCI DSS 8.3?

The assessor will look for a configuration export showing the password policy applied to the realm or organization that authenticates CDE users. In Keycloak, the realm's password policy and the realm export (for example, a JSON export taken with the admin tooling) show minimum length, character rules and history settings. In authentik, the password policy objects and the flow bindings that use them serve the same purpose, and password history is an enterprise-only feature according to the authentik pricing page. Confirm with your assessor whether a point-in-time export, a live screenshot, or both will be accepted, and make sure the export shows the policy actually bound to CDE login flows, not just a policy that exists.

How do I show terminated and inactive accounts were removed under PCI DSS 8.2?

The assessor will compare a current user list against HR or termination records and check that terminated users lost access immediately (Requirement 8.2.5) and that inactive accounts were removed or disabled within 90 days (Requirement 8.2.6). The identity provider produces the user list with last login timestamps and enabled or disabled status, such as Keycloak's user search with its session and login data, or authentik's user directory. Your identity lifecycle source, such as an HR system or the identity governance platform midPoint if you run one, produces the termination events. Keep dated review reports, since a static list without dates rarely satisfies an assessor.

What MFA enrollment and factor records does an assessor expect for CDE access?

The assessor will check that MFA is required for CDE access (Requirements 8.4.1 to 8.4.3) and that the factors used meet the two-factor-type rule in Requirement 8.5.1. The identity provider produces the evidence: the authentication flow configuration that requires an OTP or WebAuthn step, the list of enrolled credentials per user with factor type, and login event logs showing the second factor succeeded. Keycloak exposes credentials per user through the admin console and admin API, and authentik records authentication events. Confirm with your assessor how they want factor types categorized, and whether passkeys synced across devices need separate justification under the PCI SSC FAQ on synced passkeys.

Which settings prove lockout and idle session timeout controls?

The assessor will check the lockout threshold (no more than 10 invalid attempts, locked for at least 30 minutes or until identity is confirmed, under Requirement 8.3.4) and the idle session timeout under Requirement 8.2.8. Export the brute force detection settings and the session timeout values from the realm or the authentik flow and session configuration, then show them applied to the CDE clients. Keep a dated record of a test lockout and a test session expiry, because a configuration file alone may not show the control operating. Confirm the exact evidence format with your assessor and your QSA before testing in production.

What admin change logs show who altered authentication settings?

The assessor will look for an audit trail of administrative changes to authentication policies, client registrations and user privileges, with the actor, time and before-and-after values. In Keycloak, admin events and the event listener configuration record administrative operations when enabled, and the configuration should be forwarded to a central log store so the records cannot be edited by the same administrators. authentik's enhanced audit logging is listed as enterprise-only on its pricing page, so confirm what your edition records. Check that the logs are retained for the period your assessor expects and that someone reviews them, because the existence of logs alone is weak evidence.

How should third-party and vendor account approvals be documented?

The assessor will check that vendor and third-party accounts are uniquely identified, enabled only when needed under Requirement 8.2.7, and protected with MFA for remote access under Requirement 8.4.3. Produce a register of third-party accounts with the business owner, approval record, access scope and enablement window, then show the identity provider groups or roles that match those approvals. The identity provider shows the account state and the MFA enrollment, while a ticketing or approval system holds the sign-off. Ask your assessor whether they want the approval record stored with the account or in a separate access review.

Can a DeployOpen engagement prepare this evidence for a QSA to review?

DeployOpen can plan, configure and document the identity provider and the evidence it produces, including exports, review procedures and test records, as part of a fixed-scope engagement with written deliverables. DeployOpen prepares systems, controls and evidence for compliance assessments, but it does not issue reports, attestations or certifications. The Report on Compliance is completed by a Qualified Security Assessor and the Attestation of Compliance is produced on PCI SSC templates, so the assessor decides what evidence is sufficient. Agree the evidence list with your QSA before the engagement starts, and ask the partner to deliver it in a format the assessor has confirmed.

Evidence packet for a Requirement 8 assessment

This table lists the evidence an assessor is likely to ask for under Requirement 8, which requirement each artifact supports, the component that produces it and the retention or review cadence to confirm with the QSA or internal assessor. Use it to plan exports before the assessment window opens rather than rebuilding records during it.

ArtifactRequirements supportedProducing component and what to confirm
Realm and client configuration exports8.2.1, 8.3.4, 8.3.6, 8.3.7, 8.4.2Keycloak realm export or authentik blueprint files. Confirm with the assessor which export format and change history they accept, and how often exports are taken.
Password and lockout policy settings8.3.4, 8.3.6, 8.3.7Keycloak password policy and brute force detection settings, or authentik password policy and password history stages. Confirm whether the assessor wants screenshots, exports or both, and whether password history is covered by the edition in use.
Directory reconciliation reports8.2.2, 8.2.5, 8.2.6Comparison of the HR source, the identity provider and federated directories such as LDAP or Active Directory. Confirm the reconciliation frequency and who signs off on exceptions.
Inactive and terminated account reports8.2.5, 8.2.6Reports of accounts disabled after termination and accounts inactive for the period set in policy. Confirm the look-back window the assessor will sample against the 90-day inactivity rule.
MFA enrollment and factor type reports8.4.1, 8.4.2, 8.4.3, 8.5.1Enrollment status by user and factor type from the identity provider, including passkeys and hardware tokens. Confirm whether the assessor expects coverage counts by CDE access group.
Audit logs forwarded to a SIEM8.2.2, 8.2.5, 8.2.6, 8.4.2, 8.5.1Authentication and administrative event logs from the identity provider sent to a SIEM such as Wazuh. Confirm the retention period the QSA expects and whether log integrity controls are needed.
Admin and MFA bypass change tickets8.4.1, 8.5.1Approvals for any MFA bypass by administrators, documented and time limited. Confirm the authorization chain and expiry rule that management must set.
Customized approach or exception records8.2.8, 8.3.4, 8.5.1Risk analysis, stated objective and test evidence for any requirement met through the customized approach or a documented exception. Confirm with the QSA whether this approach is available to the entity before building it.
Version and patch records for the identity stack8.3.1, 8.4.2Release and upgrade records for the identity provider and its database. Confirm the supported version window with the vendor and the assessor's review cadence.

What the identity provider alone does not satisfy

A self-hosted identity provider covers the login path for applications it federates, but Requirement 8 reaches further into local accounts, system access and the MFA design itself. The cards below mark where an SSO project can look complete while cardholder data environment access still relies on controls the IdP never sees.

Legacy apps with local accounts

Older payment, reporting or back-office applications often keep their own user tables and cannot speak SAML or OIDC. Each one still needs unique IDs, the 12-character password rule under 8.3.6, lockout under 8.3.4 and removal of inactive accounts under 8.2.6. Inventory every application that touches the CDE, record which ones authenticate locally, and decide per application whether to front it with a proxy, retire it, or document compensating treatment for its accounts.

Database and system accounts

Service accounts, database logins and operating system users sit outside the IdP unless someone brings them in. Requirement 8.2 covers shared and generic accounts, and the PCI SSC clarifies in FAQ 1080 how shared authentication credentials are handled. Ask for a list of every non-human account with an owner, a purpose and a rotation method, and confirm which of them fall under the MFA requirement, since 8.4.2 excludes application and system accounts that perform automated functions.

Console and jump host bypass

Administrators often reach servers through consoles, local logins or bastion hosts that never pass through the IdP. Requirement 8.4.1 requires MFA for all non-console administrative access into the CDE, and FAQ 1577 explains how console access is treated. Map every path into the CDE, including out-of-band consoles and emergency accounts, and confirm each one either enforces MFA or is covered by a documented and authorized exception under 8.5.1.

Phishable factors and synced passkeys

SMS codes, email one-time codes and push prompts open the door to real-time phishing, and a passkey synced across devices may not meet the assessor's view of phishing resistance. FAQ 1596 addresses phishing-resistant authentication for 8.4.1 and 8.4.3, and FAQ 1595 addresses synced passkeys under 8.4.2. Before you rely on passkeys, ask your QSA in writing whether your synced passkey design is accepted for your CDE scope.

MFA feedback and bypass controls

Requirement 8.5.1 requires MFA systems that resist replay, cannot be bypassed without documented and time-limited authorization, and require every factor to succeed before access is granted. FAQ 1584 clarifies how feedback about factor success is handled, which affects what an enrollment screen or helpdesk reset may reveal. Review your IdP's flow configuration and any administrator override, then document each bypass path and its approval.

Customized approach documentation

Using the customized approach instead of the defined approach requires a targeted risk analysis and evidence that the stated objective is met, which an IdP configuration alone does not supply. The PCI SSC explains the difference between compensating controls and the customized approach in its blog. Decide early whether any 8.x requirement will be met this way, because the analysis, control descriptions and testing become your own documentation to maintain. Which payment brands accept this for your merchant or service provider level is a question for your acquirer and the brands, since the PCI SSC does not enforce compliance or set penalties.

Common questions about PCI DSS 8 and self-hosted SSO

Can open-source SSO meet PCI DSS Requirement 8 by itself?

No. A self-hosted identity provider such as Keycloak or authentik can implement the controls Requirement 8 asks for, including unique IDs, password rules, MFA into the cardholder data environment and replay-resistant MFA, but it covers only part of the assessment. Requirement 8 also depends on how accounts are provisioned and removed, how application and system accounts are handled, how the CDE is segmented, and how the configuration and logs are evidenced. Those controls sit with your processes and other systems. Confirm the scope of your assessment with your acquirer or QSA before you design anything, because the Attestation of Compliance is issued by the assessor and the payment brands, not by the software vendor.

What drives the cost of a self-hosted SSO project for PCI DSS?

Cost comes from four areas: infrastructure and database hosting, integration work per application, the MFA rollout to staff and remote users, and ongoing support. Open-source software has no license fee for Keycloak or the community edition of authentik, but you still pay for hosting, staff time and any paid edition. The main cost drivers are how many applications must integrate, how many use legacy protocols or cannot use SAML or OIDC at all, whether you consolidate several directories, and how many users need new factors. If you consider authentik's Enterprise edition, its pricing page lists $5 per user per month billed annually plus $0.02 per external user per month, with Enterprise Plus starting at $20k annually. Ask any partner for a written quote that separates one-time work from recurring costs.

How long does a PCI DSS SSO rollout take and what does it need from our team?

Duration depends on the number of applications, the state of your directories and the change windows you can use, so no general timeline applies. Your team must provide application owners who can confirm protocols and test logins, a directory or HR source for accounts, and a decision on the MFA methods you will accept. You also need a working conversation with your QSA early, to agree how the controls will be evidenced and whether any requirement will use the customized approach. Plan change windows for cutover in the CDE and for any remote access changes. A fixed-scope written plan from a partner should state the phases and dependencies before work begins.

Can our own team build and run this in-house?

Often yes, if you have engineers who can operate PostgreSQL, containers or Kubernetes, and manage TLS, backups and identity protocols. The hard parts are rarely the first install. They are the highly available design, the upgrade process, MFA enrollment at scale and the evidence package for the assessor. Ask yourself whether you can staff on-call coverage for the identity provider, since it sits in front of every CDE login. A partner can plan, implement, harden, document and support the platform inside your own cloud account or data center, which is useful if your team has no spare capacity. Either way, the assessor will expect documented ownership of the system.

Why does Keycloak high availability need a synchronously replicated database?

Keycloak's documented high availability designs, including a single cluster spread across availability zones and the multi-cluster v2 design, both require a synchronously replicated database. The reason is consistency: if a login session or token write is acknowledged by one node but not yet present on another, a failover can lose state or produce inconsistent results. For a PCI DSS environment, that also affects the reliability of authentication logs. Check the database guide for the supported engines, which include PostgreSQL 14 to 18 among others, and confirm replication behavior with your database team. The deprecated multi-cluster v1 design used a separate Infinispan cluster per site, so new designs should follow the current documentation.

How do we handle Keycloak and authentik upgrades without breaking CDE access?

Test every upgrade in a non-production environment that mirrors your production configuration, then promote it through change control. Keycloak plans four minor releases a year, and since version 26.0 breaking changes in minor releases are opt-in, which makes testing more predictable. The Keycloak Operator documentation strongly recommends manual approval mode for operator updates. Keycloak also migrates its database schema automatically at startup by default, but the upgrading guide suggests manual migration for large deployments. For authentik, the security policy lists 2026.5.x and 2026.8.x as supported and announces security releases at least 24 hours in advance. Keep a tested rollback path and record each change for your evidence file.

How do we meet the 90-day inactive account rule in Requirement 8.2.6?

Requirement 8.2.6 requires inactive user accounts to be removed or disabled within 90 days of inactivity, and Requirement 8.2.5 requires access for terminated users to be revoked immediately. A self-hosted identity provider can disable accounts automatically based on last login time, but the rule only works if the identity provider receives reliable termination signals from HR or your directory. Build a scheduled report or job that lists accounts approaching the threshold, and keep the logs that show each disablement. Ask your QSA how the inactivity measure applies to service and system accounts, since those are handled differently. PCI SSC FAQ 1066 addresses inactive accounts and is a useful reference for your team.

How DeployOpen scopes and delivers PCI DSS identity controls

DeployOpen plans, implements, customizes, integrates, hardens, documents and supports self-hosted open-source identity platforms inside the client's own infrastructure. For PCI DSS Requirement 8, we start from the cardholder data environment boundary and the written scope, then build the identity provider, MFA and account lifecycle controls and the evidence an assessor will ask to see.

How we scope

  • Map which systems, administrator paths and remote third-party accesses sit inside the cardholder data environment and need MFA.
  • Record the chosen identity provider, its version, hosting location and which applications federate through it.
  • Agree the written scope, deliverables and timeline before work starts, since most engagements are fixed-scope.

How we build

  • Configure unique user IDs, password and passphrase rules, lockout thresholds and password history in the identity provider.
  • Deploy MFA with at least two factor types, documented bypass procedures and a test of every factor before access is granted.
  • Integrate in-scope applications over SAML or OIDC, then test login, lockout, session timeout and deprovisioning paths in a non-production environment.

How we hand over

  • Deliver configuration exports, access control matrices and runbooks mapped to the Requirement 8 sub-requirements in scope.
  • Document inactive account and terminated user revocation procedures, with a record of how each control is evidenced.
  • Train administrators on change approval, upgrade handling and the steps an assessor or QSA will need to review the controls.

How we support

  • Offer ongoing support, upgrades and continuous testing as a retainer after handover, scoped in writing.
  • Review identity platform security releases and patch the deployment under an agreed change process.
  • Confirm with your QSA which evidence they accept, since DeployOpen prepares controls and evidence but does not issue assessment reports or attestations.

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.