有没有一种方法可以阻止查询进入另一台服务器



我制作了一个Json web令牌来保护我的服务,但现在有人使用我的登录服务对我的数据库进行了大量查询。有没有一种方法可以阻止查询进入另一台服务器?

对我的服务器的查询或攻击来自不同的ip和不同的国家。

我使用angular 9和asp.net内核。

// POST: api/Login
[HttpPost]
[AllowAnonymous]
public async Task<IActionResult> Login(UsuarioLogin usuarioLogin)
{
var _userInfo = await AutenticarUsuarioAsync(usuarioLogin.Usuario, usuarioLogin.Password);
if (_userInfo != null)
{
return Ok(new { token = GenerarTokenJWT(_userInfo) });
}
else
{
return Unauthorized();
}
}

在ASP.NET Core 中启用跨源请求(CORS(

有三种方法可以启用CORS:

  • 在使用命名策略或默认策略的中间件中
  • 使用端点路由
  • 带有EnableCors属性

CORS,带命名策略和中间件

public class Startup
{
readonly string MyAllowSpecificOrigins = "_myAllowSpecificOrigins";
public void ConfigureServices(IServiceCollection services)
{
services.AddCors(options =>
{
options.AddPolicy(name: MyAllowSpecificOrigins,
builder =>
{
builder.WithOrigins("http://example.com",
"http://xxxx.com");
});
});
// services.AddResponseCaching();
services.AddControllers();
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
app.UseCors(MyAllowSpecificOrigins);
// app.UseResponseCaching();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}
}

相关内容

  • 没有找到相关文章

最新更新