Skip to content

docs: add security model page - #1253

Open
psxjoy wants to merge 4 commits into
apache:mainfrom
psxjoy:docs/security-model
Open

psxjoy wants to merge 4 commits into
apache:mainfrom
psxjoy:docs/security-model

Conversation

@psxjoy

@psxjoy psxjoy commented Oct 21, 2026 •

Copy link
Copy Markdown
Member

Purpose of the pull request

Document the security model of Apache Fesod (Incubating) so users understand its trust boundaries, security guarantees, and application and deployment responsibilities.

What's changed?

  • Add English and Chinese Security Model pages covering temporary files, caches, password protection, untrusted documents, resource isolation, and file and network access.
  • Explain the dependency on Apache POI, including its limitations and the intention to preserve its security model, API contracts, and protective checks.
  • Clarify that XLSX output encryption does not imply encryption of intermediate files or JVM memory, and that temporary-file access and heap access are separate permissions.
  • Add community navigation and links from the existing Security and Password Protection pages.
  • Standardize project references as Apache Fesod (Incubating).

Validation includes Markdown linting, English and Chinese production builds, and checks of generated navigation links and section anchors using the existing local dependencies. No Java runtime behavior is changed.

Checklist

psxjoy and others added 2 commits October 21, 2026 18:03
…d scope

Add a dedicated Security Model page covering the trust boundaries,
temporary-file and cache handling, password-protection limits, resource
isolation, and reporting responsibilities. Both the English and zh-cn
pages are added and registered in the community sidebar.

The page states explicitly that password protection covers completed
XLSX output only, that intermediate plaintext may remain in temporary
files and process memory, that the URL image fetch policy is
process-wide and denies remote fetching by default, and that replacing
the XML parser factory changes the hardening that is applied.

Cross-link the page from the Security page and from the password
document, and correct the password notes, which previously implied
full-content encryption for every format.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@bengbengbalabalabeng

Copy link
Copy Markdown
Contributor

I noticed that only some of the H2 headings explicitly define custom anchor IDs (such as {#apache-poi}), while the other sections do not.

Just wondering, is this intentional for specific deep-linking/referencing needs, or would it be better to standardize the format across the entire document?

Comment thread website/community/security-model.md Outdated
@psxjoy

psxjoy commented Oct 22, 2026

Copy link
Copy Markdown
Member Author

Thanks @bengbengbalabalabeng. These explicit IDs serve the cross-page links from the English and Chinese Password Protection pages: #apache-poi, #temporary-files-and-caches, and #password-protection.

Keeping the same IDs in both languages makes those links stable when headings are translated or reworded. The remaining sections use Docusaurus-generated IDs, which still support navigation and linking. I've kept the existing anchors unchanged because only these three sections currently need shared, stable targets for those references.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants