← Back to marketplace
SecOps

Recovery Desk — BitLocker & LAPS

Published by NowForgefirst-party

What it does

A technician needs a BitLocker recovery key. Today that means someone has access to the Intune portal — which also grants them everything else Intune can do, and leaves no record of which key they read.

Recovery Desk moves the lookup into ServiceNow. A person with the right ServiceNow role finds the device, gives a reason, and reveals the key. The disclosure is recorded before the value reaches them.

What you are actually buying

Not the lookup. Intune already shows the key. What this adds is the answer to the question an auditor asks: who read which recovery secret, when, and why.

• The disclosure log is append-only. Two layers enforce it. ACLs grant create, write and delete to nobody, with admin override off - a delete attempted as a full instance administrator over REST returns 403 ACL Exception Delete Failed due to security constraints. Business rules then abort update and delete for server-side scripts, which ACLs do not cover. Both are exercised by the shipped test suite.

The honest limit: a platform administrator with script access can call setWorkflow(false) and write to any table on their own instance. No application can prevent that, and one claiming to would be misleading you. What this does is make tampering deliberate rather than casual - and the table carries platform auditing, so a change that does get through leaves its own before-and-after record. • The record is written before the secret is handed over, so an attempt that then failed — a refusal, a device with no escrowed key — is on the record too. Those are the events an investigation cares about. • The secrets themselves are never stored. Keeping them would recreate, inside ServiceNow, exactly the uncontrolled copy this removes.

Looking is not revealing

Finding a device and seeing that it has three escrowed keys discloses nothing, and needs only the user role. Reading a key needs reveal. That split is what lets first-line confirm they have the right machine without holding the privilege to open it.

A third role, auditor, reads the log without being able to disclose anything — because the people who review disclosures are usually not the people making them.

It cannot write to your tenant

The Graph transport exposes one method, and that method issues GET. The HTTP verb is not a parameter anywhere in the code, so there is no write path for a future change to reach for. This application cannot create, modify, delete or rotate anything in Azure, and that is a property of its construction rather than a promise about its behavior.

Policy you set, not policy we chose

Compliance regimes differ, so the friction is yours to configure:

Reason required - on - No reveal without a written reason Ticket required - off - No reveal without a ticket reference Ticket must exist - off - The reference must match a real task, and is linked to it Repeat viewing - allowed - A secret already revealed can be read again, each viewing recorded Reveals per person per hour - 25 - A ceiling on how fast one account can drain the estate

There is deliberately no setting that turns recording off. It is what the product is for, and a switch to disable it would be the first thing an attacker looked for.

What it does not do

• It does not rotate keys or passwords. It reads what Azure already holds. • It does not create, modify or delete anything in your tenant. • It does not support on-premises Active Directory LAPS — Windows LAPS backed up to Entra only. • It does not replace Intune. It replaces handing out Intune access.

Screenshots
Requirements
An Azure app registration with three APPLICATION permissions and admin consent: DeviceManagementManagedDevices.Read.All, BitlockerKey.Read.All and DeviceLocalCredential.Read.All. The ReadBasic variants are NOT sufficient — they confirm a secret exists without permitting it to be read. Delegated permissions cannot work: there is no signed-in user behind these calls. Outbound HTTPS from the instance to graph.microsoft.com.
VERSION
v1.0.3
RELEASES
1 tested
ServiceNow compatibility
✓ Australia

Built and verified on Australia patch 3. Requires outbound HTTPS to graph.microsoft.com.

Scoped application — zero global footprint
Documented, commented source included
Free version updates for life
Instant delivery — download the moment you buy
Inside the download

What you’re importing

Worth a look
Nothing alarming, but a few things here are worth a buyer knowing about.
2 files read inside the archive.
145 records — 34 dictionary entrys, 19 atf tests, 19 acls, 7 applications, 7 roles, 6 system propertys, 4 ui pages, 3 tables, 3 script includes, 2 business rules
Archive read — 2 XML file(s) insideChanges navigation or aborts actions (2)Deletes records (4)Touches roles (33)Scoped application
Talks to: cyclonedx.org, graph.microsoft.us, graph.microsoft.com, login.microsoftonline.com, nowforge.studio

Read automatically from the update set. It lists what the file contains — it isn't a security guarantee, and nothing was run to produce it.

Before you install

Type
Scoped app
Scope
Scoped application — Installs into its own application scope. Contained, and easy to remove.
Requires
Nothing beyond a standard instance.
Notes from the seller
Built and verified on Australia patch 3. Requires outbound HTTPS to graph.microsoft.com.

Refunds

Because this is a digital file you download immediately, sales are final once the file has been downloaded.

If it does not work as described, or you have not downloaded it yet, talk to us — a plugin that does not do what its listing says is our problem, not yours.

Release history

What's shipped

Buy once and every release below — plus everything after it — is yours at no extra cost.

v1.0.3currentSep 12, 2026
v1.0.2Sep 5, 2026
v1.0.1Sep 5, 2026
v1.0.0Sep 4, 2026
Reviews

What buyers say

No reviews yet. Only verified buyers can review.

Ratings come from verified purchases only — buy this plugin to leave one.

Ask NowForge a question

Sign in to message NowForge directly. It keeps the conversation attached to your account so their reply can find you — and it stops this being an anonymous pipe into somebody’s inbox.

Report this listing

A person reads every report. Nothing is removed automatically — tell us what’s wrong and we’ll look.

Only used to follow up on this report.
✓