-
Notifications
You must be signed in to change notification settings - Fork 23
Description
Is your feature request related to a problem? Please describe.
Currently, Surfactant's SBOM exploration is limited to local or directly accessible file systems. For some systems, maybe we will only have access over SSH and either not being able (or wanting) to install Surfactant directly on the system. This introduces constraints such as bandwidth limitations, which may restrict how much of large files can be read or scanned, and file system permissions, which could limit visibility or readability of files.
Describe the solution you'd like
Add support for exploring creating SBOMs from remote file systems accessed over SSH. The implementation should:
- Respect bandwidth limitations by allowing partial reads or configurable scan limits per file.
- Gracefully handle permission errors (files that cannot be read or listed).
- Provide meaningful feedback to users about inaccessible files and skipped data.
- Optionally allow users to specify inclusion/exclusion patterns based on file size, type, or directory.
- Integrate seamlessly with existing Surfactant workflows (CLI, TUI, plugins).
Potential alternatives
- Mounting remote file systems locally via SSHFS (may not work in all environments or with restrictive permissions).
- Copying files locally before analysis (may not scale for large file systems and could increase security risks).
Additional context
For this, we'd need to consider SSH authentication (keys, password), error handling, and potential integration with existing SSH libraries. Bandwidth and permission constraints will be important design considerations, since currently we just assume we will be able to read all files.