{
    "componentChunkName": "component---src-templates-docs-js",
    "path": "/whatsnew/27-v2026.8.1",
    "result": {"data":{"site":{"siteMetadata":{"title":"OpenIAM Documentation v2026.8.1 | OpenIAM","docsLocation":""}},"mdx":{"fields":{"id":"4e1b71f1-f53b-58ba-95fa-cc2837e9ce4a","title":"New in v2026.8.1","slug":"/whatsnew/27-v2026.8.1"},"body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {\n  \"title\": \"New in v2026.8.1\",\n  \"metaTitle\": \"New in v2026.8.1\",\n  \"metaDescription\": \"An overview of new features, enhancements, bug fixes, and updates introduced in OpenIAM v2026.8.1\"\n};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"p\", null, \"OpenIAM version \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"2026.8.1\"), \" introduces Privacy Management as a new platform module and delivers the next generation of identity risk configuration.\"), mdx(\"p\", null, \"The Privacy Management module arrives in this release as a complete foundation: a canonical privacy schema tied to OpenIAM identities, a durable event backbone with delivery guarantees, an immutable consent ledger with live current-state projection, a governed registry of processing purposes and lawful authorities, evidence capture for every privacy action, and a dedicated Privacy Administration Console for day-to-day operations. Risk intelligence continues its evolution with a new Risk Factor Catalogue and per-population risk policies \\u2014 different groups can now be scored by different factor sets \\u2014 plus a new Membership-Duration risk factor and a rebuilt Risk Score Configuration screen. Access certification gains side-by-side entitlement comparison and risk-driven scoping improvements. The release also validates PostgreSQL 18 and ships a large wave of SoD and synchronization bug fixes.\"), mdx(\"h2\", null, \"New features\"), mdx(\"h3\", null, \"Privacy Management\"), mdx(\"p\", null, \"OE-4606 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Privacy kernel: canonical schema, tenancy, and identity\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"The foundation of the Privacy Management module. Introduces the canonical privacy schema with tenant and identity relationships in the supported databases, establishing the identity kernel the other Privacy Management capabilities build on. Customers gain the underlying structure needed to manage consent, lawful purposes, and privacy events for their user population inside OpenIAM.\"), mdx(\"p\", null, \"OE-4608 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Privacy event backbone\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"A durable event pipeline for privacy records, with delivery guarantees and reconciliation. Privacy events \\u2014 a consent given, a purpose activated, an evidence item recorded \\u2014 travel through a reliable envelope with retry and reconciliation. If a downstream consumer misses a message, the system can reconcile from source instead of losing the record.\"), mdx(\"p\", null, \"OE-4609 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Consent ledger with current-state projection\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"An event-sourced ledger of every consent action, together with a live current-state view. Every grant, withdrawal, and modification of consent is appended to an immutable ledger; a projection derived from the ledger answers \\\"what is this user's current consent state?\\\" in real time. Consent events are only accepted where consent is actually the lawful basis for processing, so the full history of any consent decision is available on demand for regulator or subject-access requests.\"), mdx(\"p\", null, \"OE-4610 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Purpose, activity, and lawful authority registry\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"A governed registry of processing purposes, the activities that use them, and the lawful authorities that justify them. Administrators register each processing purpose with owner, data categories, audience, permitted channels, and lawful authority reference. Processing activities are recorded with explicit associations to the purposes they serve. Lawful authorities \\u2014 both consent-based and non-consent-based \\u2014 are typed and carry validity windows. A governed lifecycle keeps a single active version per purpose or activity and auto-deprecates prior versions; non-consent authorities allow processing without consulting the consent ledger.\"), mdx(\"p\", null, \"OE-4613 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Privacy evidence, audit, and reporting\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Every privacy state change writes an evidence record with the actor, subject, purpose, and outcome. Records feed audit views inside OpenIAM and can be shipped to a SIEM, providing the audit trail needed for privacy compliance without a separate logging system.\"), mdx(\"p\", null, \"OE-4620 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Privacy Administration Console\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"A new console area for privacy operators covering day-to-day management of purposes, consents, activities, and privacy events, plus operational health indicators. The console includes an operator queue for items that need attention \\u2014 missing authority, reconciliation gaps \\u2014 and health readouts for the event backbone.\"), mdx(\"h3\", null, \"Identity risk management\"), mdx(\"p\", null, \"OE-4697 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Risk factor catalogue and per-population risk policies\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"A new risk configuration model that separates reusable risk factors from population-specific risk policies. Administrators maintain a catalogue of risk factors with their applicability rules, then attach chosen factors to a population \\u2014 \\\"contractors in Europe\\\" or \\\"privileged accounts\\\" \\u2014 so different groups are scored by different rules without duplicating factor logic. A factor test endpoint runs a draft factor against a sample subject before the change is saved. New administration screens are available in the Webconsole for both the catalogue and policies. See \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/2-risk-factor-config\"\n  }, \"Risk factors configuration\"), \".\"), mdx(\"p\", null, \"OE-4452 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Membership-duration risk factor\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"A built-in risk factor that raises the score of a grant based on how long a user has held it. Long-held roles and group memberships contribute more to a user's risk score than freshly granted ones. The factor is included in the standard factor catalogue and can be attached to any risk policy. See \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/2-risk-factor-config\"\n  }, \"Risk factors configuration\"), \" and \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/4-membership-tags\"\n  }, \"Membership tags\"), \".\"), mdx(\"p\", null, \"OE-4629 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Live risk during in-flight campaigns with factor explanations\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"When something that affects risk changes mid-campaign \\u2014 a new grant, a role change, a dormancy update \\u2014 affected review items update rather than showing the launch-time score. Reviewers can hover the risk shield on any item to see the individual factors that contributed to its score. See \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/2-risk-factor-config\"\n  }, \"Risk factors configuration\"), \" and \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/2-risk-event-driven-cert\"\n  }, \"Risk driven certification\"), \".\"), mdx(\"h3\", null, \"Access certification\"), mdx(\"p\", null, \"OE-4437 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Risk-driven access certification configuration\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Administrators can now set a minimum membership-risk threshold on a certification so that only grants at or above that level enter the review scope. Auto-certify rules act on the same risk view the reviewer sees, so items pre-approved at launch are consistent with what a reviewer would decide. The launched campaign captures the risk thresholds that were in effect, preserving an auditable record of the risk scope each campaign used. See \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/2-risk-event-driven-cert\"\n  }, \"Risk driven certification\"), \" and \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/2-risk-factor-config\"\n  }, \"Risk factors configuration\"), \".\"), mdx(\"p\", null, \"OE-4507 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Side-by-side entitlement comparison during certification\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Reviewers can now pick a baseline user \\u2014 for example, a peer in the same job \\u2014 and see a paged, side-by-side diff of direct and inherited role and group memberships for the reviewed user versus the baseline. Not-yet-effective and already-expired memberships are excluded, and historical review outcomes and revoker names are shown where available. See \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/11-campaign-dashboard\"\n  }, \"Campaign dashboard\"), \".\"), mdx(\"h3\", null, \"Access control\"), mdx(\"p\", null, \"OE-4446 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Purpose-Based Access Control console\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"A new administration console for Purpose-Based Access Control (PBAC) with rollout controls and a simulation mode. Administrators can define PBAC policies and roll them out gradually \\u2014 shadow mode (evaluated but not enforced), partial rollout by percentage, or full enforcement. A simulation runner shows what a policy would decide for a given user and request without changing anything and without writing audit entries. The decision log records which policies applied and the rollout mode they were in at the time.\"), mdx(\"p\", null, \"OE-3717 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Disable delegate access request per application\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Administrators can now turn off delegated access requests on individual applications from Managed System settings. End users requesting access to those applications no longer see the option to delegate the request on someone else's behalf \\u2014 enforcing that access is always requested by the recipient, which is required for regulated and personal-account systems.\"), mdx(\"hr\", null), mdx(\"h2\", null, \"Enhancements and tasks\"), mdx(\"h3\", null, \"Identity risk management\"), mdx(\"p\", null, \"OE-4453 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Rebuilt Risk Score Configuration screen\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"The Risk Score Configuration screen has been rebuilt against the new risk factor and policy model. The old single-scope configuration screen is replaced with catalogue-plus-policy screens. Administrators can configure factor parameters directly on the built-in factors without custom code. See \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/2-risk-factor-config\"\n  }, \"Risk factors configuration\"), \".\"), mdx(\"h3\", null, \"Access certification\"), mdx(\"p\", null, \"OE-4695 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Certified vs. revoked split on grouped review rows\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Grouped rows in the UAR v2 User and Entitlement views now show how many items were certified versus revoked, not just how many are complete. Campaign managers can spot rows with a high revoke rate at a glance without opening every grouped row. See \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/11-campaign-dashboard\"\n  }, \"Campaign dashboard\"), \".\"), mdx(\"p\", null, \"OE-4764 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Reviewer improvements in SelfService v2 certifications\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Several refinements to the SelfService v2 certification reviewer experience: membership risk in the reviewer grid now stays current as risk is recomputed instead of being frozen at campaign launch; items auto-certified at launch are visible to the reviewer by default and marked with a system-preset indicator; and Dashboard \\\"due today\\\" and \\\"past due\\\" counts now match what the campaign search returns for the same filters.\"), mdx(\"h3\", null, \"Platform\"), mdx(\"p\", null, \"OE-4628 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"PostgreSQL 18 support\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"OpenIAM is now validated for use with PostgreSQL 18. Database schema migrations run cleanly on PostgreSQL 18, and reference container images used for testing and demonstration are updated accordingly.\"), mdx(\"p\", null, \"OE-3817 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Refreshed localisation for nine languages\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Updated translations for English, French, Spanish, German, Portuguese, Chinese, Japanese, Danish, and Swedish. Danish and Norwegian locale codes were corrected to their standard forms (\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"da_DK\"), \" and \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"nb_NO\"), \"), so the correct translation bundles resolve for those languages and Danish and Norwegian users no longer see the interface fall back to English.\"), mdx(\"hr\", null), mdx(\"h2\", null, \"Bug fixes\"), mdx(\"h3\", null, \"Segregation of Duties\"), mdx(\"p\", null, \"OE-3579 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Stale violations cleared after a policy is removed\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where violations recorded against a deleted or deactivated policy kept appearing on the Violations tab indefinitely. A full detection sweep now confirms which violations still apply and clears the ones tied to policies that no longer exist or are no longer active.\"), mdx(\"p\", null, \"OE-3582 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Clear error when a Hard SoD policy blocks a grant\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where adding a user to a role or group conflicting with a Hard SoD policy returned a generic \\\"unknown error.\\\" The blocked grant now returns a clear message identifying the conflicting policy and is no longer recorded as an active violation for the user.\"), mdx(\"p\", null, \"OE-3583 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Policy rename reflected on existing violations immediately\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where existing violation records kept showing the old policy name after a rename. The rename is now applied to violation records in the same operation that saves the policy, and deactivating a policy clears its violations at the same time.\"), mdx(\"p\", null, \"OE-4118 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Consistent Hard SoD error in the classic user view\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where adding a conflicting entitlement via the classic user view returned an unhelpful generic error. The classic view now returns the same \\\"blocked by policy X\\\" message that the modern views produce.\"), mdx(\"p\", null, \"OE-4119 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Same start and end date no longer bypasses the Hard SoD check\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an edge case where setting identical start and end dates on an entitlement caused the Hard SoD check not to fire, allowing a conflicting grant through. The Hard SoD check now runs regardless of date shape.\"), mdx(\"p\", null, \"OE-4134 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Deleted policies no longer listed on the Violations tab\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where deleted policies kept appearing as sources of violations long after removal. A full unscoped detection sweep now prunes violations belonging to deleted or recreated policies from every user's record.\"), mdx(\"p\", null, \"OE-4579 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Hard SoD violations visible while the policy is active; no phantom entries after deletion\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed several related issues: Hard policy violations were never listed on the Violations tab while the policy was active; deleting the policy produced phantom entries; and saves carrying a \\\"skip SoD check\\\" flag could wipe a user's violation records for unrelated policies. Hard policies now show their violations while active, deletion no longer produces phantom entries, and skip-check saves no longer overwrite other policies' violations.\"), mdx(\"p\", null, \"OE-4635 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Specific error message for invalid CSV uploads to the SoD Rule Set Catalog\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where an invalid CSV upload was rejected with \\\"unexpected error.\\\" The catalog now returns a specific validation message identifying what was wrong \\u2014 empty file, file too large, unsupported format, or too many rules. See \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/9-segregation-of-duties#rule-set-catalog\"\n  }, \"Rule Set Catalog\"), \".\"), mdx(\"p\", null, \"OE-4636 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Invalid JSON or XML rule sets explain the parse failure\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where an unparseable JSON or XML rule set silently reported \\\"0 valid rules\\\" with no explanation, and rule element names with different casing were rejected. Malformed uploads now explain what could not be parsed, and element names are matched flexibly. See \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/9-segregation-of-duties#rule-set-catalog\"\n  }, \"Rule Set Catalog\"), \".\"), mdx(\"p\", null, \"OE-4637 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"SoD Rule Set Catalog activation buttons readable in all states\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where the \\\"Activate Selected\\\" and \\\"Confirm Activation\\\" buttons showed black text on a black background when disabled on hover. The disabled state now uses a contrasting label.\"), mdx(\"p\", null, \"OE-4719 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Violations tab search filter returns correct results\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where filtering the Violations tab by a generated policy's rule key returned every policy in the rule set, and filtering by policy name could return no rows. The filter now matches on the actual policy name and rule key without over-matching or dropping rows.\"), mdx(\"p\", null, \"OE-4754 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"SoD rule set activation reports per-rule failures and runs atomically\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where a rule referencing an entitlement with no name aborted the whole activation with \\\"Operation Failed\\\" and left the catalog in a partial state. Rules needing attention are now reported per rule; name validation happens at save time; and activation runs in a single transaction. See \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/9-segregation-of-duties#rule-set-catalog\"\n  }, \"Rule Set Catalog\"), \".\"), mdx(\"p\", null, \"OE-4755 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Entitlements created during rule set activation carry the target managed system\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where entitlements created as a side effect of rule set activation did not carry the target managed system, so they appeared to belong to no system and did not show up in the expected views. See \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"../admin/7-access-cert/9-segregation-of-duties#rule-set-catalog\"\n  }, \"Rule Set Catalog\"), \".\"), mdx(\"p\", null, \"OE-4792 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"SoD detection sweep reports progress and no longer silently skips users\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed multiple silent failure modes in the SoD detection sweep: missing users were dropped without notice, one user's evaluation failure aborted remaining users, paging could skip users, and a locked run gave no indication. The sweep now reports users evaluated, violators found, entries cleared, and users skipped; single-user failures no longer abort the sweep; paging is deterministic; and a lock contention says so plainly.\"), mdx(\"p\", null, \"OE-4843 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Failed SoD evaluation no longer deletes the user's violation records\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where a failed evaluation \\u2014 caused by a broker or authorization-manager outage \\u2014 produced an empty violation set that was treated as \\\"no violations,\\\" silently deleting every affected user's records. Failed evaluations are now excluded from the stale-violation cleanup, and blocked Hard grants no longer produce active violation records.\"), mdx(\"p\", null, \"OE-4845 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\\"Allow selected\\\" hidden until exemption workflow is available\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where the Violations tab's \\\"Allow selected\\\" action referred to a policy exemption workflow that has not yet been reimplemented, so choosing it did nothing useful. The action is hidden until the exemption feature returns.\"), mdx(\"h3\", null, \"Access certification\"), mdx(\"p\", null, \"OE-4724 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Original reviewer retains campaign visibility after delegating\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where a reviewer was removed from the campaign's reviewer set once their delegate finished, losing visibility of the items they had kept for themselves. Delegation now adds the delegate without removing the original reviewer.\"), mdx(\"p\", null, \"OE-4725 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Certification reviewers see their campaigns in SelfService\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where users assigned as certification reviewers did not see any certifications listed under UAR in SelfService. Reviewers now see the certifications assigned to them in the SelfService UAR list.\"), mdx(\"p\", null, \"OE-4741 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Whole-row certify in UAR v2 runs the risk and SoD gate\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where certifying a grouped row in one click bypassed the risk and SoD check that individual-item certification runs. Whole-row certify now shows the reviewer any risk or SoD warnings before the certification proceeds.\"), mdx(\"h3\", null, \"Synchronization\"), mdx(\"p\", null, \"OE-4718 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"CSV sync no longer drops all rows due to inverted empty-row filter\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where the filter meant to skip blank rows was inverted, causing every populated row to be skipped and every sync to produce an empty batch.\"), mdx(\"p\", null, \"OE-4743 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Sync no longer drops records under concurrent writers\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where concurrent writers to the shared save buffer could overwrite each other, causing already-processed records never to reach the save call. Buffer access is now synchronised so every processed record is saved.\"), mdx(\"p\", null, \"OE-4750 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Sync report complete under concurrent writers\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where concurrent writes to the sync report could overwrite each other, leaving entries missing from the final report. Report writes are now safe under concurrent access.\"), mdx(\"p\", null, \"OE-4752 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Current State report complete on multi-node clusters\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where report chunks were written to local disk on whichever node produced them, so a report assembled on a different node was missing chunks. Report chunks now go to shared storage so any node can assemble the full report.\"), mdx(\"p\", null, \"OE-4757 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Sync audit correctly attributes actions to the initiating user\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where overlapping sync runs could record one user's identifier against another user's login. The audit now verifies the cached requester belongs to the current run before reusing it; a service account without a default login is recorded as \\\"UNDEFINED\\\" and the batch continues.\"), mdx(\"p\", null, \"OE-4768 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Unpaired sync records reported for all source types\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where unmatched source rows were only recorded in the sync report for CSV syncs; on connector, RDBMS, and LDAP sources they disappeared silently. Unpaired records are now reported for every source type with the specific reason they could not be matched.\"), mdx(\"h3\", null, \"Authentication and user management\"), mdx(\"p\", null, \"OE-4413 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Reset password methods appear in the dropdown\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where the Reset Password Methods dropdown under Administration \\u2192 System Configuration \\u2192 Password displayed no methods.\"), mdx(\"p\", null, \"OE-4721 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Forgot Password page shows available authentication options\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where the Forgot Password page loaded with an empty authentication section \\u2014 no security questions, no OTP options. Available options are now displayed.\"), mdx(\"p\", null, \"OE-4728 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Reconciliation runs when triggered from the console\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where reconciliation endpoints were not reachable, so reconciliation operations initiated from the console did not run.\"), mdx(\"p\", null, \"OE-4729 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Removing a phone number syncs to Google Workspace\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where removing a phone number in OpenIAM did not clear the number in Google \\u2014 the deleted value was still being sent. Removed phone numbers are now excluded from the update sent to Google.\"), mdx(\"p\", null, \"OE-4745 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Template saves succeed with supervisor and email field configurations\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed two issues: saving with a supervisor field could fail even when the supervisor was set correctly, and templates that excluded the email field threw an error on save from the Webconsole. When a required field is missing the error message now names the field.\"), mdx(\"p\", null, \"OE-4749 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"New Hire Approval workflow completes after upgrade\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where in-flight approvals stored using pre-2022 class names failed to deserialize after upgrade. The workflow engine now recognises the old class names and reads persisted data using the current data types, allowing in-flight approvals to continue and complete.\"), mdx(\"p\", null, \"OE-4790 \\u2013 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Forced first-login password change fires exactly once\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Fixed an issue where users completing the forced first-login password change were redirected back to the change-password screen on every subsequent login. The forced-change state is now cleared once the user has changed their password and successfully re-authenticated.\"), mdx(\"hr\", null), mdx(\"h2\", null, \"Minor updates\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Privacy Management module introduced: consent ledger, purpose registry, lawful authority governance, privacy event backbone, evidence capture, and a dedicated Privacy Administration Console.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Risk Factor Catalogue and per-population risk policies enable different scoring rules for different user groups.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Membership-Duration added as a built-in risk factor; Risk Score Configuration screen rebuilt to match the new model.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Side-by-side entitlement comparison available in certification reviewer views.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"PostgreSQL 18 validated; localization refreshed for nine languages including corrected Danish and Norwegian locale codes.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Comprehensive SoD stability fixes across violation tracking, rule set activation, detection sweep reliability, and catalog upload error handling.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Synchronization fixes: inverted row filter, concurrent write safety, multi-node report assembly, and audit attribution.\")));\n}\n;\nMDXContent.isMDXComponent = true;","tableOfContents":{"items":[{"url":"#new-features","title":"New features","items":[{"url":"#privacy-management","title":"Privacy Management"},{"url":"#identity-risk-management","title":"Identity risk management"},{"url":"#access-certification","title":"Access certification"},{"url":"#access-control","title":"Access control"}]},{"url":"#enhancements-and-tasks","title":"Enhancements and tasks","items":[{"url":"#identity-risk-management-1","title":"Identity risk management"},{"url":"#access-certification-1","title":"Access certification"},{"url":"#platform","title":"Platform"}]},{"url":"#bug-fixes","title":"Bug fixes","items":[{"url":"#segregation-of-duties","title":"Segregation of Duties"},{"url":"#access-certification-2","title":"Access certification"},{"url":"#synchronization","title":"Synchronization"},{"url":"#authentication-and-user-management","title":"Authentication and user management"}]},{"url":"#minor-updates","title":"Minor updates"}]},"parent":{"relativePath":"whatsnew/27-v2026.8.1.md"},"frontmatter":{"metaTitle":"New in v2026.8.1","metaDescription":"An overview of new features, enhancements, bug fixes, and updates introduced in OpenIAM v2026.8.1"}},"allMdx":{"edges":[{"node":{"fields":{"slug":"/admin","title":"Administration guide"}}},{"node":{"fields":{"slug":"/appendix","title":"Appendix"}}},{"node":{"fields":{"slug":"/changelog","title":"Change log"}}},{"node":{"fields":{"slug":"/connectorconfig","title":"IdM Connectors"}}},{"node":{"fields":{"slug":"/developerguide","title":"Developer Guide"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice","title":"End user guide for SelfService portal"}}},{"node":{"fields":{"slug":"/getting-started","title":"Getting Started"}}},{"node":{"fields":{"slug":"/","title":"Welcome to the OpenIAM Documentation"}}},{"node":{"fields":{"slug":"/installation","title":"Installing OpenIAM"}}},{"node":{"fields":{"slug":"/ssocatalog","title":"SSO Catalog"}}},{"node":{"fields":{"slug":"/troubleshooting","title":"FAQ / Troubleshooting"}}},{"node":{"fields":{"slug":"/whatsnew","title":"What's new in OpenIAM"}}},{"node":{"fields":{"slug":"/admin/0-login","title":"Logging in to the admin portal"}}},{"node":{"fields":{"slug":"/admin/1-exportimport","title":"Import / Export"}}},{"node":{"fields":{"slug":"/admin/1-usradmin","title":"User administration"}}},{"node":{"fields":{"slug":"/admin/10-password","title":"Password policy"}}},{"node":{"fields":{"slug":"/admin/10-consent-management","title":"Consent management"}}},{"node":{"fields":{"slug":"/admin/12-administration","title":"Administration"}}},{"node":{"fields":{"slug":"/admin/13-selfregistration","title":"Self-registration"}}},{"node":{"fields":{"slug":"/admin/15-audit","title":"Audit"}}},{"node":{"fields":{"slug":"/admin/14-Help.Desk.User.Profile.Protection","title":"HelpDesk profile protection"}}},{"node":{"fields":{"slug":"/admin/16-admin-pswd-change","title":"Password reset for administrator's account"}}},{"node":{"fields":{"slug":"/admin/17-services-manual-passwd-change","title":"Manual password update for OpenIAM services in RPM"}}},{"node":{"fields":{"slug":"/admin/18-services-passwd-change-k8","title":"Password update for OpenIAM services in Kubernetes"}}},{"node":{"fields":{"slug":"/admin/19-reports","title":"OpenIAM report services"}}},{"node":{"fields":{"slug":"/admin/20-virtual-tentant-by-org","title":"Enabling a virtual tenant by organization"}}},{"node":{"fields":{"slug":"/admin/21-graph-rebuild","title":"Rebuilding OpenIAM's in-memory authorization graph"}}},{"node":{"fields":{"slug":"/admin/22-token-session-util","title":"Session management utility for RPM"}}},{"node":{"fields":{"slug":"/admin/23-pbac","title":"Policy-based access control (PBAC)"}}},{"node":{"fields":{"slug":"/admin/2-authentication","title":"Authentication"}}},{"node":{"fields":{"slug":"/admin/3-authz","title":"Managing access"}}},{"node":{"fields":{"slug":"/admin/4-app-onboarding","title":"Application onboarding"}}},{"node":{"fields":{"slug":"/admin/6-requestapprov","title":"Requests / Approval"}}},{"node":{"fields":{"slug":"/admin/7-access-cert","title":"User access review"}}},{"node":{"fields":{"slug":"/admin/8-sso","title":"Federation / SSO to applications"}}},{"node":{"fields":{"slug":"/admin/9-r-Proxy","title":"Access gateway"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle","title":"Automated provisioning"}}},{"node":{"fields":{"slug":"/appendix/1-self-signedcert","title":"Generate Self-signed Cert"}}},{"node":{"fields":{"slug":"/appendix/2-openssl","title":"Install OpenSSL"}}},{"node":{"fields":{"slug":"/appendix/3-installopenldap","title":"Install OpenLDAP on Ubuntu"}}},{"node":{"fields":{"slug":"/appendix/4-prepforprod","title":"Prepare for Production"}}},{"node":{"fields":{"slug":"/changelog/11-Release-4.2.1.5","title":"Release 4.2.1.5"}}},{"node":{"fields":{"slug":"/changelog/12-Release-4.2.1.6","title":"Release 4.2.1.6"}}},{"node":{"fields":{"slug":"/changelog/14-Release-4.2.1.8","title":"Release 4.2.1.8"}}},{"node":{"fields":{"slug":"/changelog/16-Release-4.2.1.10","title":"Release 4.2.1.10"}}},{"node":{"fields":{"slug":"/changelog/13-Release-4.2.1.7","title":"Release 4.2.1.7"}}},{"node":{"fields":{"slug":"/changelog/15-Release-4.2.1.9","title":"Release 4.2.1.9"}}},{"node":{"fields":{"slug":"/changelog/18-Release-4.2.1.12","title":"Release 4.2.1.12"}}},{"node":{"fields":{"slug":"/changelog/17-Release-4.2.1.11","title":"Release 4.2.1.11"}}},{"node":{"fields":{"slug":"/changelog/19-Release-4.2.1.13","title":"Release 4.2.1.13"}}},{"node":{"fields":{"slug":"/changelog/20-Release-4.2.1.14","title":"Release 4.2.1.14"}}},{"node":{"fields":{"slug":"/changelog/21-Release-4.2.1.15","title":"Release 4.2.1.15"}}},{"node":{"fields":{"slug":"/changelog/22-v2026.1.1","title":"Changelog for v2026.1.1"}}},{"node":{"fields":{"slug":"/connectorconfig/2-configparam","title":"Connector parameters"}}},{"node":{"fields":{"slug":"/changelog/23-v2026.5.2","title":"Changelog for v2026.5.2"}}},{"node":{"fields":{"slug":"/connectorconfig/4-troubleshootingconnector","title":"Provisioning operations troubleshooting"}}},{"node":{"fields":{"slug":"/connectorconfig/JDBC","title":"JDBC connector"}}},{"node":{"fields":{"slug":"/connectorconfig/LDAP","title":"LDAP connector"}}},{"node":{"fields":{"slug":"/connectorconfig/SAPUME","title":"SAP UME connector"}}},{"node":{"fields":{"slug":"/connectorconfig/adp","title":"ADP connector"}}},{"node":{"fields":{"slug":"/connectorconfig/aerospike","title":"Aerospike connector"}}},{"node":{"fields":{"slug":"/connectorconfig/aws","title":"AWS connector"}}},{"node":{"fields":{"slug":"/connectorconfig/freeIPA","title":"FreeIPA connector"}}},{"node":{"fields":{"slug":"/connectorconfig/gsuite","title":"GSuite connector"}}},{"node":{"fields":{"slug":"/connectorconfig/linux","title":"Linux connector"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft","title":"Microsoft Application Connectors"}}},{"node":{"fields":{"slug":"/connectorconfig/oracle","title":"Oracle RDBMS connector"}}},{"node":{"fields":{"slug":"/connectorconfig/oracleebs","title":"Oracle EBS connector"}}},{"node":{"fields":{"slug":"/connectorconfig/postgresql","title":"PostgreSQL connector"}}},{"node":{"fields":{"slug":"/connectorconfig/rexx","title":"Rexx connector"}}},{"node":{"fields":{"slug":"/connectorconfig/salesforce","title":"Salesforce.com connector"}}},{"node":{"fields":{"slug":"/connectorconfig/sap","title":"SAP S/4 Hana connector"}}},{"node":{"fields":{"slug":"/connectorconfig/scim","title":"SCIM connector"}}},{"node":{"fields":{"slug":"/connectorconfig/workday","title":"Workday connector"}}},{"node":{"fields":{"slug":"/connectorconfig/scriptConnector","title":"Groovy Script connector"}}},{"node":{"fields":{"slug":"/connectorconfig/tableau","title":"Tableau connector"}}},{"node":{"fields":{"slug":"/developerguide/1-custom-css","title":"Customizing branding"}}},{"node":{"fields":{"slug":"/developerguide/10-OpenIAM-opensource-rep","title":"OpenIAM open source repository"}}},{"node":{"fields":{"slug":"/developerguide/11-groovy-scripts","title":"Groovy Script Management"}}},{"node":{"fields":{"slug":"/developerguide/2-api","title":"RESTful API"}}},{"node":{"fields":{"slug":"/developerguide/3-whitelisting","title":"Whitelisting packages"}}},{"node":{"fields":{"slug":"/developerguide/5-datamodel","title":"Data model"}}},{"node":{"fields":{"slug":"/developerguide/6-ide","title":"Script development using an IDE"}}},{"node":{"fields":{"slug":"/developerguide/9-synchronization","title":"Synchronization Scripts"}}},{"node":{"fields":{"slug":"/developerguide/4-scheduledtasks","title":"Batch/Scheduled tasks"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/1-login","title":"Logging in to SelfService portal"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/2-selfservice","title":"Operations via SelfService portal"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/4-createrequest","title":"Request management"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/7-useraccess","title":"User access rights"}}},{"node":{"fields":{"slug":"/getting-started/1-what_is_openiam","title":"What is OpenIAM?"}}},{"node":{"fields":{"slug":"/getting-started/2-productarchitecture","title":"Platform architecture"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/6-singlesignon","title":"Single sign-on"}}},{"node":{"fields":{"slug":"/getting-started/21-concepts","title":"Concepts"}}},{"node":{"fields":{"slug":"/getting-started/3-install_openiam","title":"Installing OpenIAM"}}},{"node":{"fields":{"slug":"/getting-started/31-planning-workforce","title":"Discovery questions"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding","title":"Application onboarding"}}},{"node":{"fields":{"slug":"/getting-started/5-connecting","title":"Connecting to an authoritative source"}}},{"node":{"fields":{"slug":"/getting-started/6-automatedprovisioning","title":"Automated user provisioning"}}},{"node":{"fields":{"slug":"/getting-started/7-selfservice-pswd","title":"SelfService password reset"}}},{"node":{"fields":{"slug":"/getting-started/8-openiam-with-IdP","title":"Integrating OpenIAM with your IdP"}}},{"node":{"fields":{"slug":"/getting-started/9-openiam-as-IdP","title":"Integrating OpenIAM as your IdP"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation","title":"Deploying via RPM on Linux"}}},{"node":{"fields":{"slug":"/installation/2-docker-installation","title":"Deploying via Docker"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation","title":"Deploying to Kubernetes"}}},{"node":{"fields":{"slug":"/installation/7-OpenShift-installation","title":"Deploying on OpenShift"}}},{"node":{"fields":{"slug":"/getting-started/99-multifactor-authentication","title":"Configuring multi-factor authentication"}}},{"node":{"fields":{"slug":"/installation/9-data_migration","title":"OpenIAM data migration"}}},{"node":{"fields":{"slug":"/installation/9-miscellaneous","title":"Miscellaneous related articles"}}},{"node":{"fields":{"slug":"/ssocatalog/AWS","title":"AWS SSO"}}},{"node":{"fields":{"slug":"/ssocatalog/Azure","title":"Azure SSO"}}},{"node":{"fields":{"slug":"/installation/8-sizing","title":"Sizing recommendations"}}},{"node":{"fields":{"slug":"/ssocatalog/Freshdesk","title":"Freshdesk SSO"}}},{"node":{"fields":{"slug":"/ssocatalog/Gsuite","title":"GSuite SSO"}}},{"node":{"fields":{"slug":"/ssocatalog/Office365","title":"Office365 SSO"}}},{"node":{"fields":{"slug":"/ssocatalog/Salesforce","title":"Salesforce.com"}}},{"node":{"fields":{"slug":"/ssocatalog/okta","title":"Okta SSO"}}},{"node":{"fields":{"slug":"/troubleshooting/cluster","title":"Cluster"}}},{"node":{"fields":{"slug":"/troubleshooting/docker","title":"Docker Swarm"}}},{"node":{"fields":{"slug":"/troubleshooting/environment","title":"Environment"}}},{"node":{"fields":{"slug":"/troubleshooting/connectors","title":"Connectors"}}},{"node":{"fields":{"slug":"/troubleshooting/operational","title":"Operational"}}},{"node":{"fields":{"slug":"/troubleshooting/v3_update","title":"Update from V3.X to V4.X"}}},{"node":{"fields":{"slug":"/whatsnew/1-v420","title":"New in v4.2.0.0"}}},{"node":{"fields":{"slug":"/whatsnew/10-v4218","title":"New in v4.2.1.8"}}},{"node":{"fields":{"slug":"/troubleshooting/rpm","title":"RPM"}}},{"node":{"fields":{"slug":"/whatsnew/11-v4219","title":"New in v4.2.1.9"}}},{"node":{"fields":{"slug":"/whatsnew/13-v42111","title":"New in v4.2.1.11"}}},{"node":{"fields":{"slug":"/whatsnew/14-v42112","title":"New in v4.2.1.12"}}},{"node":{"fields":{"slug":"/whatsnew/12-v42110","title":"New in v4.2.1.10"}}},{"node":{"fields":{"slug":"/whatsnew/15-v42113","title":"New in v4.2.1.13"}}},{"node":{"fields":{"slug":"/whatsnew/16-v42115","title":"New in v4.2.1.15"}}},{"node":{"fields":{"slug":"/whatsnew/17-v2026.1.1","title":"New in v2026.1.1"}}},{"node":{"fields":{"slug":"/whatsnew/18-v2026.2.1","title":"New in v2026.2.1"}}},{"node":{"fields":{"slug":"/whatsnew/16-v422","title":"New in v4.2.2"}}},{"node":{"fields":{"slug":"/whatsnew/19-v2026.3.2","title":"New in v2026.3.2"}}},{"node":{"fields":{"slug":"/whatsnew/18-v2026.3.1","title":"New in v2026.3.1"}}},{"node":{"fields":{"slug":"/whatsnew/20-v2026.3.3","title":"New in 2026.3.3"}}},{"node":{"fields":{"slug":"/whatsnew/20-v2026.4.1","title":"New in v2026.4.1"}}},{"node":{"fields":{"slug":"/whatsnew/21-v2026.4.2","title":"New in v2026.4.2"}}},{"node":{"fields":{"slug":"/whatsnew/22-v2026.5.2","title":"New in v2026.5.2"}}},{"node":{"fields":{"slug":"/whatsnew/23-v2026.6.1","title":"New in v2026.6.1"}}},{"node":{"fields":{"slug":"/whatsnew/7-v4215","title":"New in v4.2.1.5"}}},{"node":{"fields":{"slug":"/whatsnew/8-v4216","title":"New in v4.2.1.6"}}},{"node":{"fields":{"slug":"/whatsnew/9-v4217","title":"New in v4.2.1.7"}}},{"node":{"fields":{"slug":"/whatsnew/27-v2026.8.1","title":"New in v2026.8.1"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/1-createuser","title":"Creating a user"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/10-bulkoperations","title":"Bulk operations"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/11-bulkentitlements","title":"Bulk operations with entitlements"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/12-externaldelegation","title":"Organization level delegation"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/14-add-remove-entitlements","title":"Adding/Removing entitlements"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/15-rehireuserflow","title":"Rehire user flow"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/16-user-conversion","title":"User conversion"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/13-unlock-account","title":"Unlocking an account"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/17-newhireworkflow","title":"New hire workflow configuration"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/18-creating-new-dept-division","title":"Creating a new department or division"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/2-usertypes","title":"Custom user types"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/3-adminoperations","title":"Administrative actions on a User"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/5-finduser","title":"User search"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/6-relatedAccount","title":"Related accounts"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/7-customfields","title":"Custom fields"}}},{"node":{"fields":{"slug":"/admin/10-password/1-pswd-compromised","title":"Password breach detection"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/4-pageconfiguration","title":"Configuring page templates"}}},{"node":{"fields":{"slug":"/admin/12-administration/1-sysconfig","title":"System configuration"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/8-serviceaccounts","title":"Service accounts"}}},{"node":{"fields":{"slug":"/admin/12-administration/2-mail-management","title":"Mail management"}}},{"node":{"fields":{"slug":"/admin/12-administration/3-squence-generator","title":"Sequence generators"}}},{"node":{"fields":{"slug":"/admin/12-administration/4-otpconfig","title":"Configure OTP Provider"}}},{"node":{"fields":{"slug":"/admin/12-administration/5-links","title":"External links on login page"}}},{"node":{"fields":{"slug":"/admin/12-administration/7-reconciliationhistory","title":"Reconciliation history"}}},{"node":{"fields":{"slug":"/admin/12-administration/9-reindex_elasticsearch","title":"Reindex Opensearch"}}},{"node":{"fields":{"slug":"/admin/12-administration/99-heartbeat","title":"Heartbeat links"}}},{"node":{"fields":{"slug":"/admin/12-administration/6-languages","title":"Managing languages"}}},{"node":{"fields":{"slug":"/admin/15-audit/1-audit-events-interpret","title":"Audit events interpretation"}}},{"node":{"fields":{"slug":"/admin/15-audit/2-audit-log-export-connector","title":"Audit log export connector"}}},{"node":{"fields":{"slug":"/admin/12-administration/8-aboutopenIAM-page","title":"About OpenIAM Page"}}},{"node":{"fields":{"slug":"/admin/2-authentication/10-fidologin","title":"FIDO-2 authentication"}}},{"node":{"fields":{"slug":"/admin/2-authentication/1-auth-overview","title":"Configuring authentication"}}},{"node":{"fields":{"slug":"/admin/2-authentication/11-credentialprovider","title":"Credential provider"}}},{"node":{"fields":{"slug":"/admin/2-authentication/12-account-unlock","title":"Setting up account unlock"}}},{"node":{"fields":{"slug":"/admin/2-authentication/12-certificateauth","title":"Configuring certificate-based authentication"}}},{"node":{"fields":{"slug":"/admin/2-authentication/13-criiptoauth","title":"Criipto authentication"}}},{"node":{"fields":{"slug":"/admin/2-authentication/15-modernauth","title":"Microsoft Modern authentication"}}},{"node":{"fields":{"slug":"/admin/2-authentication/16-external-multiselect-auth","title":"External/multiselect authentication"}}},{"node":{"fields":{"slug":"/admin/2-authentication/14-duo-auth","title":"Duo authentication"}}},{"node":{"fields":{"slug":"/admin/2-authentication/2-auth-policy","title":"Authentication policy"}}},{"node":{"fields":{"slug":"/admin/2-authentication/2-delegatedauth","title":"Managed System authentication"}}},{"node":{"fields":{"slug":"/admin/2-authentication/21-dashboards","title":"Monitoring dashboards"}}},{"node":{"fields":{"slug":"/admin/2-authentication/3-passwordauth","title":"Password-based authentication"}}},{"node":{"fields":{"slug":"/admin/2-authentication/8-social","title":"Social authentication"}}},{"node":{"fields":{"slug":"/admin/2-authentication/9-adaptiveauth","title":"Adaptive authentication"}}},{"node":{"fields":{"slug":"/admin/23-pbac/1-policy-library","title":"Policy library"}}},{"node":{"fields":{"slug":"/admin/23-pbac/2-policy-editor","title":"Policy editor"}}},{"node":{"fields":{"slug":"/admin/2-authentication/7-otp","title":"OTP over SMS or E-mail"}}},{"node":{"fields":{"slug":"/admin/23-pbac/4-simulation","title":"Simulation"}}},{"node":{"fields":{"slug":"/admin/23-pbac/5-decision-log","title":"Decision log"}}},{"node":{"fields":{"slug":"/admin/23-pbac/3-enforcement-modes","title":"Enforcement modes"}}},{"node":{"fields":{"slug":"/admin/23-pbac/6-architecture-and-deployment","title":"Architecture and deployment"}}},{"node":{"fields":{"slug":"/admin/3-authz/10-accessright","title":"Access rights"}}},{"node":{"fields":{"slug":"/admin/3-authz/11-contentprovider","title":"Content provider"}}},{"node":{"fields":{"slug":"/admin/3-authz/14-menus","title":"Menus"}}},{"node":{"fields":{"slug":"/admin/3-authz/2-roles","title":"Managing roles"}}},{"node":{"fields":{"slug":"/admin/3-authz/1-overview","title":"Introduction to access control"}}},{"node":{"fields":{"slug":"/admin/3-authz/3-conflict-groups","title":"Conflict Groups"}}},{"node":{"fields":{"slug":"/admin/3-authz/3-groups","title":"Managing groups"}}},{"node":{"fields":{"slug":"/admin/3-authz/4-types","title":"Metadata types"}}},{"node":{"fields":{"slug":"/admin/3-authz/5-resources","title":"Managing resources"}}},{"node":{"fields":{"slug":"/admin/3-authz/8-accesstossoapps","title":"Access to SSO applications"}}},{"node":{"fields":{"slug":"/admin/3-authz/9-approvalflow","title":"Configuring approval workflows"}}},{"node":{"fields":{"slug":"/admin/4-app-onboarding/1-Automated-applications","title":"Connected applications"}}},{"node":{"fields":{"slug":"/admin/3-authz/6-organization","title":"Managing organizations"}}},{"node":{"fields":{"slug":"/admin/4-app-onboarding/2-Manual-applications","title":"Manual applications"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle/10-managedsystemsimulation","title":"Managed system simulation mode"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle/1-synch","title":"Configuring synchronization"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle/12-LDAP-managedsys-config","title":"LDAP Managed system configuration"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle/11-provisioning-config","title":"Configure Provisioning"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle/2-incrementalsynch","title":"Incremental synchronization"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle/3-recon","title":"Configure reconciliation"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle/4-birthright","title":"Birthright access"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle/6-managedsystem-config","title":"Managed system configuration"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle/5-recon-groovy","title":"Groovy Scripts for Reconciliation"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle/8-importentitlements","title":"Import entitlements"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle/9-importorganization","title":"Import Organizations"}}},{"node":{"fields":{"slug":"/admin/6-requestapprov/1-application-category","title":"Application categories"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/9-orphanmanagement","title":"Orphan management"}}},{"node":{"fields":{"slug":"/admin/6-requestapprov/2-approval-flow","title":"Approval flow"}}},{"node":{"fields":{"slug":"/admin/6-requestapprov/3-manualTasks","title":"Manual tasks"}}},{"node":{"fields":{"slug":"/admin/6-requestapprov/4-post-request","title":"After request has been approved"}}},{"node":{"fields":{"slug":"/admin/6-requestapprov/7-questionnaire","title":"Questionnaire"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/1-entitlmentcert","title":"Entitlement based certification"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/10-mitigation-controls","title":"Mitigation controls for SoD"}}},{"node":{"fields":{"slug":"/admin/6-requestapprov/5-approve-by-email","title":"Approving requests via Email"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/2-risk-event-driven-cert","title":"Risk driven certification"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/2-risk-recompute-scale","title":"Risk score recomputation at scale"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/2-risk-factor-config","title":"Risk score configuration"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/2-usercert","title":"User based review"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/2-behavioural-risk-score","title":"Behavioural risk score"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/3-certification-reporting","title":"Certification reporting"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/4-bulk-approval","title":"Allow bulk approval"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/4-membership-tags","title":"Membership tags"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/5-delete-campaign","title":"Deleting an access certification campaign"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/6-campaign-database","title":"Access certification campaigns as database objects"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/7-expiration-policy","title":"Expiration policy"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/9-segregation-of-duties","title":"Segregation of Duties (SoD) policies"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/thesaurus","title":"Access Certification Thesaurus"}}},{"node":{"fields":{"slug":"/admin/8-sso/1-saml","title":"Add SAML SP to OpenIAM"}}},{"node":{"fields":{"slug":"/admin/8-sso/2-oauth2","title":"oAuth 2.0"}}},{"node":{"fields":{"slug":"/admin/8-sso/3-oidc","title":"OpenID Connect"}}},{"node":{"fields":{"slug":"/admin/8-sso/5-auth_scopes","title":"OpenIAM oAuth scopes"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/8-multiple-reviwer-campaigns","title":"Multi-reviewer user access review campaigns"}}},{"node":{"fields":{"slug":"/admin/9-r-Proxy/2-headerinj","title":"Header Injection"}}},{"node":{"fields":{"slug":"/admin/9-r-Proxy/3-urlrewriting","title":"URL Rewriting"}}},{"node":{"fields":{"slug":"/admin/9-r-Proxy/6-example","title":"Examples"}}},{"node":{"fields":{"slug":"/admin/9-r-Proxy/7-rProxy-loadbalancer","title":"Reverse Proxy with Load Balancer"}}},{"node":{"fields":{"slug":"/admin/9-r-Proxy/1-formfill","title":"Form Fill"}}},{"node":{"fields":{"slug":"/admin/9-r-Proxy/8-kerberos","title":"Setting up Kerberos via rProxy"}}},{"node":{"fields":{"slug":"/admin/9-r-Proxy/9-directive-reference","title":"mod_openiam Directive Reference"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/11-campaign-dashboard","title":"Campaign dashboard"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/1-powershellconnectorinstallation","title":"Installing PowerShell connectors"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/10-winlocal","title":"WinLocal OpenIAM connector"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/12-WindowsPasswordFilter","title":"AD Password Filter"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/12-dynamics365FO","title":"Dynamics365 Finance&Operations connector"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/13-successfactors","title":"SuccessFactors connector"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/14-psgraph","title":"Microsoft Graph PowerShell connector"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/15-powershell-generic","title":"Building a custom PowerShell connector for OpenIAM"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/2-powershellconnectorsusage","title":"Using PowerShell connectors"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/3-powershellconnectorupdate","title":"Updating PowerShell connectors"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/5-azuread","title":"Entra ID/O365 connector"}}},{"node":{"fields":{"slug":"/admin/7-access-cert/12-campaign-preview","title":"Campaign preview"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/6-exchange","title":"Exchange connector"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/7-azuredevops","title":"Azure DevOps connector"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/8-dynamics365","title":"Dynamics365 connector"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/9-sqlserver","title":"Microsoft SQL Server connector"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/16-teams","title":"Microsoft Teams connector"}}},{"node":{"fields":{"slug":"/connectorconfig/scriptConnector/connector-request-template","title":"OpenIAM connector request template"}}},{"node":{"fields":{"slug":"/developerguide/2-api/1-postman","title":"Getting started with Postman"}}},{"node":{"fields":{"slug":"/developerguide/1-custom-css/1-customcss","title":"Creating custom CSS"}}},{"node":{"fields":{"slug":"/developerguide/1-custom-css/2-cssexamples","title":"CSS file examples"}}},{"node":{"fields":{"slug":"/developerguide/2-api/2-python","title":"Getting started with Python"}}},{"node":{"fields":{"slug":"/developerguide/2-api/3-java","title":"Getting started with Java"}}},{"node":{"fields":{"slug":"/developerguide/4-sheduledtasks/1-provision-on-date","title":"Provision/Deprovision on date"}}},{"node":{"fields":{"slug":"/developerguide/4-sheduledtasks/2-access-certification-reminder","title":"Notification reminders for approvers"}}},{"node":{"fields":{"slug":"/developerguide/5-datamodel/1-usermodel","title":"User data model"}}},{"node":{"fields":{"slug":"/developerguide/5-datamodel/2-rbacmodel","title":"Access control model"}}},{"node":{"fields":{"slug":"/developerguide/8-api/access-certification","title":"/webconsole - access-certification"}}},{"node":{"fields":{"slug":"/developerguide/8-api/access-right","title":"/webconsole - access-right"}}},{"node":{"fields":{"slug":"/developerguide/8-api/approver-association","title":"/webconsole - approver-association"}}},{"node":{"fields":{"slug":"/connectorconfig/scriptConnector/GroovyScriptConnector","title":"Configuring Groovy Script connector"}}},{"node":{"fields":{"slug":"/developerguide/8-api/audit-log","title":"/webconsole - audit-log"}}},{"node":{"fields":{"slug":"/developerguide/8-api/authentication-grouping","title":"/webconsole - authentication-grouping"}}},{"node":{"fields":{"slug":"/developerguide/8-api/batch","title":"/webconsole - batch"}}},{"node":{"fields":{"slug":"/developerguide/8-api/challenge-response","title":"/webconsole - challenge-response"}}},{"node":{"fields":{"slug":"/developerguide/8-api/auth-provider","title":"/webconsole - auth-provider"}}},{"node":{"fields":{"slug":"/developerguide/8-api/content-provider","title":"/webconsole - content-provider"}}},{"node":{"fields":{"slug":"/developerguide/8-api/connector","title":"/webconsole - connector"}}},{"node":{"fields":{"slug":"/developerguide/8-api/elastic-search","title":"/webconsole - elastic-search"}}},{"node":{"fields":{"slug":"/developerguide/8-api/email","title":"/webconsole - email"}}},{"node":{"fields":{"slug":"/developerguide/8-api/field","title":"/webconsole - field"}}},{"node":{"fields":{"slug":"/developerguide/8-api/groovy-manager","title":"/webconsole - groovy-manager"}}},{"node":{"fields":{"slug":"/developerguide/8-api/idp-oauth","title":"/idp - idp-oauth"}}},{"node":{"fields":{"slug":"/developerguide/8-api/group","title":"/webconsole - group"}}},{"node":{"fields":{"slug":"/developerguide/8-api/idp-rest","title":"/idp - idp-rest"}}},{"node":{"fields":{"slug":"/developerguide/8-api/managed-system","title":"/webconsole - managed-system"}}},{"node":{"fields":{"slug":"/developerguide/8-api/menu","title":"/webconsole - menu"}}},{"node":{"fields":{"slug":"/developerguide/8-api/metadata","title":"/webconsole - metadata"}}},{"node":{"fields":{"slug":"/developerguide/8-api/it-policy","title":"/webconsole - it-policy"}}},{"node":{"fields":{"slug":"/developerguide/8-api/oauth","title":"/webconsole - oauth"}}},{"node":{"fields":{"slug":"/developerguide/8-api/organization-type","title":"/webconsole - organization-type"}}},{"node":{"fields":{"slug":"/developerguide/8-api/organization","title":"/webconsole - organization"}}},{"node":{"fields":{"slug":"/developerguide/8-api/page-template","title":"/webconsole - page-template"}}},{"node":{"fields":{"slug":"/developerguide/8-api/property-value","title":"/webconsole - property-value"}}},{"node":{"fields":{"slug":"/developerguide/8-api/resource-type","title":"/webconsole - resource-type"}}},{"node":{"fields":{"slug":"/developerguide/8-api/report","title":"/webconsole - report"}}},{"node":{"fields":{"slug":"/developerguide/8-api/resource","title":"/webconsole - resource"}}},{"node":{"fields":{"slug":"/developerguide/8-api/role","title":"/webconsole - role"}}},{"node":{"fields":{"slug":"/developerguide/8-api/policy","title":"/webconsole - policy"}}},{"node":{"fields":{"slug":"/developerguide/8-api/sync-rest","title":"/webconsole - sync-rest"}}},{"node":{"fields":{"slug":"/developerguide/8-api/ui-theme","title":"/webconsole - ui-theme"}}},{"node":{"fields":{"slug":"/developerguide/8-api/system","title":"/webconsole - system"}}},{"node":{"fields":{"slug":"/developerguide/8-api/uri-pattern","title":"/webconsole - uri-pattern"}}},{"node":{"fields":{"slug":"/developerguide/8-api/user","title":"/webconsole - user"}}},{"node":{"fields":{"slug":"/developerguide/9-synchronization/1-autoprov","title":"Automated provisioning Scripts"}}},{"node":{"fields":{"slug":"/developerguide/8-api/sync-config","title":"/webconsole - sync-config"}}},{"node":{"fields":{"slug":"/developerguide/9-synchronization/2-import","title":"Import from application"}}},{"node":{"fields":{"slug":"/developerguide/9-synchronization/3-importing_groups","title":"Importing groups from application"}}},{"node":{"fields":{"slug":"/developerguide/9-synchronization/4-relations-with-manager","title":"Populating a manager"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/2-selfservice/1-forgotpassword","title":"Forgot password"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/2-selfservice/3-changepassword","title":"Updating your password"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/2-selfservice/4-outofoffice","title":"Out of office assistant"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/2-selfservice/2-updateprofile","title":"Updating user profile"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/2-selfservice/5-forgotusername","title":"Forgot username"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/2-selfservice/6-updatesecquestions","title":"Updating security questions"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/4-createrequest/1-servicecatalog","title":"Requesting access via catalog"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/4-createrequest/11-accessprofiles","title":"Access profiles"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/4-createrequest/12-bulkupload","title":"Uploading users in bulk"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/4-createrequest/10-positionchange","title":"Position change request"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/4-createrequest/5-approverequest","title":"Approving requests"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/4-createrequest/2-jobprofile","title":"Requesting access from profile"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/4-createrequest/13-workflowsoverview","title":"Workflows Overview"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/4-createrequest/6-requestadministration","title":"Request administration"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/4-createrequest/8-newgroup","title":"Creating a group request"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/4-createrequest/9-newuser","title":"Creating a new user"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/7-useraccess/1-viewmyaccess","title":"View my access"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/7-useraccess/2-directreports","title":"View direct reports"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/4-createrequest/7-requesthistory","title":"Requests history"}}},{"node":{"fields":{"slug":"/getting-started/31-planning-workforce/1-designrole","title":"Designing business roles"}}},{"node":{"fields":{"slug":"/getting-started/31-planning-workforce/2-openiam-access-role","title":"Designing access roles"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/1-connect","title":"Deploying and registering connectors"}}},{"node":{"fields":{"slug":"/getting-started/31-planning-workforce/3-connector-planning","title":"Connector requirements"}}},{"node":{"fields":{"slug":"/end-user-guide-for-selfservice/7-useraccess/3-UAR-in-Self-Service","title":"User access review module in SelfService"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/2-importentitlements","title":"Importing entitlements"}}},{"node":{"fields":{"slug":"/getting-started/6-automatedprovisioning/1-jml","title":"Joiners, movers, leavers processes"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/3-importusers-and-entitlements","title":"Importing users and their entitlement memberships"}}},{"node":{"fields":{"slug":"/getting-started/6-automatedprovisioning/2-tutorial","title":"Automated provisioning tutorial"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/1-singlenode","title":"Single VM Install"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/10-ha-rpm","title":"High availability (HA) deployment using RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/11-configuration-options","title":"Configuration options in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/2-rproxy","title":"r-Proxy installation in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/4-backup","title":"RPM backup / recovery"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/5-ports","title":"Deployment architecture in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-migrating-non-production-to-production-environment","title":"Migrating non-production to production environment in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/12-migrating-onpremises-to-cloud","title":"Migrating OpenIAM from on-premises installation to a cloud-based infrastructure"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/7-remoteDB","title":"Installing OpenIAM with a remote database in RPM environment"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/8-ssl","title":"Configuring HTTPS in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/9-rabbitssl","title":"Enable TLS for RabbitMQ in RPM"}}},{"node":{"fields":{"slug":"/installation/2-docker-installation/1-https","title":"Configuring HTTPS on Docker"}}},{"node":{"fields":{"slug":"/installation/2-docker-installation/3-upgrading","title":"Upgrading OpenIAM in Docker environment"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading","title":"Upgrading OpenIAM in RPM"}}},{"node":{"fields":{"slug":"/installation/2-docker-installation/4-YAML-files","title":"Docker YAML files"}}},{"node":{"fields":{"slug":"/installation/2-docker-installation/5-docker-swarm-backup","title":"Backup / restore in Docker Swarm"}}},{"node":{"fields":{"slug":"/installation/2-docker-installation/2-Configuration-options","title":"Configuration options in Docker"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/1-ssl","title":"Configuring HTTPS in Kubernetes"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/10-backup-and-restoration","title":"Backup and restoration procedure in Kubernetes environment"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/11-common-scenario","title":"Installing OpenIAM in Kubernetes environment"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/12-vault-migration-fromRPM-toK8","title":"Migration of Vault from RPM-based cluster to Kubernetes-based OpenIAM cluster"}}},{"node":{"fields":{"slug":"/installation/2-docker-installation/6-externalDB","title":"Installing OpenIAM with a remote database in Docker"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/3-depl-without-terraform","title":"Deploying OpenIAM on Kubernetes using Helm"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/4-RabbitMQ-TLS","title":"RabbitMQ TLS directory in Kubernetes"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/5-upgrading","title":"Upgrading OpenIAM in Kubernetes environment"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/2-deployment-with-terraform","title":"Deploying OpenIAM with Terraform"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/7-useal-keys-restoration","title":"Backing up and restoring the vault unseal keys in Kubernetes"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/8-AKS_with_ext_MSSQL","title":"Deploying OpenIAM on AKS (Kubernetes) with an external MSSQL database"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/9-remoteDB","title":"Installing OpenIAM with a remote database in Kubernetes environment"}}},{"node":{"fields":{"slug":"/installation/7-OpenShift-installation/1-create-cluster","title":"Creating an OpenShift cluster on Azure"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/6-k8platforms","title":"Kubernetes Platforms"}}},{"node":{"fields":{"slug":"/installation/7-OpenShift-installation/2-connect-to-cluster","title":"Connect to OpenShift cluster on Azure"}}},{"node":{"fields":{"slug":"/installation/7-OpenShift-installation/4-some-descriptions-helm","title":"Memory requirements for OpenShift deployment with Helm"}}},{"node":{"fields":{"slug":"/installation/7-OpenShift-installation/5-localhost-dev-cluster","title":"Localhost development cluster"}}},{"node":{"fields":{"slug":"/installation/7-OpenShift-installation/6-deploy-from-windows","title":"Deploy OpenIAM to OpenShift cluster with Helm (from Windows)"}}},{"node":{"fields":{"slug":"/installation/7-OpenShift-installation/3-deploy-OpenIAM-helm","title":"Deploy OpenIAM to OpenShift cluster with Helm"}}},{"node":{"fields":{"slug":"/installation/8-sizing/2-medium-k8","title":"Medium Enterprise - K8"}}},{"node":{"fields":{"slug":"/installation/8-sizing/1-small-k8","title":"Small Enterprise - K8"}}},{"node":{"fields":{"slug":"/installation/9-data_migration/1-migrating_ES_Docker","title":"Verifying and migrating Elasticsearch data in Docker-based OpenIAM cluster"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/13-image-migration-guide","title":"Image migration script"}}},{"node":{"fields":{"slug":"/installation/9-miscellaneous/01-log4j","title":"Log4j Vulnerability"}}},{"node":{"fields":{"slug":"/installation/9-miscellaneous/03-db-switch","title":"Change OpenIAM product database"}}},{"node":{"fields":{"slug":"/installation/9-miscellaneous/05-postgres-install","title":"Installing PostgreSQL 18"}}},{"node":{"fields":{"slug":"/installation/9-miscellaneous/04-compatibility","title":"Compatibility matrix"}}},{"node":{"fields":{"slug":"/installation/9-miscellaneous/02-hardening","title":"Securing your installation"}}},{"node":{"fields":{"slug":"/installation/99-miscellaneous/04-compatibility","title":"Compatibility Matrix"}}},{"node":{"fields":{"slug":"/troubleshooting/cluster/1-rabbitmq-reinit","title":"RabbitMQ cluster went out of order"}}},{"node":{"fields":{"slug":"/troubleshooting/cluster/2-rabbitmq-UI","title":"RabbitMQ is not reached from UI in RPM installations"}}},{"node":{"fields":{"slug":"/troubleshooting/connectors/sync-vs-async-source","title":"Synchronous vs. asynchronous synchronization source for connectors"}}},{"node":{"fields":{"slug":"/troubleshooting/docker/1-connectorlogs","title":"View container logs"}}},{"node":{"fields":{"slug":"/troubleshooting/docker/2-containersrestart","title":"Containers Restarting"}}},{"node":{"fields":{"slug":"/troubleshooting/cluster/3-Rabbitmq-connection-timeout","title":"RabbitMQ  connection timeout issue"}}},{"node":{"fields":{"slug":"/troubleshooting/docker/3-uninstall","title":"Remove an OpenIAM Docker Install"}}},{"node":{"fields":{"slug":"/troubleshooting/docker/4-troubleshooting-steps","title":"Troubleshooting steps in a container-based cluster"}}},{"node":{"fields":{"slug":"/troubleshooting/docker/5-log-checking-guide","title":"Docker log checking guide"}}},{"node":{"fields":{"slug":"/troubleshooting/environment/disableswap","title":"Disable swap"}}},{"node":{"fields":{"slug":"/troubleshooting/environment/memoryutili","title":"Check memory utilization"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/JDBC-connection-pool","title":"Increasing the JDBC connection pool size"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/access-forbidden","title":"Access Forbidden error"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/activationlink","title":"Error when sending activation link"}}},{"node":{"fields":{"slug":"/troubleshooting/environment/redismemory","title":"Redis memory utilization"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/audit-doc-timestamp","title":"Audit document timestamp issue"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/auth-manager","title":"Backend exception error when running authentication manager"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/debug-logs-CassandraJanusGraph","title":"Enabling and disabling debug logs for Cassandra and JanusGraph"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/database-reset","title":"Database reset"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/elasticsearch-readonly-state","title":"Elasticsearch read-only state"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/increasing-RAM","title":"Increasing memory for OpenIAM services"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/lackof_disk_space","title":"Running out of disk space"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/modifly_system_labels_and_messages","title":"Changing system labels and messages"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/my-application-page-selfservice","title":"Changing refresh time for My Applications page in SelfService"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/flyway_version","title":"Flyway version issue"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/pad-block-corrupted","title":"PAD Block Corrupted"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/remove-navigation-bar","title":"Removing menu items from top navigation bar"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/report-generation-issue","title":"Error during report generating in RPM installations"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/overriding-app-properties","title":"Overriding UI application properties"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/run_flyway_repair_mode","title":"Run Flyway in repair mode"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/resetting_passwords","title":"Resetting passwords"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/username_in_selfservice","title":"Username not shown in SelfService"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/workflow-variable-deserialization","title":"Requests fail to open after an upgrade with a deserialization error"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/unlocksysadmin","title":"Unlock sysadmin"}}},{"node":{"fields":{"slug":"/troubleshooting/rpm/failed-dependencies","title":"Failed dependencies"}}},{"node":{"fields":{"slug":"/troubleshooting/rpm/trobleshooting_guide","title":"Troubleshooting guide for RPM"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/4-pageconfiguration/1-userpage","title":"Configuring user page templates"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/4-pageconfiguration/2-customuserpage","title":"Creating more custom user edit pages"}}},{"node":{"fields":{"slug":"/admin/1-usradmin/4-pageconfiguration/4-customtemplates","title":"Custom form templates"}}},{"node":{"fields":{"slug":"/admin/12-administration/1-sysconfig/1-system","title":"System tab"}}},{"node":{"fields":{"slug":"/troubleshooting/operational/access-after-migration","title":"Access problem after migrating OpenIAM"}}},{"node":{"fields":{"slug":"/admin/12-administration/1-sysconfig/2-regex-validation","title":"Validation regular expressions"}}},{"node":{"fields":{"slug":"/admin/12-administration/1-sysconfig/3-UI","title":"UI tab"}}},{"node":{"fields":{"slug":"/admin/12-administration/1-sysconfig/4-workflow","title":"Workflow tab"}}},{"node":{"fields":{"slug":"/admin/12-administration/1-sysconfig/6-password","title":"Password tab"}}},{"node":{"fields":{"slug":"/admin/12-administration/1-sysconfig/7-authentication","title":"Authentication tab"}}},{"node":{"fields":{"slug":"/admin/12-administration/1-sysconfig/8-auditeventstosyslog","title":"Exporting audit events to syslogs"}}},{"node":{"fields":{"slug":"/admin/12-administration/1-sysconfig/9-health-checks","title":"Configuring health checks for managed systems"}}},{"node":{"fields":{"slug":"/admin/12-administration/2-mail-management/1-emailtemplates","title":"Email templates"}}},{"node":{"fields":{"slug":"/admin/12-administration/1-sysconfig/5-organization-tab","title":"Organization tab"}}},{"node":{"fields":{"slug":"/admin/12-administration/2-mail-management/3-multilanguagemail","title":"Multilanguage emails"}}},{"node":{"fields":{"slug":"/admin/12-administration/2-mail-management/4-mail-via-azure","title":"Mailbox configuration via Azure application"}}},{"node":{"fields":{"slug":"/admin/12-administration/2-mail-management/6-email-template-variables","title":"Email template variables reference"}}},{"node":{"fields":{"slug":"/admin/12-administration/2-mail-management/5-alert-notifications","title":"Configuring alert notifications"}}},{"node":{"fields":{"slug":"/admin/2-authentication/8-social/1-googlesociallogin","title":"Google Social Login"}}},{"node":{"fields":{"slug":"/admin/2-authentication/8-social/2-facebooksociallogin","title":"Facebook Social Login"}}},{"node":{"fields":{"slug":"/admin/2-authentication/8-social/4-appleidsociallogin","title":"AppleID Social Login"}}},{"node":{"fields":{"slug":"/admin/12-administration/2-mail-management/2-smtpconfig","title":"Mailbox Configuration"}}},{"node":{"fields":{"slug":"/admin/3-authz/14-menus/1-enduseraccess","title":"End-user access roles"}}},{"node":{"fields":{"slug":"/admin/3-authz/14-menus/2-adminaccess","title":"Admin access role"}}},{"node":{"fields":{"slug":"/admin/3-authz/14-menus/4-Config-Lhand-menu-SS-MyInfo","title":"Configurable left-hand menu in SelfService 'My Info' page"}}},{"node":{"fields":{"slug":"/admin/3-authz/2-roles/1-role-types","title":"Types of roles existing in OpenIAM"}}},{"node":{"fields":{"slug":"/admin/3-authz/14-menus/3-FAQ","title":"FAQs about menus and their use"}}},{"node":{"fields":{"slug":"/admin/2-authentication/8-social/3-linkedinsociallogin","title":"LinkedIn Social Login"}}},{"node":{"fields":{"slug":"/admin/3-authz/2-roles/2-createrole","title":"Create role"}}},{"node":{"fields":{"slug":"/admin/3-authz/2-roles/3-findrole","title":"Finding an existing role"}}},{"node":{"fields":{"slug":"/admin/3-authz/2-roles/5-importingroles","title":"Importing roles"}}},{"node":{"fields":{"slug":"/admin/3-authz/3-groups/1-create-group","title":"Creating a group"}}},{"node":{"fields":{"slug":"/admin/4-app-onboarding/2-Manual-applications/1-reg-applications","title":"Register applications"}}},{"node":{"fields":{"slug":"/admin/5-lifecycle/11-provisioning-config/1-prepost-processor","title":"Pre/PostProcessor"}}},{"node":{"fields":{"slug":"/admin/8-sso/2-oauth2/1-Auth-code-grand","title":"Authorization code grant type"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/10-winlocal/1-winlocalv4","title":"Version 4"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/10-winlocal/2-winlocalv5","title":"Version 5"}}},{"node":{"fields":{"slug":"/developerguide/2-api/1-postman/1-createauthprovider","title":"Create OpenIAM Provider for Postman"}}},{"node":{"fields":{"slug":"/developerguide/2-api/1-postman/2-postmanconfig","title":"Create Postman collection"}}},{"node":{"fields":{"slug":"/developerguide/2-api/1-postman/4-JWT-tokens","title":"Getting started with JWT tokens in Postman"}}},{"node":{"fields":{"slug":"/developerguide/2-api/1-postman/5-postman-links","title":"Postman API documentation links"}}},{"node":{"fields":{"slug":"/developerguide/2-api/1-postman/6-example","title":"Client credentials flow with a defined scope in Postman"}}},{"node":{"fields":{"slug":"/developerguide/2-api/1-postman/3-add-request","title":"Define an API request in Postman"}}},{"node":{"fields":{"slug":"/developerguide/2-api/2-python/2-grantinguathz","title":"Granting authorization to the API with Python"}}},{"node":{"fields":{"slug":"/developerguide/2-api/2-python/1-createauthprovider","title":"Create OpenIAM oAuth provider in Python"}}},{"node":{"fields":{"slug":"/developerguide/2-api/2-python/3-api-call-examples","title":"API calls examples in Python"}}},{"node":{"fields":{"slug":"/developerguide/2-api/2-python/4-enabling-disabling-user","title":"Enabling/Disabling a user with API calls examples in Python"}}},{"node":{"fields":{"slug":"/developerguide/2-api/2-python/5-object-oriented-impl-example","title":"Object oriented implementation for REST API in Python"}}},{"node":{"fields":{"slug":"/developerguide/2-api/2-python/6-OTP-verification","title":"OTP Verification in Python"}}},{"node":{"fields":{"slug":"/developerguide/2-api/3-java/1-createauthprovider","title":"Create OpenIAM Provider"}}},{"node":{"fields":{"slug":"/developerguide/2-api/3-java/2-grantauthz","title":"Granting authorization to the API with Java"}}},{"node":{"fields":{"slug":"/developerguide/2-api/3-java/4-calls-examples","title":"API calls examples in Java"}}},{"node":{"fields":{"slug":"/developerguide/2-api/3-java/3-creating-searching-users","title":"Creating and searching a user with API call in Java"}}},{"node":{"fields":{"slug":"/developerguide/2-api/3-java/5-enabling-disabling-users","title":"Enabling/Disabling a user with API calls examples in Java"}}},{"node":{"fields":{"slug":"/developerguide/9-synchronization/1-autoprov/1-newhires","title":"New hires"}}},{"node":{"fields":{"slug":"/developerguide/9-synchronization/2-import/3-azuread","title":"Entra ID"}}},{"node":{"fields":{"slug":"/developerguide/9-synchronization/2-import/6-importroles","title":"Import Roles"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/1-connect/2-rpm","title":"Connectors via RPM"}}},{"node":{"fields":{"slug":"/admin/8-sso/1-saml/1-jit-provisioning","title":"Just-in-time Provisioning"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/1-connect/3-docker","title":" Connectors via Docker"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/1-connect/4-k8","title":" Connectors via Kubernetes"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/2-importentitlements/1-configuring-synch","title":"Configuring synchronization for importing entitlements"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/2-importentitlements/2-transformationscripts","title":"Transformation scripts"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/2-importentitlements/3-troubleshooting","title":"Troubleshooting"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/3-importusers-and-entitlements/2-transformationscripts","title":"Transformation scripts"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/3-importusers-and-entitlements/3-common-questions","title":"Common questions"}}},{"node":{"fields":{"slug":"/getting-started/6-automatedprovisioning/2-tutorial/1-provisioningCSV","title":"Creating a synchronization configuration for the source"}}},{"node":{"fields":{"slug":"/getting-started/6-automatedprovisioning/2-tutorial/2-policymap","title":"Policy map"}}},{"node":{"fields":{"slug":"/getting-started/6-automatedprovisioning/2-tutorial/4-birthright","title":"New hire"}}},{"node":{"fields":{"slug":"/getting-started/6-automatedprovisioning/2-tutorial/5-transfer","title":"Transfer"}}},{"node":{"fields":{"slug":"/getting-started/6-automatedprovisioning/2-tutorial/6-termination","title":"Terminations"}}},{"node":{"fields":{"slug":"/getting-started/6-automatedprovisioning/2-tutorial/3-creatingrole","title":"Creating role"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/1-singlenode/1-rpm-with-internet","title":"Installation with Internet access"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/1-singlenode/2-rpm-no-internet","title":"Installation without Internet access"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/1-singlenode/3-nonroot-partition","title":"Installing OpenIAM on a non-root partition"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/5-ports/1-one-node","title":"Single node deployment"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/5-ports/2-three-node","title":"Three node cluster"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/1-databasemigration","title":"Database migration from version 3.X to 4.X"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/10-upgrading-2026-4-2","title":"Upgrading OpenIAM to v.2026.4.2 in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/2-upgradingto-42110","title":"Upgrading from version 4.2.1.5-4.2-4.2.1.8 to version 4.2.1.10 in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/3-upgradingto-42111","title":"Upgrading from versions 4.2.1.9-4.2.1.10 to version 4.2.1.11 in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/4-migrating-index-data","title":"Migration of index data from older ElasticSearch versions to newer one"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/5-infrastructure_upgrade","title":"Infrastructure upgrade"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/3-importusers-and-entitlements/1-config-synch","title":"Configuring synchronization for importing users and their entitlement memberships"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/6-infra-upgrade-42113","title":"Infrastructure upgrade in v4.2.1.13"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/7-upgradingto-422","title":"Upgrading OpenIAM from versions 4.2.1.x to 2026.6.1 in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/4-upgradingto-42112","title":"Upgrading from versions 4.2.1.x to version 4.2.1.12 in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/8-upgrade2026.5.2","title":"Upgrading notes for v.2026.5.2 in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/8-upgrade2026.6.1","title":"Upgrading notes for v.2026.6.1 in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/8-upgrading-2026-2-1","title":"Upgrading OpenIAM to v.2026.2.1 in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/8-upgrading-2026-3-1","title":"Upgrading OpenIAM to v.2026.3.1 in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/8-upgrading-2026-3-2","title":"Upgrading OpenIAM to v.2026.3.2 in RPM"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/7-remoteDB/1-oracle","title":"Installing OpenIAM with a remote Oracle database in RPM environment"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/7-remoteDB/2-postgres","title":"Installing OpenIAM with a remote Postgres database in RPM environment"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/7-remoteDB/3-MSSQL","title":"Installing OpenIAM with a remote MSSQL database in RPM environment"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/9-422-changes","title":"Known issues related to upgrading from 4.2.1.x to 2026.4.1 version"}}},{"node":{"fields":{"slug":"/installation/2-docker-installation/3-upgrading/1-upgrade-4219","title":"Upgrade from version 4.2.1.5-4.2.1.8 to version 4.2.1.10 in Docker"}}},{"node":{"fields":{"slug":"/installation/2-docker-installation/3-upgrading/3-upgrade-42111","title":"Upgrade from version 4.2.1.10 to version 4.2.1.11 in Docker"}}},{"node":{"fields":{"slug":"/installation/1-rpm-installation/6-upgrading/5-upgradingto-42115","title":"Upgrading from versions 4.2.1.x to version 4.2.1.15 in RPM"}}},{"node":{"fields":{"slug":"/installation/2-docker-installation/3-upgrading/4-upgrade-42115","title":"Upgrade from version 4.2.1.x to version 4.2.1.15 in Docker"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/5-upgrading/3-upgrade-42113k8-rabbitmq","title":"Upgrading from version below 4.2.1.8 to version 4.2.1.13 in Kubernetes environment"}}},{"node":{"fields":{"slug":"/installation/2-docker-installation/3-upgrading/2-upgrade-42110","title":"Upgrade from version 4.2.1.9 to version 4.2.1.10 in Docker"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/5-upgrading/4-upgrade-42115k8","title":"Upgrading from versions 4.2.1.x to version 4.2.1.15 in Kubernetes environment"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/5-upgrading/5-upgrade-42112k8","title":"Upgrading from version 4.2.1.x to version 4.2.1.12 in Kubernetes environment"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/5-upgrading/6-upgrade-422k8","title":"Upgrading from version 4.2.1.x to version 4.2.2 in Kubernetes environment"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/5-upgrading/7-upg-notes20206.5.2","title":"Upgrading notes for v.2026.5.2 in Kubernetes environment"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/6-k8platforms/1-gce","title":"GCE Kubernetes guide"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/6-k8platforms/2-aws","title":"AWS Kubernetes guide"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/6-k8platforms/3-helm","title":"Private Kubernetes Cluster using Helm"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/6-k8platforms/4-azure","title":"Azure Kubernetes Guide"}}},{"node":{"fields":{"slug":"/installation/6-kubernetes-installation/5-upgrading/8-upg-notes2026.6.1","title":"Upgrading notes for v.2026.6.1 in Kubernetes environment"}}},{"node":{"fields":{"slug":"/developerguide/9-synchronization/2-import/ldap/1-ldapvalidation","title":"Synchronization Validation Script"}}},{"node":{"fields":{"slug":"/developerguide/9-synchronization/2-import/ldap/2-ldapsynchusers","title":"LDAP User Synchronization Script"}}},{"node":{"fields":{"slug":"/developerguide/9-synchronization/2-import/ldap/3-ldapattributeslists","title":"LDAP Attribute list for User Synchronization"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/2-importentitlements/2-transformationscripts/1-ADgroup-transformation","title":"Sample transformation script for AD groups"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/2-importentitlements/2-transformationscripts/2-csv-transformation","title":"Sample transformation script for a CSV file"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/3-importusers-and-entitlements/2-transformationscripts/4-csv-users-entitlements","title":"Sample transformation script for a CSV file"}}},{"node":{"fields":{"slug":"/getting-started/4-application-onboarding/3-importusers-and-entitlements/2-transformationscripts/3-ADtransformation-usergroup","title":"Sample transformation script for AD users and group memberships"}}},{"node":{"fields":{"slug":"/changelog/21-Release-4.2.2","title":"Release 4.2.2"}}},{"node":{"fields":{"slug":"/connectorconfig/microsoft/4-adpowershell","title":"Active Directory PowerShell connector"}}},{"node":{"fields":{"slug":"/appendix/5-message_en_file","title":"Message properties"}}}]}},"pageContext":{"id":"4e1b71f1-f53b-58ba-95fa-cc2837e9ce4a"}},
    "staticQueryHashes": ["2619113677","3706406642","417421954"]}