Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Run modules with Node.js new permissions model #3207

Open
2 tasks done
Julusian opened this issue Jan 6, 2025 · 0 comments
Open
2 tasks done

Run modules with Node.js new permissions model #3207

Julusian opened this issue Jan 6, 2025 · 0 comments
Labels
area/module-api Module related Enhancement New feature or request
Milestone

Comments

@Julusian
Copy link
Member

Julusian commented Jan 6, 2025

Is this a feature relevant to companion itself, and not a module?

  • I believe this to be a feature for companion, not a module

Is there an existing issue for this?

  • I have searched the existing issues

Describe the feature

Node 22.13 promotes the permissions model to stable https://nodejs.org/api/permissions.html meaning that we could utilise this.

Primarily this would allow us to give users assurances that modules they install can or cannot mess with random files on their system.

The module could define in the manifest what permissions they need, which companion can then setup when launching them, and also use for the ui.
We should make the manifest granular in permissions, but in the ui, we may want to simplify it.

Will this be too noisy? bmd-atem uses a worker-thread, so will be flagged by this

To minimise impact to modules, we should start by enabling this only for a new version of the module-base. After a couple of companion releases we could consider either enabling it for all modules using the older lib, or raise the minimum module-base version that we support.

Usecases

Primarily this would allow us to inform users which modules they install can or cannot mess/read random files on their system.

When installing/activating a module, we could indicate the level of permissions that the module requires, as part of a safety warning.

@Julusian Julusian added area/module-api Module related Enhancement New feature or request labels Jan 6, 2025
@Julusian Julusian added this to the v3.develop milestone Jan 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/module-api Module related Enhancement New feature or request
Projects
Status: No status
Development

No branches or pull requests

1 participant