Particular / ServiceControl

Backend for ServiceInsight and ServicePulse
https://docs.particular.net/servicecontrol/
Other
53 stars 47 forks source link

Load trialstartdate from ravenDB #4446

Closed WilliamBZA closed 1 month ago

WilliamBZA commented 2 months ago

A spike to workshop an idea of how to validate the trial start date from RavenDB.

Overrides the active license if the license is a trial license, and if the start dates don't match.

We could also add hashing and date range checking to make this more thorough.

WilliamBZA commented 1 month ago

Ping @ramonsmits and @irinascurtu for a review please

DavidBoike commented 1 month ago

Is this really the best idea? There's nothing container-specific about this, so this will affect Windows-hosted ServiceControl instances as well. With the introduction of this PR, ServiceControl will have a completely separate concept of licensing than anything else running on the system. I could see this becoming pretty confusing.

Plus if we ever want to create new storage options for ServiceControl, this is now an additional use case that must be covered in every single one.

I thought the solution to containers "forgetting" about a trial license was https://github.com/Particular/ServicePulse/pull/2027 ? Why was that not sufficient?

I understand that with the possibility that someone may not be running endpoints, there has to be some way to replicate the "F5 and browser tab opens" license reminder experience. But ServicePulse still seems like a good single place to implement that. Was using the browser's localStorage explored?