Identidade do ASP.NET, adicione outro usuário à função instantaneamente (eles não precisam sair e entrar novamente)

Primeiro de tudo, estou ciente desta pergunta:O MVC 5 AddToRole requer logout antes de funcionar?

e este:O que é a interface IUserSecurityStampStore <TUser> do ASP.NET Identity?

portanto, não marque isso como duplicado.

Estou tentando adicionar outro usuário a uma função (ou seja, o usuário que estamos adicionando à função não é o usuário atual. Se for, a resposta à primeira pergunta à qual vinculei será suficiente.)

Igual a:

IdentityResult result = await userManager.AddToRoleAsync(userID, roleName);

As duas situações em que estou fazendo isso são: em uma página de administrador, onde o usuário atual é o administrador; e um webhook protegido com autenticação básica (onde não há usuário atual).

O PROBLEMA: se o usuário ao qual essa alteração se aplica estiver conectado e usando o aplicativo, preciso que a alteração "adicionar à função" seja aplicada instantaneamente. Eles não devem ter que sair e entrar novamente para que a alteração ocorra, e ela precisa acontecer imediatamente.

Obrigado a todos.

EDIT: A propósito, User.IsInRole (roleName) requer logout e logon para refletir a inclusão na nova função. UserManager.IsInRole (userID, roleName) não, porque (presumo) ele vai direto para as tabelas do banco de dados para verificar. Mas se o usuário acessar um método de ação protegido com a função à qual acabou de ser adicionado, ainda precisará fazer login novamente, o que é justo. Ainda curioso se há uma maneira de contornar isso.

EDIT: Aqui está o código-fonte para o atributo Autorizar:https://github.com/ASP-NET-MVC/aspnetwebstack/blob/4e40cdef9c8a8226685f95ef03b746bc8322aa92/src/System.Web.Mvc/AuthorizeAttribute.cs

Ele usa User.IsInRole, que é basicamente o motivo pelo qual precisamos fazer login novamente. Parece que o método a ser substituído é AuthorizeCore (HttpContextBase httpContext). Eu não sou corajoso ou bom o suficiente para mexer com isso agora, mas se você quiser experimentar muitas pessoas acharão isso útil.

questionAnswers(1)

yourAnswerToTheQuestion