【问题标题】:Access userManager in api在 api 中访问 userManager
【发布时间】:2019-12-25 10:24:22
【问题描述】:

我在 ASP.Net 核心中有一个应用程序,分为 3 个项目(API、数据、服务)。 API 包含将调用服务项目中的方法的控制器(我将在其中处理数据)。

我现在使用的是 ASP 提供的认证系统,所以我在启动方法中添加了这些行。

services.AddIdentity<IdentityUser,IdentityRole>().AddEntityFrameworkStores<RHPDbContext>();
services.AddAuthentication(options =>
{
    options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
    options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
    options.DefaultScheme = JwtBearerDefaults.AuthenticationScheme;
}).AddJwtBearer(options =>
{
    options.SaveToken = true;
    options.RequireHttpsMetadata = false;
    options.TokenValidationParameters = new Microsoft.IdentityModel.Tokens.TokenValidationParameters()
    {
        ValidateIssuer = true,
        ValidateAudience = true,
        ValidAudience = "RHP User",
        ValidIssuer = "MYIssuer",
        IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("MyRHPSuperKey"))
    };
});

由于我正在制作 API,我将需要基于令牌的身份验证

并且还在startup的configure方法中添加了这一行

app.UseAuthentication();

我现在的问题是如何在我的服务项目中访问userManager,以便我可以添加用户,或获取用户,将角色属性分配给用户......等等

【问题讨论】:

    标签: c# asp.net asp.net-mvc asp.net-core asp.net-web-api


    【解决方案1】:

    这是您可以在控制器类中访问 userManager 的方式。

    public AccountController(UserManager&lt;IdentityUser&gt; userManager)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-31
      • 2018-10-01
      • 2018-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-25
      • 1970-01-01
      相关资源
      最近更新 更多