I thought it would be best to start with a clean slate so I created a new SQL login and database user so that I could definitively figure out which permissions are needed.
Normally I use Windows Authentication for my logins, but this time I thought “since I’m getting crazy learning new things, let me try creating a SQL Login instead.”
After I created my login, I decided to test connecting to my server before digging into the permissions. Result?
After the fifth or sixth time it happens to you, you start making that the first thing you check.