Tôi đã googling hơn một ngày nay. Có thể tôi đang thiếu từ khóa chính xác.Bảo mật khóa API trong Angular2
tôi có các thiết lập sau:
- ExpressJS API (chạy với PM2 trên cổng 3000)
- Angular2 ứng dụng - phục vụ qua nginx
Cả hai chạy trên cùng một máy chủ.
Các cuộc gọi đến các api (mydomain/api /) đều được proxy để 127.0.0.1:3000
Đối với cuộc gọi api mà cần xin phép, tôi sẽ sử dụng JWT và xác thực người dùng.
Điều tôi muốn đạt được là tôi tạo mã thông báo cho ứng dụng angular2 được phép/yêu cầu thực hiện cuộc gọi công khai (danh sách sản phẩm chẳng hạn).
Mã thông báo này cần phải được chuyển an toàn tất nhiên vì tôi không muốn người khác nhận được sản phẩm và giá của tôi qua cuộc gọi api trực tiếp (có mã thông báo bị đánh cắp).
Bất kỳ trợ giúp nào được đánh giá cao.
Xin lỗi, tôi hơi ngu ngốc trong phần này. Tôi sẽ thiết lập https tất nhiên. Nhưng tôi sẽ vẫn phải bao gồm mã thông báo công khai của tôi trong thông số Yêu cầu Header/url từ ứng dụng góc cạnh, vì vậy nó hiển thị cho bất kỳ ai. Hay tôi đang thiếu một cái gì đó? – user1261284
xem wiki, vì https là giao thức tầng ứng dụng, nó cũng đang mã hóa các tiêu đề. – eesdil
Có, bạn cột bao gồm mã thông báo trong mỗi cuộc gọi. Nhưng mã thông báo đó được tạo trên máy chủ ... Tôi có thiết lập tương tự ngay bây giờ (express - angular 2) tôi sẽ gửi luồng công việc của tôi như là câu trả lời ở đây. –