Может ли кто-нибудь использовать мой сервис с другого сервера? Angular 9 - PullRequest
1 голос
/ 28 апреля 2020

Я учусь angular и у меня есть вопрос о безопасности. Я использую angular 9.

Может ли кто-нибудь использовать мой сервис с другого сервера?

Я говорю это, потому что беспокоюсь, что другой человек использует URL службы для доступа к моей базе данных.

Например: Это мой контроллер в asp. net

[HttpGet]
    [Route("api/Producto/listarProductos")]
    public IEnumerable<ProductoCLS> listarProductos()
    {
        using (BDRestauranteContext bd=new BDRestauranteContext())
        {
            List<ProductoCLS> lista = (from producto in bd.Producto
                                       join categoria in bd.Categoria
                                       on producto.Iidcategoria equals
                                       categoria.Iidcategoria
                                       where producto.Bhabilitado == 1
                                       select new ProductoCLS
                                       {
                                           idproducto = producto.Iidproducto,
                                           nombre = producto.Nombre,
                                           precio =(Decimal)producto.Precio,
                                           stock =(int) producto.Stock,
                                           nombreCategoria = categoria.Nombre 
                                       }).ToList();

            return lista;

        }
    }

Это мой сервис в angular:

    public getProducto() {
    return this.http.get(this.urlBase + 'api/Producto/listarProductos');
  }

1 Ответ

2 голосов
/ 28 апреля 2020

Вам необходимо добавить авторизацию logi c как на стороне клиента, так и на стороне сервера.

Со стороны Angular
https://jasonwatmore.com/post/2018/09/07/angular-6-basic-http-authentication-tutorial-example

С точки Net Сторона ядра
https://jasonwatmore.com/post/2018/09/08/aspnet-core-21-basic-authentication-tutorial-with-example-api


После входа в систему вы получите 'authentication-token'. Все ваши последующие HTTP-запросы будут иметь заголовок «Авторизация» и на стороне сервера - вам необходимо настроить его так, чтобы он принимал только те HTTP-запросы, которые имеют заголовки авторизации.

Вы можете иметь множество различных методы аутентификации, такие как Azure аутентификация AD, Facebook, Google, github et c.

...