How would one go about linking external accounts to an already existing account?
I have totally failed to find any answers to this. I (a student) have tried to log in to my Canvas account using my GitHub credentials. It created a new user instead, even though both accounts use the exact same email, and GitHub even says that Canvas can access my account's email (that is, the email used to create my account, not the email created by my GitHub account. If this doesn't make sense, that's okay. Just ignore it). If Canvas can already access my email from my GitHub account, why doesn't it check if this email belongs to any existing user (easy to do), and if there is, asks if you would like to link the accounts (less easy, but still quite viable) so you can use any authentication to log in (that you have already linked, that is).
This would be beneficial to many users; I know I forget my passwords all the time. I use certain accounts (e.g., my Google and GitHub accounts) often enough that there is little to no chance that I'll forget their passwords; implementing this would prevent being unable to log in (for whatever reason) for a large portion of the user base.
If this is already implemented, I'm here to tell you... it's really not. I tried to log in with my GitHub account (I'd already signed up with the exact same email) and it tried to create a new account for me. I went through with it (which was my error), thoroughly confusing and frustrating me (and my