- v2.6 becomes Pro Launch: cloud-account binding activation,
Ed25519 entitlement certificates, white-label as first Pro
feature, retroactive Pro gates (open registration, team count
≤3, per-team storage quota)
- v2.7 becomes Pro Operator: audit log, webhooks, anti-abuse
stack for the Pro-gated open registration mode
- v2.8 becomes Pro Analytics & Identity: analytics dashboard,
multi-IdP SSO + SAML, LDAP / SCIM
- Original Backup (v2.6) content moved to v2.9; Sync & Desktop
(v2.7) content moved to new v2.10
- Managed Cloud Services extracted to a separate closed-source
zpan-cloud repo (content moderation, server-side processing,
managed custom domains)
- Community vs Pro split rewritten around the operator rule
("features that help you use ZPan are free; features that
help you operate ZPan for others are Pro")
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
3.6 KiB
v2.8 — Pro Analytics & Identity
The "enterprise-ready" version. Analytics gives operators the numbers to run a service; SSO and LDAP/SCIM make ZPan buyable by companies that require them.
All features local to ZPan — no cloud dependency.
Major Features
Analytics Dashboard
Admin-facing dashboard under Settings → Analytics.
- Storage trends — total used / delta by day / week / month, grouped by file type
- Bandwidth consumption — uploads + downloads, day / week / month
- Popular files — top N by downloads and by views, filterable by time window
- Share link analytics — per-link views, downloads, unique IPs, referrer breakdown
- User activity — active users / signups / retention cohorts (for open-registration deployments)
- API usage — call counts, error rates, by endpoint
- Data aggregation — hourly rollups in a dedicated
analytics_hourlytable, daily/monthly computed from hourly - Retention — raw events 7 days, hourly rollups 90 days, daily rollups forever
- Export — any chart as CSV
SSO Enterprise
Community has basic single-IdP OIDC (v2.1). Pro adds the "sell to companies" tier.
- Multiple OIDC providers simultaneously — users see a list of "Sign in with X" options (Azure AD, Google Workspace, Okta, Auth0, etc.)
- SAML 2.0 — for enterprise IdPs that don't speak OIDC
- Pre-configured IdP templates — one-click setup for common IdPs (paste tenant ID, done) instead of 20-field forms
- Force SSO — admin can disable username/password login, require SSO for all users
- Just-in-time provisioning — user exists in IdP → account auto-created on first login
- Group → role mapping — IdP groups mapped to ZPan roles (e.g.
zpan-admingroup → admin role) - SSO session management — single logout, session timeout tied to IdP policy
LDAP / SCIM Provisioning
- LDAP sync (one-way, IdP → ZPan):
- Configurable search base + filter
- Periodic sync (every N minutes) + on-demand "Sync now"
- User create / update / disable based on LDAP state
- Attribute mapping (email, name, avatar)
- SCIM 2.0 endpoint (IdP pushes to ZPan):
- Expose
/scim/v2/Usersand/scim/v2/Groups - Bearer-token auth per IdP
- Compatible with Okta, Azure AD SCIM, OneLogin
- Expose
- Deprovisioning — LDAP user disabled → ZPan user disabled (not deleted); files preserved, access revoked
Non-goals for v2.8
- Custom RBAC / role builder — future Pro increment
- Retention policies / automatic deletion — future Pro increment
- Multi-tenant isolation (many workspaces per instance as hard tenants) — future Pro increment, likely Team tier
- Analytics API — read via admin UI only for v2.8
- MFA for local accounts — deferred, may ship as separate Community feature
User Scenarios
Series-B startup:
We already use Okta for everything. Setting up ZPan took 10 minutes: paste the Okta metadata URL, map the "engineering" group to admin, turn off password login. New hires get ZPan access automatically via Okta group membership.
Agency running ZPan for multiple projects:
The analytics dashboard is how we justify the spend to clients. "Here's traffic to your share links this month, here's the top files." Export to CSV, paste into the monthly report.
Enterprise with Active Directory:
AD is the source of truth. LDAP sync runs every 5 minutes. When HR offboards someone in AD, their ZPan account is disabled within 5 minutes, files stay where they are for handover.
v1 Issues Resolved
- #18 Purchasable storage — already addressed in v2.6 (ZPan Pro), analytics here surfaces usage clearly