Secure user impersonation for SaaS teams

Log in as your customer. Keep access under control.

Give support and engineering secure access to a customer account when they need to investigate an issue. Customers never share passwords, and you keep your existing authentication. Devora manages approvals, access limits, expiry, and history.

Keep your existing login. Connect with SDKs.

Your app controls who signs in. Devora never sees customer passwords. Devora encrypts the temporary token and clears it after your frontend redeems the handoff. See the handoff

  • Approve access
  • View access by default
  • Time limits
  • Access history
Devora dashboard with access requests, active sessions, integration status, and access history

How it works

Request. Approve.
Investigate. Review.

A teammate asks for access to one customer account and says why. An admin approves it. They work inside your app with a visible timer and clear limits. Afterwards, your team can review the access record. This workflow is also called user impersonation or customer impersonation.

Before access

Agree on who, why, and how long.

Start with a customer account and a reason. An organization admin reviews the requested permissions and time limit.

  • Customer lookup and access requests
  • Read or write scope and a set duration
  • Recorded approval decisions

During the session

Investigate within clear limits.

The teammate works in your app. Your integrated backend enforces scope and endpoint rules, while a banner makes customer access visible.

  • Visible session banner and timer
  • View access and endpoint restrictions
  • Active session oversight and termination

After the work

End access. Keep the context.

Close the session and review the access history. See who entered the account, why they needed access, and how it was approved.

  • Session end, expiry, and approval revocation
  • Request, session, and security event history
  • Optional recordings and activity capture

Admins can also approve their own requests. Devora records approval of their own request separately. Understand approval roles

Why Devora

Customer access needs more than a login.

Auth providers and open source libraries can create a session as another user. Your team may still need requests, approvals, access limits, session controls, and history. Devora provides those parts in one place. Choose it only when that workflow fits your team.

  • Request and approval queue with reasons
  • View access enforced in your API
  • Blocked sensitive endpoints
  • Session timer, banner, and remote termination
  • Access history and security audit
  • Optional recording with masking and retention
  • Customer data export and erasure
  • Member offboarding that ends live sessions

Your auth provider

Start with what you have.

A provider's impersonation feature may already meet your needs. Check how your setup handles approvals, scope restrictions, termination, and access review.

A good fit when your existing workflow covers your team's requirements.

Build or use open source

Own the implementation.

Use libraries and your own code to shape the experience. Your team owns the approval screens, rules, session oversight, and ongoing maintenance you choose to add.

A good fit when custom requirements justify the engineering ownership.

Devora

Connect the workflow your team needs.

Give staff a shared workspace for requests, approvals, session controls, and access history, with optional recording. Your app keeps its authentication and data permissions.

A good fit when you want these workflows without maintaining their dashboards yourself.

Devora still needs an SDK integration and backend enforcement. Read the build or buy FAQs

How access works

Your login. Your access rules.
A handoff you can understand.

Devora coordinates approved customer access. It never replaces your login system. Your backend creates the login token, your app validates the login, and your integrated backend enforces the session limits on every request.

One click. Controlled customer access.Your app controls the login and access.

Devora keeps a temporary encrypted copy for the handoff.

The encrypted token copy is cleared when your frontend redeems the handoff.

Customer ID, optional name and email, and access history are retained. See what Devora stores

The flow, step by step

  1. Start with approved access

    A teammate clicks Impersonate in Devora after their access request is approved.

  2. Your backend creates the token

    Devora requests a credential with a short expiry from your backend, using your existing authentication.

  3. Devora prepares the handoff

    Your backend returns the token. Devora encrypts a temporary copy for the handoff. Your frontend can redeem it once.

  4. Your frontend receives it

    The frontend SDK redeems the handoff. Devora clears the encrypted copy and returns the token.

  5. Your app checks the login and access

    Your authentication validates the login. Your backend SDK enforces the configured access rules for the session.

  6. Investigate with a time limit

    If the checks pass, the teammate enters the account with a visible timer. They can end the session when finished.

Illustration of a session limited to viewing. The timer and access rules depend on your configuration.

Your authentication stays yours.

Your team never needs the customer's password. Your app creates and validates the impersonation credential.

Choose what you share.

Devora retains a customer ID, optional name and email, and access history. Your integration controls any extra customer information it sends.

Recording is your choice.

Screen recording and activity capture start disabled. Enable them only when your team needs them, with masking and retention controls.

Developer experience

Keep your auth.
Connect your app.

Your developer connects user lookup, session creation, and session revocation through the SDKs. Your backend enforces access rules. Your staff then manage requests and sessions in Devora.

Review your auth provider's prerequisites and test the full workflow in staging before rollout.

Explore the setup guide →
Install the SDKs
# Backend · Express
npm install @devorash/node @devorash/express

# Frontend · React
npm install @devorash/browser @devorash/react
Your backend→devora→Your frontend
Supported stacks Node.js · Python · Express · Fastify · Hono · Django · FastAPI · Next.js · React · Vue · Svelte · Solid View SDK packages →

For the team behind your product

Customer context for the people who need it.

01

Support & success

Open the account behind the ticket. Investigate the issue without asking for a password or another screen share.

02

Developers & QA

Reproduce bugs that depend on a customer's account. Keep your existing authentication and enforce scope in your API.

03

CTOs & founders

Give staff a safe, consistent way into customer accounts without spending a sprint on approval screens, audit logs, and admin tooling that only your team maintains.

04

Product managers

Investigate a reported workflow in the affected account. Understand the conditions behind an issue before deciding what to change.

05

Admins & security

Decide who can approve, restrict what can change, end a session from the dashboard, and answer who was in an account, when, and why from the history.

From the blog

Guides for safe customer access.

Read all articles

Before you get started

The questions worth asking.

Explore all FAQs
What does Devora actually do?

Devora lets an authorized teammate open your SaaS application as a customer to investigate an issue, without asking for the customer's password. It gives your team a shared workspace to request and approve access, limit what can be changed, end sessions, and review who accessed which account and why.

Will the customer notice, or get logged out?

The staff member gets their own separate session for that account. Devora does not use or end the customer's own login, and it sends nothing to the customer. What the customer can see afterwards depends on what the agent does. A session limited to viewing changes no data, while a write session makes real changes in the account. Devora records who accessed the account, with what scope, and when. Your organization decides whether and how to tell customers about staff access.

Our auth provider already supports impersonation. Why add Devora?

Your provider's impersonation feature may already be enough. Devora is useful when you also want a shared request and approval queue, read and write rules, active session controls, access history, and optional recordings in one place. Your provider still creates the app session. Devora adds the workflow around staff access. Compare your existing setup with those needs before adding another tool.

Why use Devora instead of building or using open source?

A custom tool or an open source library can be a good fit when your team wants to own the implementation. Devora gives you a maintained workspace for requests, approvals, session controls, and access review. You still integrate your app, but you spend less effort building those internal workflows and their interfaces. The decision is whether you want to maintain that tooling alongside your product.

Do we have to replace our authentication?

No. Devora works alongside your authentication. Your backend looks up users and creates and revokes the impersonation credential. Devora manages requests, approvals, and session oversight. The integration depends on your provider: check the support guide before you start, especially for Auth0 and WorkOS AuthKit.

What does a developer need to implement?

Connect the backend and frontend SDKs. On the backend, implement user search, user lookup, session creation, and session termination, then apply the scope guard to authenticated API routes. On the frontend, connect the login and session end callbacks. Configure keys, allowed origins, and endpoint rules in Devora. This is an application integration and needs testing before staff use it with real customers.

Can we stop staff from changing customer data?

Yes. Choose scope that allows viewing without changes and enforce it through the integrated backend guard. Write requests are blocked unless you explicitly allow an exception. Sensitive endpoint rules can block actions in both read and write sessions. Your developer must protect the relevant API routes and review their behavior. Hiding a button alone is not an access control.

What customer information does Devora retain?

Devora retains an encrypted customer ID and, when supplied, encrypted name and email fields to identify the account in the access workflow. It also stores request and session records, such as the staff member, access reason, scope, approval decisions, and timestamps, along with team and project settings. The login token payload is encrypted and held temporarily for the handoff. Your integration may send extra handoff information. Keep that to what your app needs. Optional recording or activity capture adds further data when enabled.

Is every session recorded?

No. Recording and activity capture are optional and disabled by default. An administrator chooses the capture and masking settings; recording starts with full masking by default. You can use requests, approvals, session controls, and access history without recording customer screens.

Does Devora store the login token from our backend?

Temporarily, in encrypted form. Your backend creates the impersonation token, and Devora stores an encrypted copy for the handoff to your frontend SDK. The handoff can be redeemed once. After successful redemption, Devora clears the temporary database copy before returning the token. Customer identity and access history records are retained separately. Devora does not ask for your customer's password.

Try your next support scenario.In the right account.

Create an account, connect a test app, and walk through one request with your team.

Create an account →Plan your integration