我有一个使用OAuthBearerTokens的ASP.NET Webapi2服务器。
OAuthOptions = new OAuthAuthorizationServerOptions
{
TokenEndpointPath = new PathString("/api/token"),
Provider = new MyOAuthProvider(),
AccessTokenExpireTimeSpan = TimeSpan.FromDays(14),
AllowInsecureHttp = true //in production firewall blocks all insecure connections
};
我可以使用用户名和密码登录/ api / token并获得一个令牌作为回报,这将在每个后续请求中使用。
现在我想创建impersonate的功能。基本上某个(超级)用户可能会要求以系统中的另一个用户身份登录(不知道其他用户的密码和密码没有以明文形式存储)。
示例:POST:/ api / impersonate / [username]返回与/ api / token相同的结果,但不需要密码,而是要求用户具有模仿权限。
任何人都有任何涵盖此类用法的指南/教程?或者可以提供一些关于从哪里开始的提示。
答案 0 :(得分:0)
如果我没有解决你的问题,你可以尝试使用刷新令牌(用作替换对:密码和登录),这并不容易。我建议你阅读这篇文章http://bitoftech.net/2014/06/01/token-based-authentication-asp-net-web-api-2-owin-asp-net-identity/可能对你有用。