• Jul 11, 2026
  • 12 min read
Confluence administrator reviewing a Mermaid macro security checklist covering Forge scopes, data egress, and diagram sanitization controls

Mermaid Macro Security in Confluence: What Admins Should Check Before Installing

The security reviewer opened the Marketplace screenshot.

The Mermaid macro looked clean: live preview, export buttons, wide view for architecture diagrams. The documentation team wanted it yesterday. The listing said the app runs on Atlassian Forge.

The reviewer asked one question nobody had written down:

"Where does user diagram source go, who renders it, and what happens if someone pastes a malicious link into a node label?"

That is the gap behind Confluence Mermaid macro security. Rendering diagrams is not the same as approving a macro that turns user-authored text into SVG inside Confluence pages.

Before you install any Mermaid Confluence macro, run a security checklist — not a feature tour.


Quick Answer

  • Start with the install surface. Verify Marketplace listing identity, Confluence Cloud compatibility, Forge scopes, external egress, and Privacy & Security tab links before anyone clicks install.
  • Trace the data flow. Document where Mermaid source is stored, where rendering happens (browser vs remote service), and whether exports are generated locally or server-side.
  • Test Mermaid-specific behavior. Confirm how the macro handles HTML labels, JavaScript URLs, click actions, author-supplied security-level overrides, SVG sanitization, and oversized source.

Vendor privacy, security, and support pages are necessary input. The install prompt and sandbox trial are the evidence. They should match.

Who Owns Which Part of the Review

Split the work so platform, appsec, and procurement do not each re-read the same screenshot.

Review areaPlatform adminAppsec / securityProcurement
Marketplace listing and install approvalPrimaryConsultedInformed
Forge scopes and egressPrimaryPrimaryInformed
Data storage and classificationConsultedPrimaryConsulted
Mermaid sanitization and interactivity testsInformedPrimary
Vendor privacy/security/support pagesConsultedPrimaryPrimary
Sandbox trial and sign-offPrimaryPrimaryConsulted

One owner should attach sandbox results to the approval ticket. Split ownership is how macros reach production with no recorded test for risky diagram syntax.

Why Mermaid Macros Need Their Own Review

Static image macros display files. Mermaid macros parse text.

The Mermaid documentation describes diagrams defined as text and code. That is powerful for documentation teams. It also means authors can paste architecture names, internal hostnames, credentials placeholders, or deliberately risky syntax into source that the macro later renders.

Mermaid also supports features that matter to security reviewers. The Mermaid security configuration documents securityLevel settings that affect whether HTML tags and script-like behavior are allowed in rendered output. Flowcharts can include click syntax and links. Those features are useful in some contexts and risky in others if the macro honors them without controls.

A Confluence macro privacy checklist therefore needs Mermaid-specific rows, not only generic "is it Forge?" questions.

Checklist 1: Marketplace Listing and Install Prompt

Atlassian's Manage your apps documentation says user-installed apps are usually downloaded from Marketplace and configured through Connected Apps. Site admin access is required.

For every candidate Mermaid macro, verify on the listing and in the install prompt:

CheckWhy it mattersWhat to record
App name and vendorSupport and procurement routingExact listing name, vendor, support URL
Confluence Cloud compatibilityWrong product installs fail or behave oddlyHosting tab matches your site
Forge scopesDefines Atlassian API accessFull scope list from install prompt
External egressDefines off-platform network callsDeclared endpoints vs vendor architecture page
Privacy & Security tabAtlassian-hosted vendor disclosuresLinked policies; note if tab missing or stale
Version and update dateMaintenance signal onlyVersion string and last updated date at evaluation time
Uninstall / retention notesOffboarding riskWhat vendor and Atlassian docs say happens on uninstall

Word Marketplace pricing, ratings, and install counts cautiously. They change. Use phrasing such as "the listing showed at the time of evaluation."

At the time of research on July 11, 2026, I did not find an official Atlassian Marketplace listing for BacklogBridge Diagram Lens for Confluence through available public sources. Search Marketplace again before you treat any search result as the official listing.

Compare Marketplace Privacy & Security tab content with vendor site policies. They can lag each other. Mismatch is a finding, not a detail to ignore.

Checklist 2: Forge Scopes and storage:app

Many Confluence diagram macros store configuration: Mermaid source, titles, theme, zoom state, layout preferences.

Forge apps that persist app-owned data commonly request storage:app. Atlassian's Forge key-value store documentation states that using @forge/kvs requires the storage:app scope and that Forge persistent storage inherits Atlassian data residency capabilities.

Questions to ask:

  • What exactly is stored? Diagram source only, or also rendered SVG caches, analytics events, or user identifiers?
  • Is storage required for page view? Some macros can render ephemerally; others need stored config to reopen pages reliably.
  • Who can read stored data through Confluence? Forge app storage is scoped to the installation, but diagram source may still contain sensitive business information because users typed it there.
  • What happens on uninstall? Verify vendor and Atlassian guidance for retained app data.

storage:app is not automatically risky. It is also not automatically minimal. Compare requested scopes to the macro's job.

Data classification scenario: An author embeds internal service names, database hostnames, or ticket URLs in Mermaid source. If the macro stores that source under storage:app, your diagram policy is now a data-handling policy. Confirm whether that storage model is acceptable for the spaces where the macro will be allowed.

Checklist 3: External Egress and Remote Renderers

The highest-impact architecture question for Mermaid macros is simple:

Does diagram source leave the Confluence/Forge boundary to render?

Remote renderers, external analytics, AI diagram services, and vendor-hosted backends expand your review:

PatternSecurity review focus
Client-side Mermaid in Forge Custom UIBrowser sandbox, CSP, sanitization, source-size limits
Vendor API render endpointData classification, retention, subprocessors, transport encryption
External font or asset CDNUnexpected network calls from diagram pages
Analytics beaconTelemetry content, opt-out, data minimization

Atlassian's Forge permissions documentation explains that manifest permissions declare scopes and external resources. Compare:

  • Marketplace Privacy & Security egress declarations
  • Vendor security page architecture description
  • Observed network behavior during a sandbox trial, if your security team requires it

If the vendor says "no external egress," the install prompt and manifest should agree. If they disagree, stop and ask before production.

Checklist 4: Mermaid-Specific Controls

Feature screenshots rarely mention HTML labels. Security reviewers should.

Verify how the macro handles:

HTML labels and raw markup

Mermaid diagrams can include HTML label syntax in some configurations. Ask whether the macro disables HTML labels, strips them, or renders them.

Node links and click targets may accept URLs. Ask whether javascript: links are blocked or sanitized.

Click actions and interactivity

Mermaid supports click syntax that binds nodes to callbacks or URLs. Ask whether click actions are blocked, sanitized, or allowed — and whether strict rendering strips interactivity.

Security-level overrides in source

Authors can attempt to set Mermaid security levels in diagram source. Ask whether the macro ignores author-supplied securityLevel directives and enforces strict settings centrally.

SVG sanitization

Even with strict Mermaid settings, rendered SVG should pass through an HTML/SVG sanitizer before display or export. Ask what sanitizer is used and whether exports receive the same sanitized output as page view.

Source-size limits

Very large sources increase denial-of-service and browser memory risk. Ask whether the macro warns or blocks oversized sources before render.

These controls matter because Confluence pages are collaborative. You are not only trusting the admin who installs the macro. You are trusting every author who can edit a page containing it.

Checklist 5: Vendor Privacy, Security, and Support Pages

Marketplace tabs are the first stop. Vendor pages are the second.

Before approving install, locate and read:

PageWhat to extract
Privacy policyProcessed data categories, storage location, retention, subprocessors — only if explicitly stated
Security pageArchitecture, scopes, egress, rendering model, sanitization, security contact
Support pageSecurity contact, response targets, known limitations, troubleshooting for unsafe source
TermsData handling boundaries, if relevant to procurement

Verify the security contact is reachable and monitored. A generic support inbox may be acceptable if the vendor documents security routing and response targets. Missing security contact information is a gap for incident reporting.

Do not infer SOC 2, ISO, GDPR compliance, Cloud Fortified status, or Marketplace Bug Bounty participation unless explicitly documented and current.

If a page is missing, that is a finding — not something to fill in from architecture assumptions.

Sandbox Validation: Test With Risk-Shaped Diagrams

Marketplace copy is claims. Sandbox behavior is evidence.

In a test space, try:

  1. A minimal valid flowchart — baseline render and save/reopen behavior.
  2. A diagram with an external HTTPS link on a node — confirm expected link behavior.
  3. A diagram that attempts HTML label syntax — confirm block, strip, or sanitize behavior matches vendor claims.
  4. A diagram that attempts click syntax — confirm interactivity is blocked or sanitized as claimed.
  5. An oversized source sample — confirm warning or block behavior.
  6. Export to SVG and PNG — confirm exported files match on-page rendering and do not reintroduce unsafe content.

Record browser, Confluence site type, app version if visible, and whether network tools showed unexpected egress. Attach results to the approval ticket.

After security sign-off, authors benefit from guidance on safe Mermaid patterns. Backlog Bridge's Mermaid chart tips guide describes Diagram Lens-safe diagram scope; similar author guidance may exist for other macros.

Worked Example: Diagram Lens Public Claims vs What to Verify

This section is not an install recommendation. It shows how to apply the checklist to BacklogBridge Diagram Lens for Confluence, the app named in editorial research.

Public claim (Backlog Bridge pages, effective 8 July 2026)Verify independently before approval
Confluence Cloud Forge app; client-side Mermaid in Custom UICurrent Marketplace listing and install prompt
Manifest scope: storage:app onlyLive install prompt scope list
No external egress declaredMarketplace egress tab + sandbox network review if required
Strict Mermaid settings; HTML labels disabled; click/JS URL controls; DOMPurify sanitizationSandbox tests with risky diagram samples
Diagram config stored in Forge hosted storageData classification sign-off for spaces where macro is allowed
Public privacy, security, support pagesProcurement artifacts: SOC 2, ISO, DPA, Cloud Fortified — not verified here
PNG/PDF/clipboard export availablePublic support docs call these best effort; test your largest diagrams if exports matter

For reader workflow questions beyond security, see Mermaid Diagrams in Confluence: Why Big Diagrams Need a Reader, Not Just a Renderer.

When a Mermaid Macro May Be More Than You Need

A full Mermaid macro adds parsing, storage, rendering, and export surface area.

A simpler path may be enough when:

  • diagrams are small and rarely edited
  • authors are trusted and limited in number
  • interactivity is not required
  • exports are not part of the workflow
  • security review bandwidth is limited and diagrams are low sensitivity

In those cases, evaluate whether native tooling or static diagrams meet the need before approving a macro that executes user text.

Master Admin Checklist

Copy this table into your evaluation ticket:

#CheckOwnerDone
1Marketplace listing matches intended app and vendorAdmin
2Confluence Cloud compatibility confirmedAdmin
3Install prompt scopes documented and approvedAdmin + Appsec
4External egress declarations match vendor security pageAppsec
5Privacy & Security tab links reviewedAppsec + Procurement
6Vendor privacy, security, support, and terms pages reviewedAppsec + Procurement
7Security contact and response path documentedAppsec
8Rendering location documented: client-side vs remoteAppsec
9Storage model documented (storage:app or other scopes)Appsec
10Sensitive diagram content policy agreed for allowed spacesAdmin + Appsec
11HTML labels, JavaScript URLs, click actions testedAppsec
12Author securityLevel overrides tested or vendor confirms ignoreAppsec
13SVG sanitization and export behavior testedAppsec
14Source-size limits understoodAdmin
15Uninstall/retention behavior understoodAdmin + Procurement
16Sandbox results attachedAdmin

Final Recommendation

Confluence Mermaid macro security review is about data flow and diagram execution features, not logo count on a Marketplace page.

Use a checklist that covers Forge scopes, Forge app storage app scope usage, external egress, remote renderers, Mermaid interactivity controls, and vendor privacy pages. Treat every vendor sentence as a claim to verify at install time — especially for diagram source that authors will paste from runbooks, tickets, and architecture notes.

If you are evaluating Diagram Lens specifically, public materials describe a narrow Forge scope model and strict Mermaid rendering — but your approval should still rest on the current listing, install prompt, sandbox tests, and procurement requirements, not this article.

See the Diagram Lens security page and support page for vendor-published details to compare against your trial results.