Skip to main content
Version: 3.0 (next)

Time-bound access

Access for the length of the job, not until someone remembers to take it back.

Expires
Shares · approved requests · group memberships
Length
5 minutes to 1 year
Renewals
3, one hour each (default)
Where
My Access › Expiring

Access a contractor needs for a week, or an analyst needs for one investigation, should end when the job does. A time-bound grant has a cutoff; at the cutoff it ends without anyone acting.

What can expire​

GrantWhere you set the expiry
A shareExpires at in the Share dialog
An approved access requestExpiry when approving
A group membershipExpires at when adding the member on the group's page
A break-glass elevationIts duration, chosen when breaking the glass

The expiry is between five minutes and one year from now. To give a person a role for a limited time, add them to a group that holds the role with a membership that expires. Role assignments and denies can also carry an expiry through the API.

Setting an expiry needs Advanced Access Control.

Before the cutoff​

Thirty minutes before a grant ends, the person holding it is notified: Access expiring, with the time it lapses and whom to ask to renew it. The grant also shows on their My Access → Expiring tab, soonest first.

My Access Expiring tab as Kai Integrator: his View and Subscribe shares on the OP10-CNC branch and his View and Test shares on its connection, each expiring in seven days with 0 of 3 renewals used, and Renew disabled because renewing needs share on the resourceMy Access Expiring tab as Kai Integrator: his View and Subscribe shares on the OP10-CNC branch and his View and Test shares on its connection, each expiring in seven days with 0 of 3 renewals used, and Renew disabled because renewing needs share on the resource

What expires, when, and whether you may renew it

What happens at the cutoff​

A share stops granting access at its cutoff. A group membership, a role or a break-glass elevation is removed by the expiry sweep, which runs every five minutes, so it can last up to five minutes past the cutoff. Either way the holder is notified (Access expired) and the event is recorded as grant.expired.

The sweep runs on every licence. A grant that was given with an expiry ends on schedule even after a downgrade.

Renew a grant​

Renewing is a fresh decision to give the access, so only someone who could grant it now may renew it:

GrantWho may renew it
A share or an approved requestSomeone holding share on the resource, who also holds the shared verb
A group membershipSomeone who may add members to the group, and holds what the group gives
A roleSomeone who may assign the role

The person holding the grant does not extend it themselves, and someone who granted it but has since lost that right does not either. Ask the owner, the steward or an administrator; the Expiring tab shows grants you gave as well as grants you hold, so they can renew from there.

Renew sets the expiry to one hour from now. It is offered when the grant has less than that left; earlier, renewing would shorten the grant. A grant can be renewed three times; after that, grant it again. A break-glass elevation and a deny are never renewed.

On the Expiring tab, a grant you may not renew says why, in this order: the licence does not include renewals; it is a break-glass elevation; you may not renew it (and whom to ask); the renewal limit is reached; it is too early to renew. Each renewal is recorded as grant.renewed with the old and new expiry.

Settings​

SettingDefaultMeaning
modules.authz.expiryWorker.schedule0 */5 * * * *When the sweep runs (cron with seconds). Empty turns the sweep and the warnings off.
modules.authz.expiryWorker.warnBeforeMinutes30How long before the cutoff the holder is warned. A negative value turns the warning off.
modules.authz.expiryWorker.maxRenewals3Renewals per grant. A negative value allows none.
modules.authz.expiryWorker.renewalExtensionMinutes60How far from now a renewal sets the expiry.

Set them in config.yaml or as environment variables, for example MAESTROHUB_MODULES_AUTHZ_EXPIRYWORKER_MAXRENEWALS=5. See Configuration.

Without the licence​

Grants that already have an expiry still end on schedule, and still show on the Expiring tab. Giving a new time-bound grant and renewing one need Advanced Access Control; Renew is disabled with the reason. See Licence changes.