Clinical patterns

Lockout & account recovery

Every design system covers the forgotten password. Almost none of them treat it as what it is here: a clinician standing at a workstation at 03:40, unable to reach a patient's data, with a decision waiting on them and nobody to ask.

Stable · v1.0 AcuteLine IEC 62366-1 WCAG 2.2 AA
The rule

Losing a credential is a clinical event with a clock on it. The route back is stated on the failure itself, is staffed at the hour the failure happens, and states how long it will take.

And: the recovery route is never the emergency access control. A recovery path that doubles as a clinical bypass will be used as one — every time recovery is slow, which is every time it matters.

What this covers

Sign in & sign out handles the session: locking to read-only rather than blank, switching user, and the audited break-glass path when authentication itself is the obstacle. It assumes the clinician has a working credential.

This page is the case where they do not. Forgotten, expired, locked out after failed attempts, revoked by a system nobody told them about, or working on a device that has never seen their badge. These are the ordinary failures, they are far more common than the emergency, and they are where a security team's defaults land on a clinical floor without anyone having designed the landing.

Why this is a safety pattern and not an IT one

The instinct outside healthcare is that recovery is an inconvenience to be traded against account security, and that a slow, cautious process is the safe choice. On a ward that trade has a second term nobody prices: every minute of the recovery is a minute the clinician is not doing the thing they were locked out of.

The consequences are predictable and are all worse than the risk being managed:

So the design goal is not "make recovery hard". It is make recovery fast enough that nobody has a reason to route around it, while keeping the identity proofing strong. Those are compatible; they are simply not compatible with a process designed for an office.

Lockout after failed attempts

Lockout thresholds are usually invisible until they fire, which is the worst possible arrangement: a clinician learns the limit by hitting it.

Locked out — the route back is on the failure
This account is locked

Too many failed attempts. It unlocks automatically at 03:52.

Sooner, if you need it now:

  • Call the clinical systems desk — ext. 4400 Staffed 24 hours. Typical unlock time 5 minutes.
  • Any colleague with a working badge can unlock you at this workstation Their identity is recorded as the person who authorised it.

Patient data on this screen stays visible. Alarms are unaffected.

The second route matters more than it looks. In-person vouching by a colleague who is already authenticated is stronger identity proofing than a link sent to an email account, and it takes thirty seconds instead of twenty minutes. It is available because somebody thought about where the clinician actually is.

Expiry, which is entirely predictable and still surprises everyone

A credential that expires does so on a date the system has known for ninety days. Presenting that as a sudden obstacle at the moment of use is a choice, and it is the wrong one.

The route back is stated, staffed and timed

Three properties, all of which are usually missing:

PropertyWhat it means here
Stated On the failure screen itself, not in an intranet article. A clinician who cannot sign in frequently cannot reach the place the instructions live.
Staffed At the hour the failure happens. A route that says "Monday to Friday, 9 to 5" is not a route for a night shift, and publishing it as one is worse than saying there is none.
Timed With a typical duration, so the clinician can decide whether to wait or escalate. "We'll get back to you" forces them to guess, and they will guess in favour of a workaround.

If no staffed route exists at 03:40, the honest thing is to say so and name what to do instead. An interface that implies help is available when it is not spends the clinician's time discovering the truth.

Recovery is a way in, and is proofed accordingly

Recovery is the softest edge of any authentication system: whatever proof it accepts becomes the real strength of every account. So the proofing is at least as strong as the proofing used to issue the credential in the first place — and where it cannot be, the recovered access is limited rather than full.

The channel has to exist where the clinician is

Recovery flows tend to assume a personal phone and a personal inbox. On a clinical floor, both assumptions fail routinely: phones are in lockers, wards are in basements with no signal, workstations block webmail by policy, and agency staff may have no organisational address at all.

So at least one route must work on the device in front of them, with no second device. In-person vouching, a badge already enrolled elsewhere, or a phone call to a staffed desk all satisfy this. A one-time code sent to a phone in a locker does not, and designing around it produces a system that works in the office where it was tested.

States

StateRendering
Failed attempt, attempts remaining Generic failure message, remaining count stated, Caps Lock and layout surfaced.
Locked Unlock time as a clock time, plus every available route with its typical duration. Screen stays readable; alarms unaffected.
Expired Distinguished from wrong, with the expiry date and a change route. Never presented mid-task.
Expiring soon At sign-in only, deferrable a stated number of times with the count visible.
Revoked Stated as revoked rather than as a failure, with who to contact. A clinician quietly treated as having forgotten their password will spend the night trying to remember it.
Recovered with limited access The limits stated on screen for the whole session, per Safety configuration's rule that a reduced mode is never silent.
No staffed route at this hour Said plainly, with the alternative named. Not a form that will be read in the morning.

Who holds each rule

Recovery is identity-provider behaviour. The package holds what the screen says while it happens and the record of it happening.

RuleHeld by Where
Every recovery is recorded and attributableEvent log A recovery is an entry with an actor. An unattributed one is not writable.
Asserted: EventLog: every entry names an actor, and says whether it was software
Lockout is logged as an availability event, and stays loggedEvent log The entry cannot be removed after the fact.
Asserted: EventLog: no entry can be edited, removed or cleared
An expired credential is distinguished from a wrong oneText field The error is added beside the hint, not in place of it, so the distinction you write is read alongside the format. Writing the distinction is yours.
Asserted: TextField: an error never destroys the hint
The remaining attempts are stated before the last oneThe implementer A count from your identity provider, and a sentence you render.
Caps Lock, keyboard layout and the badge reader are ruled out firstThe implementer Diagnostics you run before deciding a credential was wrong.
Lockout is temporary by default; never blocks the emergency pathThe implementer Policy in the identity provider. The most consequential rule on this page, and nothing rendered can hold it.
Warnings begin far enough out to act on; expiry never happens mid-sessionThe implementer Timers and session logic.
The change is deferrable a stated number of timesThe implementer A counter you keep.
Recovered access can be scopedThe implementer Authorisation.
Why this is written down

A pattern page has no component underneath it, so a rule stated here is held by whoever builds against it unless a component already holds it. Of these 9 rules, 3 are held by a component this package ships, and 6 are the implementer’s. Three held, six not, and the one that decides whether a clinician can reach a patient at three in the morning is on the other side.

Do's and don'ts

Do

Locked. Unlocks at 03:52. Clinical systems desk, ext. 4400, staffed 24 h — typically 5 minutes.

Stated, staffed, timed. The clinician can decide whether to wait, and decides with a number rather than a guess.

Don't

Your account has been locked. Please contact your administrator.

Which administrator, reachable how, at 03:40, and how long? Every missing answer is a minute, and the workaround costs none of them.

Do

Your password expires in 9 days. Change it now, or defer — 2 deferrals remaining.

Shown at sign-in, with a stated budget. Nobody is choosing a password under pressure with a patient waiting.

Don't

Your password has expired. You must change it to continue. (shown on pressing Save)

Interrupts between a decision and its record, and produces the weakest password the policy permits.

Do

A colleague with a working badge can unlock you here. Their name is recorded as authorising it.

Works on the device in front of them, needs no second device, and is stronger proofing than a link to an inbox.

Don't

We've sent a code to your registered mobile number.

The phone is in a locker and the ward has no signal. The route exists and does not work here, which is the same as not existing.

Do

Two separate controls: Recover my access and Emergency access — audited.

Different problems, different records. Break-glass stays exceptional, so its audit trail stays worth reading.

Don't

Can't sign in? Use emergency access

Makes the bypass the fastest fix for a forgotten password. Within a month it is the normal route and the exception report is noise.

Accessibility

Outcomes of use

What this contributes to, in the terms of Usability & context of use. These are attributes believed to contribute to an outcome; the outcome itself is settled by observing real use in a specified context, not by this page.

Clinical safety notes

Risk controls this pattern specifies, and what checks each

Trace these in your risk file (ISO 14971) and usability engineering file (IEC 62366-1). Lockout and expiry parameters are deployment-wide settings and carry the blast radius of Safety configuration. Each bullet says what checks it: a component that holds the rule, a test in your verification file, deployment configuration, post-market surveillance, or a design review where no test can see it. A control checked by nothing is a sentence.

NotJustAnyMed.Tech Design System · Lockout & account recovery · v1.0 · draft for review
Reference applications named in this system are fictional, as are all clinicians, extension numbers and timestamps shown above.