Now install tools that are only available as github released binaries. And ensure that hashes match for that. Maybe install a tool that needs to be compiled.
There are ways to have passwords transmitted completely encrypted, but it involves hitting the backend for a challenge, then using that challenge to encrypt the password client side before sending. It still gets decrypted on the backend tho before hash and store.
Consider that a 'username+password' is much harder to 'revoke' individually. As in, you can have 3-4 API keys in use, and can revoke any one of them without having to change a password.
You can also change password independently of the keys, or have it linked so keys are revoked on a password change. It also allows traceability as to where accesses are coming from (auditability). If everything is using the same client-id+secret (or usn/pwd), you don't know which 'client' is doing what.
It's barely rating the quality of the actual water coming from the taps. That's a single datapoint among 6 other factors, like customer service of the water utility.
And the source of the ranking (JD Power) doesn't really list any breakdowns of that either.
Blame the thousands of supply chain attacks.