I'm trying to find a good standard for a database schema that will let me do a couple things. Mainly, I am writing a web app that needs to handle various types of logins. First being the standard ASP Application Services login, Second being OpenId/oAuth logins and third being Active Directory logins.
What's a good suggestion for a data schema that handles most of these? I plan on using DotNetOpenAuth for oAuth and OpenId. I already know how to get all of these items working individually, but I'm trying to work a way to get them done without a hack to tie them all together.
The application has to manage various permissions based on these users also. Basically, if there is an "Admin" group, then the user whether it's an AD account, OpenId account or Forms Auth account can be added to the group and the application can check permissions either at a page or method level (using MVC).
Open to Suggestions?
EDIT: Since I'm not getting any suggestions, I'll try to clearify. Basically if I get an Identifer (say it's either OpenId user key, oAuth user key or AD domain/user), how can I tie this to a standard ASP Membership Profider profile/user? Should I create a new Membership User with a random password and link the OpenId/oAuth/AD account to the profile via properties?
Basically, I'm looking for something similar to this site. User logs in via something, a profile gets created, that something is stored so we know what it is. Essentially I just need an idea how to get all these authentication methods to work together.
Thanks!