PlasmoHQ / plasmo

🧩 The Browser Extension Framework
https://www.plasmo.com
MIT License
10.17k stars 352 forks source link

[RFC] Add Secure Container (SES/LavaMoat) #655

Open louisgv opened 1 year ago

louisgv commented 1 year ago

How do you envision this feature/change to look/work like?

Maybe plasmo build --lavamoat or plasmo build --secured or plasmo build --ses?

We can either:

What is the purpose of this change/feature? Why?

For extension that requires high degree of dependency integrity and sandboxing, lavamoat helps a lot with supply chain atk:

https://github.com/LavaMoat/lavamoat#readme

(OPTIONAL) Example implementations

https://github.com/LavaMoat/lavamoat#readme

https://www.npmjs.com/package/@lavamoat/lavapack

(OPTIONAL) Contribution

Verify canary release

Code of Conduct

louisgv commented 1 year ago

The manual integration with SES is simply to import it and call the lockdown function at the top of the entry file.

That should work. Also SES remote integration is not possible since extension cannot run remote code.

louisgv commented 1 year ago

https://github.com/LavaMoat/LavaMoat/blob/main/packages/browserify/examples/01-simple-js/README.md