Support teams sometimes need to reproduce a facility owner's view, inspect a failed workflow, or confirm a permission problem. In adult family home software, unrestricted “log in as user” access can expose resident and medication data or create records under the wrong identity. Support access must be case-bound, least-privilege, time-limited, visible, and fully attributable.
This guide covers platform support design, not a legal conclusion about when a vendor may access a facility's records. It was reviewed on August 8, 2026. Organizations should define authorization, contracts, privacy, incident-response, workforce, and resident-record controls for support activity.
Prefer diagnostics before impersonation
Resolve routine issues through:
- PHI-safe error codes
- Build and service-worker versions
- Queue and sync status
- Permission evaluation traces
- Synthetic reproduction
- Configuration history
- Report and job reconciliation
- User-submitted redacted support bundles
Open resident content only when the case cannot be resolved with less access. Impersonation should be an escalation, not the first troubleshooting button.
The PHI-safe diagnostics guide explains structured telemetry and protected support bundles.
Define support access modes
Use separate modes:
- Read configuration only
- View tenant shell with synthetic or masked data
- View authorized facility data
- Reproduce a specific user permission view
- Perform a narrowly approved support action
- Emergency break-glass access
Each mode declares allowed modules and actions. Do not let a read-only case silently become write-capable because the support user navigates to another route.
Bind access to a support case
Require:
- Case ID and facility
- Requester or triggering incident
- Stated diagnostic purpose
- Requested scope and mode
- Support agent
- Approver when required
- Start and expiration
- User or facility notification policy
- Expected evidence and closure
The case must exist before elevation. Reject arbitrary facility IDs typed into an internal URL.
If a user reported the problem, record the authorized contact without assuming that any email sender can approve access.
Require strong support authentication
Support and platform administrators should use strong MFA, managed devices, short sessions, and step-up authentication before elevation.
Separate daily support identity from emergency or platform-wide privileges. Do not use shared administrator accounts.
The MFA and recovery code guide explains phishing-resistant options, factor enrollment, step-up, recovery, and device revocation.
If a support account is recovered, revoke prior sessions and reapprove active elevations.
Create an explicit elevation token
Issue a short-lived server-side grant containing:
- Support identity
- Case
- Facility
- Optional resident or module scope
- Allowed actions
- Issued and expiration times
- Approver
- Reason
- Unique elevation ID
The token supplements normal authentication; it does not replace it. Revalidate on every protected request.
Do not expose the token in URLs, logs, screenshots, or client storage that unrelated scripts can read.
Preserve the acting identity
When support views a user's perspective, records must show both:
- Actual support actor
- Simulated or represented user context
Never create a resident note, MAR event, medication order, or deletion that appears authored only by the facility user. If a narrow corrective action is permitted, label it as administrative support activity with the case and reviewer.
Prefer guiding the facility user to perform care-record changes. Support can repair system state through explicit maintenance events rather than impersonated clinical authorship.
Keep a visible support banner
During elevation, display a persistent banner containing facility, represented role, case, remaining time, read/write mode, and Exit action.
Use a visually distinct but clean style that cannot be confused with the facility's normal header. Announce it to assistive technology.
Block facility switching outside the approved scope. Opening a new tab should either carry the same visible grant or require re-elevation; it must not become an invisible unrestricted session.
Restrict high-risk actions
Default-deny:
- Medication administration or amendment
- Order acceptance
- Resident transfer or discharge
- User invitation or role change
- Full export
- Permanent deletion
- Legal hold change
- Billing or subscription mutation
- Integration key reveal or rotation
If support must perform one, require a specific action grant, strong reauthentication, second approval where appropriate, tenant notification, and post-action verification.
Do not allow bulk actions through ordinary impersonation.
Protect multi-facility boundaries
One case and elevation should target one facility unless the authorized problem is explicitly portfolio-wide. A user with access to several facilities does not grant support blanket access to all of them.
Recompute authorization from the elevation and tenant data layer. Do not rely on the represented user's menu.
Pharmacy support needs separate organization and facility-relationship scope. It must not search residents in another relationship.
Handle files, reports, and search
Support search should be scoped to the approved facility and module before ranking. Disable recent-resident cross-tenant suggestions.
Document previews and report downloads require elevation checks and should watermark or record support access when policy requires it. Do not generate permanent signed URLs.
Export capability should normally remain disabled. A diagnostic manifest can use opaque IDs and state codes instead of resident content.
Notify and provide transparency
Depending on policy and incident context, show facility administrators active and recent support sessions with case, purpose, agent or team, start, end, and actions.
Notify when support enters write-capable or break-glass mode. Do not disclose confidential internal security investigations to unauthorized users.
Provide a way to question or report unexpected access. Preserve the notice delivery state without equating delivery with acknowledgement.
Implement break-glass separately
Emergency access should require:
- Defined qualifying condition
- Strong step-up authentication
- Short duration
- Narrow default scope
- Immediate security notification
- Detailed immutable audit
- Mandatory post-event review
Do not use break-glass for routine ticket backlog or convenience. Monitor every invocation and unsuccessful attempt.
If approval cannot precede a genuine emergency, require retrospective approval within a defined period.
Expire and revoke reliably
Elevation must end at expiration, case closure, manual exit, support session revocation, tenant suspension, or administrator action.
Block new API calls immediately. Clear cached resident data, search results, document URLs, and open report jobs. Deny delayed exports before delivery.
Do not rely on the support agent closing the browser. Server-side grants and sessions enforce the end.
Audit every support action
Record:
- Request and approval
- Elevation creation and mode
- Facilities, modules, and resources accessed
- Searches, views, downloads, and reports
- Attempted prohibited actions
- Approved corrective actions and before/after state
- Notification
- Exit, expiration, or revocation
- Case resolution and reviewer
Use opaque references in security monitoring, with protected resolution for authorized reviewers. Support users cannot edit or delete their own access history.
Review access patterns
Monitor:
- Elevations without recent case activity
- Excessive facilities per agent
- Long or repeated sessions
- High-volume resident search
- Report or document downloads
- Prohibited action attempts
- Break-glass use
- Access outside staffed hours
- Case scope versus resources viewed
- Sessions not closed after resolution
Investigate context rather than ranking support staff solely by counts. Some incidents legitimately require deeper review.
Test support boundaries
Apply least privilege to the support workflow
The OWASP Authorization Cheat Sheet recommends least privilege, deny-by-default behavior, permission validation on every request, and authorization testing. Those principles mean a support console should not inherit broad access merely because an employee belongs to a support team. The server should evaluate the employee, approved case, selected facility, represented role, requested action, authentication strength, and expiration for every protected request.
Build a permission matrix from real support jobs: view configuration, reproduce navigation, inspect sanitized diagnostics, correct a narrowly defined administrative value, download a protected file, or enter emergency access. Give each job its own grant and review path. Then test tampered facility IDs, direct API calls, stale browser tabs, queued jobs, exports, search, cached data, and access after revocation. A visible banner helps humans recognize the session, but it cannot substitute for server enforcement. When the case closes, invalidate the elevation, clear protected state, stop delayed deliveries, and place the completed access record into review.
Use synthetic tenants to verify:
- No elevation without a valid case.
- Read-only mode cannot write through APIs.
- Actual and represented identities both appear.
- Banner persists across routes.
- New tab cannot hide elevation.
- Facility switch outside scope is denied.
- Pharmacy search remains relationship-scoped.
- Medication administration is blocked.
- Specific corrective grant permits only one action.
- Delayed export fails after expiration.
- Cached resident data clears on exit.
- Support account revocation ends elevation.
- Break-glass triggers immediate review.
- Tenant can see appropriate access history.
- Support agent cannot alter audit events.
- Cross-tenant object substitution is denied.
Test direct APIs, storage, search, queues, and reports—not only the support toolbar.
Frequently asked questions
Should support be able to log in as any user?
No. Use case-bound, time-limited, tenant-scoped elevation with explicit modes and actual-actor attribution.
Can support create medication records while impersonating a caregiver?
Default-deny clinical authorship. Use a narrowly approved administrative repair event when necessary and preserve the support actor and case.
Does read-only mean reports can be downloaded?
Not automatically. Download and export are separate sensitive actions requiring explicit authorization.
What happens when elevation expires?
The server blocks new access, clears protected client state, cancels or denies delayed delivery, and records termination.
Can facility owners see support access?
Provide appropriate transparency for active and historical support sessions while respecting incident confidentiality and authorization policy.
Make support powerful enough to help and narrow enough to trust
Safe support access begins with diagnostics, requires case and strong authentication, limits tenant and action scope, preserves actual identity, expires automatically, and makes every access reviewable.
Explore AFH Manager to test read-only support, audited user perspective, facility boundaries, prohibited clinical actions, break-glass review, expiration, and tenant transparency with synthetic cases.