Documentation

Documentation versions (currently viewingVaadin 23)
Check out the new styling guides

Security Practices at Vaadin

Provides an overview of the steps Vaadin takes to ensure your application remains secure.

Releasing Security Patches

Security fixes are implemented as fast as possible and released for all currently supported versions. The fix is mentioned in the release notes, and we also send a separate security notification email to all our registered users, explaining the issue and how to fix it (typically by updating to a new maintenance version).

How Users Can Report Security Issues

If a developer or user finds a potential security issue, they can report it directly to security@vaadin.com. The issue will be reviewed and fixed internally, before publishing to GitHub (see vaadin.com/security for more details).

If the issue is minor and public discussion is OK, issues can reported directly in GitHub.

Internal Security Practices

All code that is committed at Vaadin goes through an internal code review before it is merged. Each change is also run against our existing battery of tens of thousands of unit, integration and behavior tests that have to be passed in order for the merge to be accepted.

Developers are also encouraged to actively think about security issues while developing the framework and its parts. At Vaadin, we take security extremely seriously. Anyone can escalate an issue that they think might be a security issue, and investigating the issue is given priority over other tasks.

Third-Party Libraries

Vaadin always updates dependencies on third-party libraries when security patches for them are released. When necessary, a new maintenance version of Vaadin is created to apply the fix.

In most cases, developers can also specifically update versions of external libraries using Maven, if updated versions of Vaadin libraries are not yet available. This is done by adding a new dependency definition to the project pom.xml file with the required library and version number. This causes Maven to override the Vaadin-defined version of the dependency with whichever version the developer specified.

47E137B3-0CC3-435B-9FDB-A24C592C5624