Naturally, as the business owner, I'm always interested in receiving feedback from our customers and partners around the world.
In that case, my other piece of feedback is around security/best practices of installs/support.
To be clear, it's 100% possible to install everything in a secure/best practices manner, it's just not what is done by default.
Some example:
1. JWT token is stored in drivers/etc/hosts/voiptools/ and not something that should be done. Program files should be stored in program files, like program files\voiptools\common\ in this case. Using NTFS ACLs to restrict as needed. Configuration data in programdata (as is already done). And so on.
2. Support LOVES to flip ACLs to USERS FULL CONTROL on every folder used by VT. It doesn't need to be done, but it's like troubleshooting step #1 apparently. This is bad for many reasons. I'm surprise they don't go disabling UAC as the second step.
3. Every service installs using a local account to run the service. A local admin that it creates with a super short easy to see password. It should use a service account (a group managed service account, aka a
gMSA) instead, for many reasons.
4. Everything wants to use SA for SQL access. Again, use a service account (the same gMSA mentioned above) that is NOT a sysadmin in SQL (dbo on the specific DB is fine).
So yes, I can go in after the installer is done and make changes. Revoke Sysadmin in SQL. Change the service account on the services. Fix the ACLs on the folders. and so on. But I shouldn't have to and it makes it a pain, especially during upgrades.
Look, I get it - you are writing software and installs for the lowest common denominator. Maybe the client doesn't have a domain or has really bad ACLs on their machines or other uncontrollable setups. How do you account for that, what load do you want to put on support, etc. Still, we all have a responsibility to push security forward and in 2024, this is really a bare minimum.