Related docs:
USER LEASE PLUGIN USER LEASE USE CASES EPHEMERAL ACCESS CAPABILITIES AAP INTEGRATION DOCS MAP
Use this guide to decide whether eigenstate.ipa.user_lease is the right
boundary for temporary user-backed access in IdM.
The short answer: use it when the access boundary should be expressed by IdM user expiry attributes, not by a later cleanup job alone.
user_lease is strong when all of these are true:
krbPrincipalExpirationThat makes it a good fit for:
This module is not:
The machine-identity pattern still belongs to the KEYTAB CAPABILITIES side of the collection.
The strongest operating model is delegated, not full admin.
A practical pattern on live IdM is:
lease-targetskrbPrincipalExpiration and, if needed,
krbPasswordExpirationRepresentative CLI:
ipa permission-add lease-expiry-write --right=write --attrs=krbprincipalexpiration --attrs=krbpasswordexpiration --type=user --memberof=lease-targets
ipa privilege-add lease-expiry-priv
ipa privilege-add-permission lease-expiry-priv --permissions=lease-expiry-write
ipa role-add lease-expiry-role
ipa role-add-privilege lease-expiry-role --privileges=lease-expiry-priv
ipa role-add-member lease-expiry-role --users=lease-operator
That is exactly the shape validated on the lab IdM server for this module.
krbPrincipalExpiration is the main access boundary.
krbPasswordExpiration is secondary and useful when password-based login must
stop on the same timeline. When the workload is password-authenticated rather
than keytab-authenticated, it is reasonable to set both.
The important limit remains:
So the stronger design is:
user_leaseUse absolute UTC times when you want clean, repeatable convergence.
Use relative HH:MM when you want a true lease window starting from the moment
of execution. That is operationally useful, but it is intentionally time-based,
not static desired state.
High-value combinations:
user_lease + hbacrule
validate that the temporary user is actually allowed onto the target hostuser_lease + sudo
confirm the temporary user’s privilege surface before the lease is openeduser_lease + aap-integration
let Controller schedule and approve the change while IdM owns the cutoffuser_lease + otp
bootstrap a temporary user workflow that begins with a one-time credential
and ends with an explicit IdM expiry boundary| Need | Better fit |
|---|---|
| temporary user access with an IdM-owned cutoff | user_lease |
| temporary machine identity with Kerberos key retirement | principal + keytab |
| static password rotation on a schedule | AAP + vault_write |
| dynamic leased credentials from the issuer | Vault or another true dynamic secret system |