Мой проект использует членство asp.net (не Identity), я пытаюсь реализовать OAuth на основе шагов, перечисленных в этой ссылке
Во время тестирования кода он создалтаблицы идентификаторов в моей базе данных (AspNetUsers, AspNetUserRoles, AspNetRoles ...)
Я не хочу использовать эти таблицы, я хочу использовать их с таблицами членства (aspnet_Users, aspnet_Membership ...)
public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
{
var applicationUserManager = context.OwinContext.GetUserManager<ApplicationUserManager>();
//while executing this line, the identity tables are created
var applicationUser = await applicationUserManager.FindAsync(context.UserName, context.Password);
if (applicationUser == null)
{
context.SetError("invalid_grant", "The user name or password is incorrect.");
return;
}
var claimsIdentityOAuth =
await applicationUser.GenerateUserIdentityAsync(applicationUserManager,
OAuthDefaults.AuthenticationType);
var claimsIdentityCookie = await applicationUser.GenerateUserIdentityAsync(applicationUserManager,
CookieAuthenticationDefaults.AuthenticationType);
var properties = CreateProperties(applicationUser.UserName);
var authenticationTicket = new AuthenticationTicket(claimsIdentityOAuth, properties);
context.Validated(authenticationTicket);
context.Request.Context.Authentication.SignIn(claimsIdentityCookie);
}
Как использовать OAuth с членством asp.net?