8000 GitHub - blindzero/IdentityLifecycleEngine: IdentityLifecycleEngine is a headless, configurable Identity Lifecycle (JML) engine in PowerShell 7. Plans and executes joiner/mover/leaver workflows across accounts and entitlements via pluggable steps and providers. Supports validate/plan/execute, preview diffs, policies, and structured audit/event streams.
[go: up one dir, main page]

Skip to content

IdentityLifecycleEngine is a headless, configurable Identity Lifecycle (JML) engine in PowerShell 7. Plans and executes joiner/mover/leaver workflows across accounts and entitlements via pluggable steps and providers. Supports validate/plan/execute, preview diffs, policies, and structured audit/event streams.

License

Notifications You must be signed in to change notification settings

blindzero/IdentityLifecycleEngine

Repository files navigation

IdentityLifecycleEngine (IdLE)

IdLE Logo

CI Latest All Releases

PowerShell Pester License

IdLE is a generic, headless, configurable Identity or Account Lifecycle / JML (Joiner–Mover–Leaver) orchestration engine built for PowerShell.

It helps you standardize identity lifecycle processes across environments by separating:

  • what should happen (workflow definition)
  • from how it happens (providers)

Why IdLE?

Identity lifecycle automation tends to become:

  • tightly coupled to one system or one environment
  • hard to test
  • hard to change (logic baked into scripts)

IdLE aims to be:

  • portable (run anywhere PowerShell 7 runs)
  • modular (steps + providers are swappable)
  • testable (Pester-friendly; mock providers)
  • configuration-driven (workflows as data)
  • extensible (add custom steps and providers)

For a complete overview of concepts and architecture, see About > Concepts.


Key Features

  • Plan → Execute flow (preview actions before applying them)
  • Joiner / Mover / Leaver orchestration (and custom lifecycle events)
  • Plugin step model (idempotent, provider-agnostic)
  • Structured events for audit/progress (CorrelationId, Actor, step results)

Installation

Quick install:

Install-Module -Name IdLE -Scope CurrentUser
Import-Module IdLE

For detailed installation instructions, requirements, and import options, see Installation Guide.


Quickstart

Run the end-to-end demo (Plan → Execute):

pwsh -File .\examples\Invoke-IdleDemo.ps1

The demo shows:

  • creating a lifecycle request
  • building a deterministic plan from a workflow definition (.psd1)
  • executing the plan using built-in steps and a mock provider

By default, the demo runs Mock workflows that work out-of-the-box without external systems. The examples folder also includes Live workflows that demonstrate real-world scenarios with Active Directory and Entra ID, but these require the corresponding infrastructure and provider modules.

The execution result buffers all emitted events in result.Events. Hosts can optionally stream events live by providing -EventSink as an object implementing WriteEvent(event).


Documentation

The documentation is also available at our project site: https://blindzero.github.io/IdentityLifecycleEngine

Start here:


Contributing

PRs welcome. Please see CONTRIBUTING.md and STYLEGUIDE.md


Roadmap

See Github Issues and Milestones for our roadmap.


License

See the LICENSE.md file.

About

IdentityLifecycleEngine is a headless, configurable Identity Lifecycle (JML) engine in PowerShell 7. Plans and executes joiner/mover/leaver workflows across accounts and entitlements via pluggable steps and providers. Supports validate/plan/execute, preview diffs, policies, and structured audit/event streams.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 5

0