代码之家  ›  专栏  ›  技术社区  ›  bielu000

自己的认证和自动化服务器ASP NET核心

  •  0
  • bielu000  · 技术社区  · 6 年前

    我想创建自己的本地身份验证服务器,但我不知道该怎么做。

    大多数文章都是关于OAuth、Identity4Server、Google、Facebook等身份验证的,但是我找不到任何关于定制解决方案的文章。 在这个问题上,msdn也很差。

    现在我有了这样的东西:

        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
            services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
                .AddJwtBearer(o =>
                {
                    o.MetadataAddress = "http://localhost:5000";
                    o.Authority = "http://localhost:5000";
                    o.Audience = "http://localhost:5001";
                    o.RequireHttpsMetadata = false;
                    o.TokenValidationParameters = new TokenValidationParameters
                    {
                        ValidIssuer = "http://localhost:5000",
                        ValidAudience = "http://loclhost:5001",
                    };
                })
                ;
    
        }
    

    我是否正确地认为权限是我的身份服务器的地址? 所以当我使用时为什么:

        [HttpGet, Authorize, Route("/")]
        public async Task<IActionResult> Get()
        {
            return Content("You are autorized.");
        }
    

    我的授权服务器有任何请求吗?

    我是否需要创建自己的身份验证方案,将请求发布到我的授权服务器,或者jwtbearer authentication scheme中有内置机制?

    1 回复  |  直到 6 年前
        1
  •  0
  •   j-hurst    6 年前

    IdentityServer只是自定义解决方案的构建基块。它有助于将所有中间件连接在一起,因此您不必从头开始。

    如果您想编写一个自定义的身份验证解决方案,我的建议是从IdentityServer开始并从那里定制它。