【问题标题】:Get currently authorised user in RESTful .NET 4.5 API在 RESTful .NET 4.5 API 中获取当前授权用户
【发布时间】:2013-12-04 08:08:27
【问题描述】:

我正在使用 .NET 4.5 的个人用户帐户部分来验证和授权用户使用 RESTful API (http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api)

但是,我需要弄清楚如何从不记名授权令牌中访问用户 ID,以便为正确的用户返回数据。

如何在无状态 API 中确定正确的用户 ID?

【问题讨论】:

  • 一旦 WebAPI 接受了 Bearer 令牌并对用户进行身份验证/授权,您就可以使用 User.Identity 从控制器代码中获取用户名。
  • 谢谢。在没有 HTTPContext 的情况下挣扎了一分钟……我想我已经加载了相关的命名空间。
  • 是的,UserApiController 的成员,所以您不需要其他任何东西。
  • 您想添加它作为答案吗?我会勾选并投票! ;-)
  • 谢谢 Ben,已经完成了。

标签: c# .net api rest asp.net-4.5


【解决方案1】:

一旦 WebAPI 接受 Bearer 令牌并对用户进行身份验证/授权,您就可以使用 User.Identity 从 API 控制器代码中获取用户名:

例如

// GET api/values
        public IEnumerable<string> Get()
        {
           var userName = User.Identity.Name;
           //and so on...
        }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-04
    • 2020-09-26
    • 1970-01-01
    • 2021-05-08
    • 1970-01-01
    • 2021-03-26
    • 1970-01-01
    相关资源
    最近更新 更多