Add-on Documentation from JCOGS Design

Installation and UpgradeLast updated: 6 August 2026

Fresh Installation

Follow these steps to install SFS Access on your ExpressionEngine site.

  1. Download the SFS Access package from the EE Store, or from the JCOGS.net website.
  2. Upload the jcogs_sfs_access folder to your system/user/addons/ directory.
  3. In ExpressionEngine, go to Developer → Add-ons.
  4. Locate JCOGS Secure File Service - Access and click Install.
  5. Once installed, open the add-on from Add-ons → JCOGS Secure File Service - Access.
  6. Work through initial setup: create your first eligibility pool, then create an enclave from a qualifying above-webroot upload location.

Design note

During installation, SFS Access creates its own database tables covering enclaves, roles, permissions, memberships, eligibility pools, and audit events. These tables are managed by the add-on's migration system to ensure schema consistency across installs and upgrades.

Optional plain-text rewrite setting

If you want SFS Access to rewrite file URLs that appear as plain text in rendered HTML, set the optional jcogs_sfs_access_enable_plain_text_url_rewrite configuration value after installation.

You can set it either in ExpressionEngine config or through your deployment environment. Leaving it off keeps SFS Access to the default attribute-based rewrite behaviour for links, images, poster tags, and srcset entries.

Upgrade Process

Follow these steps to upgrade an existing SFS Access installation to a newer version.

  1. Back up your database and files before starting.
  2. Download the updated SFS Access package.
  3. Replace your existing jcogs_sfs_access folder at system/user/addons/ with the new version.
  4. In ExpressionEngine, go to Developer → Add-ons.
  5. Click Update next to JCOGS Secure File Service - Access. This allows any new database migrations to run.
  6. After updating, review the latest SFS Access changelog notes to identify whether your site uses any affected features. Carry out targeted checks for those areas before returning to normal use.

Suggested targeted post-upgrade checks

  • Confirm the Control Panel navigation and all panels load correctly.
  • Verify that your existing enclaves, pools, and member assignments are intact.
  • Confirm that role permissions display as expected.
  • Use the Effective Access Check panel to validate that a known member has the expected access outcomes.

Optional plain-text rewrite setting

If you use the optional plain-text URL rewrite behaviour, make sure the jcogs_sfs_access_enable_plain_text_url_rewrite setting remains in place after the upgrade.

The setting can be managed through config or environment variable deployment, depending on how your site is configured. If it is not set, SFS Access will continue to rewrite supported HTML attributes only.

First-Run Validation

After a fresh installation, run a full validation pass to confirm initial configuration is sound.

After a routine add-on update, validation can usually be lighter: review current changelog notes, identify whether your site uses affected features, and run targeted checks for those areas.

  • Check Control Panel routes load — open each panel in the SFS Access menu and confirm no error messages are shown.
  • Validate baseline mode first — confirm core Access workflow works without relying on companions.
  • Check Global Settings and Secure Root health — confirm settings save correctly and health state supports your planned workflows.
  • Create a test eligibility pool — add a pool with a simple scope name and confirm the success response.
  • Create a test enclave — create an enclave from a qualifying above-webroot upload location and confirm it is listed as active.
  • Run an OTP-gated mutation test — test one privileged mutation flow and confirm step-up and resume behaviour is working as expected.
  • Run an Effective Access Check — use the built-in check tool with a test member and enclave to validate that policy decisions are returning expected outcomes.
  • Review the Security Activity Log — confirm that your test actions have produced audit entries.

If checks produce unexpected results, contact support@jcogs.net with a summary of the issue and your test steps.

Include the following details in your message:

  • SFS Access version
  • ExpressionEngine version
  • PHP version