Как мне зарегистрировать пользовательский аккаунт с MembershipReboot.Owin?
Кто-нибудь сделал пример с несколькими арендаторами с пользовательской учетной записью useraboot.owin?
Мне трудно понять, как настроить промежуточное ПО для членства при использовании пользовательской учетной записи. Это не охватывается примерами по умолчанию. И я думаю, что я не достаточно опытен с фанками Funcs. Любая помощь будет оценена.
Спасибо.
Методы OwinExtention выглядят так:
public static class MembershipRebootOwinExtensions
{
public static void UseMembershipReboot<TAccount>(
this IAppBuilder app,
Func<IDictionary<string, object>, UserAccountService<TAccount>> userAccountServiceFactory,
Func<IDictionary<string, object>, AuthenticationService<TAccount>> authenticationServiceFactory = null
)
where TAccount : UserAccount
{
app.Use<MembershipRebootMiddleware<TAccount>>(userAccountServiceFactory, authenticationServiceFactory);
app.UseMembershipReboot();
}
public static void UseMembershipReboot<TAccount>(
this IAppBuilder app,
CookieAuthenticationOptions cookieOptions,
Func<IDictionary<string, object>, UserAccountService<TAccount>> userAccountServiceFactory,
Func<IDictionary<string, object>, AuthenticationService<TAccount>> authenticationServiceFactory = null
)
where TAccount : UserAccount
{
app.Use<MembershipRebootMiddleware<TAccount>>(userAccountServiceFactory, authenticationServiceFactory);
app.UseMembershipReboot(cookieOptions);
}
Как бы я заполнил эти две функции?
Func<IDictionary<string, object>, UserAccountService<TAccount>>
а также
Func<IDictionary<string, object>, AuthenticationService<TAccount>>
2 ответа
Просто получите текущий контекст owin как
var owin = ctx.Resolve<IOwinContext>();
Затем зарегистрируйте свой пользовательский учетную запись как
var owinAuth = new OwinAuthenticationService<CustomUserAccount>(AuthenticationTypes.Negotiate, ctx.Resolve<UserAccountService<CustomUserAccount>>(), owin.Environment);
Надеюсь, еще не поздно.
Образец пользовательской учетной записи пользователя имеет пример использования обобщений:
https://github.com/brockallen/BrockAllen.MembershipReboot/tree/master/samples/CustomUserAccount