Bảo mật dặm cuối

Bạn đang xem tài liệu về Apigee Edge.
Truy cập vào tài liệu Apigee X.
thông tin

Bảo mật chặng cuối giúp bảo vệ các dịch vụ phụ trợ được uỷ quyền bởi Dịch vụ API. Mục tiêu chính của tính năng bảo mật chặng cuối là ngăn chặn các cuộc tấn công "chạy cuối", trong đó nhà phát triển ứng dụng phát hiện ra URL của một dịch vụ phụ trợ và bỏ qua mọi proxy API để truy cập trực tiếp vào URL phụ trợ.

Sau đây là các lựa chọn chính để thiết lập bảo mật ở chặng cuối:

  • TLS/SSL của ứng dụng
  • Xác thực cuộc gọi đi
  • Mô-đun tls của Node.js

TLS/SSL của ứng dụng

Cơ chế chính để bảo mật chặng cuối là TLS/SSL của máy khách, còn được gọi là "xác thực lẫn nhau".

Xem phần Định cấu hình TLS từ Edge đến phần phụ trợ (Cloud và Đám mây riêng tư).

Xác thực cuộc gọi đi

Bạn cũng có thể thực thi tính năng bảo mật ở chặng cuối bằng cách yêu cầu proxy API xuất trình thông tin đăng nhập cho dịch vụ phụ trợ.

Ví dụ: bạn có thể muốn một proxy API trình bày khoá API cho dịch vụ phụ trợ của mình. Bạn cũng có thể có một proxy API lấy và trình bày mã truy cập bằng chứng xác thực qua giao thức OAuth của ứng dụng OAuth.

Khóa API

Bạn có thể áp dụng khoá API cho các yêu cầu đi ra từ các proxy API đến các dịch vụ phụ trợ. Điều này giả định rằng dịch vụ phụ trợ là một API có khả năng phát hành và xác thực khoá API.

Nếu thiết lập một proxy API để trình bày khoá API trong các yêu cầu đi, bạn phải lưu trữ khoá API ở một nơi mà proxy API có thể truy xuất được trong thời gian chạy. Một vị trí có sẵn để lưu trữ khoá API là bản đồ khoá/giá trị. Xem Chính sách về các thao tác trên bản đồ khoá-giá trị.

Bạn có thể sử dụng loại chính sách AssignMessage để thêm khoá API dưới dạng tiêu đề HTTP, tham số truy vấn hoặc phần tử tải trọng vào yêu cầu gửi đi. Xem Chính sách chỉ định thông báo.

Thông tin đăng nhập của ứng dụng OAuth

Bạn có thể dùng thông tin xác thực ứng dụng OAuth để thêm một lớp khả năng thu hồi vào khoá API. Nếu các dịch vụ phụ trợ của bạn hỗ trợ thông tin xác thực ứng dụng OAuth, bạn có thể định cấu hình một proxy API để trình bày mã truy cập thông tin xác thực ứng dụng cho từng yêu cầu.

Bạn phải định cấu hình proxy API để thực hiện một lệnh gọi nhằm lấy mã truy cập từ điểm cuối mã thông báo của bạn. Bạn cũng phải dùng proxy API để lưu mã truy cập vào bộ nhớ đệm, nhằm ngăn việc proxy này nhận mã truy cập mới cho mỗi lệnh gọi.

Bạn có thể sử dụng một số phương pháp để triển khai thông tin đăng nhập của máy khách gửi đi.

Bạn có thể sửa đổi mẫu này để gọi điểm cuối mã thông báo nhằm lấy mã truy cập. Mẫu này sử dụng JavaScript để đính kèm mã thông báo vào yêu cầu đi dưới dạng tiêu đề Uỷ quyền HTTP. Bạn cũng có thể sử dụng chính sách Gán thông báo cho mục đích này.

SAML

Bạn có thể dùng loại chính sách GenerateSAMLAssertion để đính kèm một câu khẳng định SAML vào thông báo yêu cầu XML đi ra, từ proxy API đến một dịch vụ phụ trợ. Điều này cho phép dịch vụ phụ trợ thực hiện xác thực và uỷ quyền đối với các yêu cầu nhận được từ các proxy API.

Xem Chính sách về SAML Assertion.

Node.js

Nếu đích đến của proxy API là một ứng dụng Node.js, bạn có thể sử dụng mô-đun tls Node.js để tạo các kết nối an toàn đến các dịch vụ phụ trợ. Bạn đưa ra các yêu cầu đi bằng mô-đun tls theo cách tương tự như cách bạn thường làm trong Node.js. Về cơ bản, bạn cần thêm các khoá và chứng chỉ phía máy khách (tệp .pem) vào thư mục resources/node và tải chúng trong tập lệnh. Để biết thông tin về cách sử dụng mô-đun tls và các phương thức của mô-đun này, hãy xem tài liệu về mô-đun tls của Node.js. Để biết thêm thông tin, hãy xem phần Tìm hiểu về khả năng hỗ trợ Edge cho các mô-đun Node.js.