Thiết lập và định cấu hình Edge Microgateway

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến tài liệu về Apigee X.
thông tin

Edge Microgateway phiên bản 2.3.x

Tổng quan

Hướng dẫn này sẽ chỉ cho bạn các bước cần thiết để thiết lập và chạy thực thể của Edge Microgateway.

Sau khi hoàn tất các bước ở đây, bạn sẽ có một bản cài đặt Edge Microgateway được định cấu hình đầy đủ, đang hoạt động có khả năng xử lý các yêu cầu API. Bạn sẽ kiểm thử chế độ thiết lập bằng cách thực hiện các lệnh gọi API bảo mật thông qua Edge Microgateway tới một mục tiêu phụ trợ. Bạn cũng sẽ tìm hiểu cách thêm trình bổ trợ bắt giữ tăng đột biến vào Microgateway.

Hướng dẫn này được chia thành các phần sau:

Điều kiện tiên quyết: Cài đặt Edge Microgateway

Làm theo hướng dẫn trong phần Cài đặt Microgateway. Khi hoàn tất quá trình cài đặt, bạn có thể làm theo các bước trong hướng dẫn này.

Khi bạn hoàn tất việc cài đặt, hãy chuyển sang phần tiếp theo, "Phần 1: Định cấu hình cổng vi cổng".

Phần 1: Định cấu hình vi cổng cho Edge

Trong phần này, bạn sẽ sử dụng lệnh giao diện dòng lệnh (CLI) để định cấu hình Edge Microgateway nhằm giao tiếp với Apigee Edge. Nếu bạn đang dùng Apigee Edge Cloud, hãy làm theo các bước định cấu hình API Apigee Edge Cloud. Nếu bạn đang sử dụng Apigee Private Cloud, hãy làm theo các bước dành cho Apigee Edge Private Cloud.

Các bước định cấu hình Đám mây API

Hãy làm theo các bước sau để sử dụng Edge Microgateway với Apigee Edge Cloud:

  1. Nếu trước đây bạn chưa làm như vậy, hãy khởi chạy Edge Microgateway (bạn chỉ cần thực hiện bước này một lần):
    edgemicro init
    
  2. (Không bắt buộc) Trợ giúp in cho lệnh edgemicro values:
    edgemicro configure -h
    
  3. Thực thi lệnh sau để định cấu hình Edge Microgateway:
    edgemicro configure -o [org] -e [env] -u [username] 
    

    Trong trường hợp:

    • org là tên tổ chức của bạn trong Edge (bạn phải là quản trị viên tổ chức).
    • env là một môi trường trong tổ chức của bạn (chẳng hạn như thử nghiệm hoặc sản phẩm).
    • username là địa chỉ email liên kết với tài khoản Apigee của bạn.

Ví dụ

edgemicro configure -o docs -e test -u jdoe@example.com

Kết quả

./edgemicro configure -o docs -e test -u jdoe@apigee.com
password:
current nodejs version is v6.1.0
current edgemicro version is 2.2.3-beta
password:
file doesn't exist, setting up
Give me a minute or two... this can take a while...
App edgemicro-auth deployed.
creating vault
adding private_key
adding public_key
configuring host edgemicroservices-us-east-1.apigee.net for region us-east-1

saving configuration information to: /Home/.edgemicro/wwitman-test-config.yaml

vault info:
 -----BEGIN CERTIFICATE-----
MIICpDCCAYwCCQCaDpaTttaDANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3QwHhcNMTYxAxMjA0NzIyWhcNMTYxMTAyMjA0NzIyWjAUMRIwEAYD
VQQDEwlsb2NhbGhvcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDA
YbtbsFe50GgBrI8QTih5yzxxxvCfdubGrLWmovwwCCFthno3u8lS54ekOL9jQu
JTJsocJfNhZxvnXifDsCk5Muwx87Z/D0BYLw9ZhM8TMyA2MCkXgC6RfKT69IdJ
jT3X+3D0s+apr3lACsDhgOfaeQfeHAm1SSwH/VemaJqdImGkQMtM8uscMDwG6k
vBbCSNS+hh6ZH1m3tAkcKXqvj/E1hbrHNTWr+uiYFRByUzeo1I607daQD4Lxid
il4Ng3hr3LC1gEzvobWgVyhQ2ovYB57T886H7dGghTnOUxLm2y/TwmQya+44SL
JSsDwauArMF38cRKZZ7VAgMBAAEwDQYJKoZIhvcNAQELBQADEBAHwwu+gOn8Tq
jKOYBTXtOX11HPMTxmyvZ/I57R4roE7Z/lXg/DXwbiFpFG2uamXNKq7yTDJH2i
iiqdERZOGfv7TJMjRlxEnfVHoCV7UKguKq4zeeAEU2x55yFwpWNrarx0kMXRwI
v3WgGfo2bimFQrCjDCNIkDKmYYt4SXIF5zUJmBWPCaK9aJoQb7ARXQO9s2zoOI
XZ5bCUDbehQZ+6LyqC0hgDXiIZYy7R0j93yCbQgoHaHUMEprJEEjE24SHdsWBO
nxGZxB20JLq5AHTm8lbZp7XtvbU0jVpxyrBo2/olFnmpvBVOq9eIp042IVD7nT
J4rPejdK6C4=
-----END CERTIFICATE-----

The following credentials are required to start edge micro
  key: e88ec9d5da17cd88ca338d532b7c7a8c4f43ddd3da139d95955ab345af30352d
  secret: d7f64854eb6889d06b809dd7c161dba5eeba4a2657277fd819921bf992221a8f

edgemicro configuration complete!
    

Các bước định cấu hình Đám mây riêng tư API

Hãy làm theo các bước sau để sử dụng Edge Microgateway bằng Apigee Private Cloud:

  1. In thông tin trợ giúp cho lệnh edgemicro private configuration (định cấu hình riêng tư Edgemicro). Bạn có thể in thông tin trợ giúp theo cách này cho mọi tuỳ chọn lệnh hoặc lệnh của Edge Microgateway CLI.
    edgemicro private configure -h
    
  2. Thực thi lệnh sau. Tính năng này yêu cầu thông tin tiêu chuẩn về tài khoản đám mây riêng tư Apigee Edge của bạn: tên tổ chức, tên môi trường, tên người dùng (địa chỉ email), mật khẩu, IP máy chủ quản lý và IP bộ định tuyến. Bạn phải là quản trị viên của tổ chức Edge thì mới có thể sử dụng lệnh này:
    edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]
    

    Trong trường hợp:

    • org là tên tổ chức của bạn trong Edge (bạn phải là quản trị viên tổ chức).
    • env là một môi trường trong tổ chức của bạn (chẳng hạn như thử nghiệm hoặc sản phẩm).
    • runtime_url là URL thời gian chạy cho phiên bản đám mây riêng tư của bạn.
    • mgmt_url là URL của máy chủ quản lý cho phiên bản đám mây riêng tư của bạn.
    • username là địa chỉ email liên kết với tài khoản Apigee của bạn.
    • virtual_host là một danh sách tên máy chủ ảo được phân tách bằng dấu phẩy. Giá trị mặc định là default,secure

Ví dụ

edgemicro private configure -o docs -e test -u jdoe@example.com -r http://192.162.52.106:9001 -m http://192.162.52.106:8080 -v default

hoặc nếu có bí danh máy chủ ảo là myorg-test.mycompany.com, bạn sẽ dùng một lệnh như sau:

edgemicro private configure -o docs -e test -u jdoe@example.com -r myorg-test.mycompany.com -m http://192.162.52.106:8080 -v default

Kết quả

delete cache config
checking for previously deployed proxies
configuring edgemicro internal proxy
deploying edgemicro internal proxy
deploying  edgemicro-auth  app
copy auth app into tmp dir
copy config into tmp deer
Give me a minute or two... this can take a while...
App edgemicro-auth added to your org. Now adding resources.

checking org for existing vault creating vault adding private_key adding public_key
configuring host http://192.168.52.106:9001 for region dc-1

saving configuration information to: /Users/ApigeeCorporation/.edgemicro/jdoe-test-config.yaml 
vault info: 
-----BEGIN CERTIFICATE----- 
MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWxKWBDP9o 
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa 
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd 
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L 
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j 
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X 
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd 
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz 
pFkIxepyr/0= 
-----END CERTIFICATE----- 

The following credentials are required to start edge micro 
   key: a3f8f3dfe39158fc3c50b274f0af2234246e0d5f6ea4dd09389b645147151ba3 
   secret: 3e9904802fb3c0e8ca408128a11119cf13546d54dac30ace944c097a726a1263

edgemicro configuration complete!
    

Xác minh việc cài đặt

Chạy lệnh này để xác minh chế độ cài đặt. Nếu không có lỗi nào được báo cáo, mọi thứ sẽ được thiết lập đúng cách và bạn sẽ có thể khởi động Edge Microgateway thành công.

edgemicro verify -o [org] -e [env] -k [key] -s [secret]

Trong trường hợp:

  • org là tên tổ chức của bạn trong Edge (bạn phải là quản trị viên tổ chức).
  • env là một môi trường trong tổ chức của bạn (chẳng hạn như thử nghiệm hoặc sản phẩm).
  • key là khoá được lệnh cấu hình trả về trước đó.
  • secret là khoá được lệnh cấu hình trả về trước đó.

Ví dụ

edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f664ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0556d7132afbd03625bbd85dc34ebfefae4f23fbcb3c

Giới thiệu về cấu hình

Tất cả cấu hình được thực hiện cho đến nay đều cho phép Edge Microgateway tự khởi động với Apigee Edge. Sau khi khởi động thành công, Edge Microgateway sẽ truy xuất một lượng lớn thông tin cấu hình bổ sung từ Apigee Edge.

Thông tin cấu hình này dùng để làm gì? Như chúng ta sẽ khám phá trong phần tiếp theo của hướng dẫn này, khi Edge Microgateway khởi động, nó cần nhận được một danh sách các proxy API nhận biết Edge Microgateway đặc biệt từ Apigee Edge. Trong phần tiếp theo của hướng dẫn này, bạn sẽ tạo một proxy nhận biết vi cổng. Edge Microgateway hạn chế ứng dụng chỉ gọi các API được đặt trước bởi các proxy API nhận biết vi cổng này. Đồng thời, các ứng dụng sẽ được yêu cầu (theo mặc định) trình bày mã thông báo bảo mật hợp lệ cho mỗi lệnh gọi. Để đọc thêm về các proxy này, hãy xem phần "Những điều bạn cần biết về proxy nhận biết Edge Microgateway trong bài viết Tổng quan về Edge Microgateway.

Là quản trị viên tổ chức của Edge, bạn sẽ muốn biết rằng bạn có thể thêm các proxy nhận biết Edge Microgateway vào các sản phẩm của Edge, giống như mọi proxy khác. Thông qua việc sử dụng các sản phẩm và ứng dụng dành cho nhà phát triển, bạn có thể tạo các mã thông báo bảo mật dành riêng cho ứng dụng để kiểm soát quyền truy cập vào các API được gọi thông qua Edge Microgateway. Xin nhắc lại rằng các mẫu hình liên quan đều giống hệt khi bạn làm việc với mọi proxy API, sản phẩm và ứng dụng dành cho nhà phát triển trên Apigee Edge. Nếu bạn muốn tìm hiểu thêm về các sản phẩm, hãy bắt đầu bằng phần Sản phẩm API là gì? trong tài liệu về Edge.

Tiếp theo, chúng ta sẽ tìm hiểu cách tạo các proxy nhận biết Edge Microgateway. Sau đó, chúng ta sẽ khởi động Edge Microgateway và kiểm thử việc thiết lập.

Phần 2: Tạo thực thể trên Apigee Edge

Trong phần này, bạn sẽ tạo các thực thể sau trên Edge:

  • A Proxy nhận biết vi cổng – Đây là một proxy đặc biệt mà Edge Microgateway có thể khám phá khi khởi động. Proxy nhận biết cổng nhỏ có một quy ước đặt tên mà bạn phải tuân theo: tên phải đi kèm với edgemicro_. Ví dụ: edgemicro_hello hoặc edgemicro_userinfo. Khi Edge Microgateway khởi động, Edge Microgateway sẽ truy xuất từ Edge một danh sách các proxy nhận biết cổng vào từ cùng một tổ chức và môi trường Edge mà bạn đã chỉ định khi khởi động Edge Microgateway.

    Đối với mỗi proxy nhận biết cổng vi mô, Edge Microgatway sẽ truy xuất URL mục tiêu của proxy và đường dẫn cơ sở của proxy đó. Các proxy nhận biết vi cổng cũng cung cấp một cách thuận tiện để liên kết dữ liệu phân tích do Edge Microgateway tạo ra với một proxy trên nền tảng Edge. Vì Microgateway xử lý các lệnh gọi API nên sẽ đẩy dữ liệu phân tích lên Edge một cách không đồng bộ. Dữ liệu phân tích sẽ hiển thị trong giao diện người dùng Edge Analytics dưới(các) tên proxy nhận biết cổng vào, giống như với bất kỳ proxy nào khác.
  • Sản phẩm, ứng dụng dành cho nhà phát triển và nhà phát triển – Edge Microgateway sử dụng các sản phẩm, nhà phát triển và ứng dụng dành cho nhà phát triển để bật mã truy cập OAuth2 hoặc bảo mật khoá API. Khi khởi động, Edge Microgateway sẽ tải tất cả cấu hình sản phẩm xuống từ tổ chức Apigee của bạn. Công cụ này sử dụng thông tin này để xác minh các lệnh gọi API được thực hiện thông qua Edge Microgateway bằng các khoá API hoặc mã truy cập OAuth2.

Đọc thêm: Xem thêm "Những điều bạn cần biết về proxy nhận biết Edge Microgateway" trong Tổng quan về Edge Microgateway.

1. Tạo một proxy API nhận biết cổng vi mô trên Edge

  1. Đăng nhập vào tổ chức của bạn trên Apigee Edge.
  2. Nhấp vào CHUYỂN SANG CLASSIC để chuyển đến giao diện người dùng Edge Classic.
  3. Chọn API > API Proxies (API > Proxy API) trên trình đơn trên cùng.
  4. Trong trang Proxy API, hãy nhấp vào + Proxy API.
  5. Trong trình hướng dẫn Tạo proxy, hãy chọn Đảo ngược proxy (phổ biến nhất).
  6. Nhấp vào Tiếp theo.
  7. Trong trang Chi tiết của trình hướng dẫn, định cấu hình như sau. Hãy nhớ điền chính xác vào trình hướng dẫn như được hiển thị:
    • Tên proxy: edgemicro_hello
    • Đường dẫn cơ sở proxy: /hello
    • API hiện có: http://mocktarget.apigee.net/
  8. Nhấp vào Tiếp theo.
  9. Trên trang Bảo mật của trình hướng dẫn, hãy chọn Pass through (none) (Thông qua (không có)).
  10. Nhấp vào Tiếp theo.
  11. Trên trang Virtual Hosts (Máy chủ ảo) của trình hướng dẫn, hãy chấp nhận các giá trị mặc định.
  12. Nhấp vào Tiếp theo.
  13. Trong trang Tạo của trình hướng dẫn, xem lại cài đặt proxy của bạn. Hãy nhớ chọn môi trường kiểm thử.
  14. Nhấp vào Build and Deploy (Tạo và triển khai).

2. Tạo một sản phẩm

Tạo một sản phẩm chứa hai proxy:

  • Proxy nhận biết cổng vào cổng của bạn: edgemicro_hello
  • Proxy xác thực do Edge Microgateway cài đặt: edgemicro-auth.
  1. Trong giao diện người dùng Edge (Phiên bản cũ), hãy chuyển đến phần Xuất bản > Sản phẩm.
  2. Trên trang Sản phẩm, hãy nhấp vào + Sản phẩm. Điền vào trang Chi tiết sản phẩm như sau:
    • Tên: EdgeMicroTestProduct
    • Tên hiển thị: EdgeMicroTestProduct
    • Môi trường: thử nghiệm và sản phẩm
    • Quyền truy cập: Công khai
    • Loại phê duyệt chính: Tự động
    • Tài nguyên:
      • Proxy API: Chọn edgemicro_hello
      • Sửa đổi: 1
      • Đường dẫn tài nguyên: /**
  3. Nhấp vào Import Resource (Nhập tài nguyên).
  4. Trong phần Tài nguyên, hãy nhấp vào +API Proxy
  5. Chọn edgemicro-auth
  6. Nhấp vào Lưu.

3. (Không bắt buộc) Tạo một nhà phát triển kiểm thử

Nhằm mục đích của hướng dẫn này, bạn có thể sử dụng bất kỳ nhà phát triển hiện có nào cho bước tiếp theo, đó là tạo ứng dụng dành cho nhà phát triển. Tuy nhiên, nếu muốn, bạn hãy tạo ngay một nhà phát triển kiểm thử:

  1. Chuyển đến Xuất bản > Nhà phát triển.
  2. Trên trang Sản phẩm, hãy nhấp vào + Nhà phát triển.
  3. Điền vào hộp thoại để tạo nhà phát triển kiểm thử.

4. Tạo ứng dụng của nhà phát triển

Bạn sẽ sử dụng thông tin xác thực ứng dụng khách từ ứng dụng này để thực hiện lệnh gọi API bảo mật thông qua Edge Microgateway:

  1. Chuyển đến phần Xuất bản > Ứng dụng dành cho nhà phát triển.
  2. Trong trang Ứng dụng của nhà phát triển, hãy nhấp vào + Ứng dụng dành cho nhà phát triển.
  3. Điền vào Trang ứng dụng dành cho nhà phát triển như sau:
    1. Tên: EdgeMicroTestApp
    2. Tên hiển thị: EdgeMicroTestApp
    3. Nhà phát triển: Nếu bạn đã tạo một nhà phát triển kiểm thử, hãy chọn nhà phát triển đó. Hoặc bạn có thể sử dụng bất kỳ nhà phát triển hiện có nào để phục vụ cho mục đích của hướng dẫn này.
    4. Thông tin xác thực:
      1. Chọn Ngày hết hạn: Không bao giờ.
      2. Nhấp vào + Product (+ Sản phẩm) rồi chọn EdgeMicroTestProduct (sản phẩm mà bạn vừa tạo)
  4. Nhấp vào Lưu.
  5. Bạn đang quay lại trang danh sách Ứng dụng của nhà phát triển.
  6. Chọn ứng dụng bạn vừa tạo, EdgeMicroTestApp.
  7. Nhấp vào Hiển thị bên cạnh Khoá của người dùngThông tin mật của người tiêu dùng.

Phần 3: Vận hành Edge Microgateway

Giờ đây, khi bạn đã định cấu hình Edge Microgateway và ít nhất một proxy nhận biết Edge Microgateway trên Edge, đã đến lúc khởi động Edge Microgateway. Máy chủ HTTP Edge Microgateway sẽ chạy trên máy cục bộ và bạn sẽ thực hiện lệnh gọi API trực tiếp đến máy chủ đó.

1. Khởi động Edge Microgateway

Sử dụng lệnh edgemicro start để khởi động Edge Microgateway.

  1. Hãy đảm bảo rằng bạn có các khoá được trả về trước đó khi chạy lệnh edgemicro configuration (Cấu hình cạnh nhỏ). Kết quả đó có dạng như sau:
    You need key and secret while starting edgemicro instance
    
    key: da4778e7c240a5d4585fc559eaba5083328828ac9f3a7f583e8b73e
    secret: 3aad7439708b4aeb38ee08e87189921ad00e6fc1ba8a8ae9f929ee2
    
  2. (Không bắt buộc) In thông tin trợ giúp cho lệnh edgemicro start.
    edgemicro start -h
    
  3. Để khởi động Edge Microgateway, hãy thực thi lệnh sau:
    edgemicro start -o [org] -e [env] -k [key] -s [secret]
    

    Trong trường hợp:

    • org là tên tổ chức của bạn trong Edge (bạn phải là quản trị viên tổ chức).
    • env là một môi trường trong tổ chức của bạn (chẳng hạn như thử nghiệm hoặc sản phẩm).
    • key là khoá được lệnh cấu hình trả về trước đó.
    • secret là khoá được lệnh cấu hình trả về trước đó.

    Ví dụ

    edgemicro start -o docs -e test -k 701e70e718ce6dc1880616b3c39177d64a88754d615c7a4e1f78b6181d000723 -s 05c14356e42d136b83dd135cf8a18531ff52d7299134677e30ef4e34ab0cc824
    

    Kết quả

    Lệnh start truy xuất nhiều thông tin cấu hình từ Apigee Edge (cuộn vào cửa sổ dòng lệnh). Trong kết quả, bạn sẽ thấy một danh sách các proxy nhận biết cổng vào và các sản phẩm đã được phát hiện. Ở cuối dữ liệu đầu ra, bạn sẽ thấy như sau:

    ...
    
    PROCESS PID : 9757
    installed plugin from analytics
    installed plugin from oauth
    eb725020-a2b0-11e6-8a52-6de156e3a6e2 edge micro listening on port 8000
    installed plugin from analytics
    installed plugin from oauth
    installed plugin from analytics
    installed plugin from oauth
    installed plugin from analytics
    installed plugin from oauth
    eb77ce60-a2b0-11e6-8a88-b96278c0c198 edge micro listening on port 8000
    eb78b8c0-a2b0-11e6-bf36-717b986c91fe edge micro listening on port 8000
    eb77f570-a2b0-11e6-883e-472b9104351e edge micro listening on port 8000
    

Điều gì đã xảy ra?

Xem thiết bị đầu cuối mà bạn đã chạy lệnh edgemicro config. Khi di chuyển lên qua đầu ra chuẩn, bạn có thể thấy rằng lệnh này truy xuất tải trọng thông tin cấu hình Edge Microgateway từ Apigee Edge. Một số loại thông tin thuộc dạng này bao gồm:

  • Khoá công khai mà chúng tôi đã tạo và lưu trữ trước đây trong kho chứa Apigee.
  • Một tệp đại diện JSON cho tất cả các proxy nhận biết được Edge Microgateway tồn tại trong tổ chức/môi trường. Đây đều là các proxy được đặt tên bằng tiền tố edgemicro_.
  • Định dạng JSON đại diện cho tất cả sản phẩm API có trong tổ chức/môi trường.

Với thông tin này, Edge Microgateway biết được những proxy và đường dẫn proxy nào được phép xử lý. Tính năng này sử dụng thông tin sản phẩm để tăng cường bảo mật (theo cách giống hệt như cách proxy API bất kỳ hoạt động trên Apigee Edge, trong đó khoá ứng dụng dành cho nhà phát triển có liên kết với sản phẩm). Chúng ta sẽ sớm thực hiện các bước để bảo vệ Edge Microgateway.

2. Kiểm thử cổng nhỏ cạnh

Khi Edge Microgateway đang chạy, bạn có thể gọi proxy. Cấu hình cho proxy edgemicro_hello được tải xuống từ Edge khi bạn khởi động Edge Microgateway. Hãy nhớ rằng đường dẫn cơ sở proxy là /hello.

Để kiểm thử Edge Microgateway, chúng ta sẽ bắt đầu với đường dẫn cơ sở rồi thêm đường dẫn tài nguyên /echo. Xin lưu ý rằng mọi thứ sau đường dẫn cơ sở (bao gồm cả mọi tham số truy vấn) đều được chuyển qua mục tiêu phụ trợ:

curl -i http://localhost:8000/hello/echo
{"error":"missing_authorization","error_description":"Missing Authorization header"}

Lỗi này xảy ra do bạn không gửi khoá API hoặc mã truy cập hợp lệ kèm theo yêu cầu. Theo mặc định, Edge Microgateway yêu cầu phải có khoá API hoặc mã truy cập đối với mọi lệnh gọi API. Trong bước tiếp theo của hướng dẫn, chúng ta sẽ bảo mật API này đúng cách và cho bạn biết cách lấy mã truy cập hợp lệ rồi đưa mã đó vào yêu cầu.

4. Dừng Edge Microgateway

  1. Trong một cửa sổ dòng lệnh riêng, hãy cd đến cùng thư mục mà bạn khởi động Edge Microgateway.
  2. Nhập lệnh dừng:
    edgemicro stop
    

Phần 4: Cổng nhỏ bảo mật Edge

Bạn có thể bảo mật các lệnh gọi API được thực hiện qua Edge Microgateway bằng khoá API hoặc mã truy cập.

Lệnh gọi API bảo mật bằng mã truy cập OAuth2

Hãy làm theo các bước sau nếu bạn muốn xác thực lệnh gọi API bằng mã truy cập OAuth2:

1. Lấy các khoá cần thiết

  1. Trong giao diện người dùng Edge, hãy chuyển đến Ứng dụng dành cho nhà phát triển mà bạn đã tạo trước đó như mô tả trong Phần 2: Tạo thực thể trên Apigee Edge. Tên của Ứng dụng là EdgeMicroTestApp.
  2. Trong trang Ứng dụng dành cho nhà phát triển, hãy hiện Khoá người dùng và Thông tin bí mật của người dùng rồi sao chép các khoá đó. Đây là những giá trị bắt buộc để lấy mã truy cập ở bước tiếp theo.

2. Nhận mã truy cập

Có hai cách để nhận mã truy cập. Chúng tôi sẽ cho bạn biết cả hai phương pháp.

Sử dụng CLI để lấy mã truy cập

Phương thức đầu tiên thuận tiện và tuân theo mẫu mà chúng tôi đã sử dụng trong suốt quá trình hướng dẫn. Phương thức thứ hai thường hữu ích hơn đối với các nhà phát triển ứng dụng cần yêu cầu mã thông báo. Điểm cuối của mã thông báo thực tế được triển khai trong proxy edgemicro-auth đã được triển khai khi bạn định cấu hình Edge Microgateway.

  1. (Không bắt buộc) Xem thông tin trợ giúp về lệnh nhận mã thông báo:
    edgemicro token get -h
    
  2. Tạo mã thông báo, thay thế các giá trị Khoá người dùng và Bí mật của người tiêu dùng từ ứng dụng dành cho nhà phát triển mà bạn đã tạo trên Apigee Edge trong các tham số -i-s:
    edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]
    

    Trong trường hợp:

    • org là tên tổ chức của bạn trong Edge (bạn phải là quản trị viên tổ chức).
    • env là một môi trường trong tổ chức của bạn (chẳng hạn như thử nghiệm hoặc sản phẩm).
    • consumer_id là Mã nhận dạng người tiêu dùng trong Ứng dụng dành cho nhà phát triển mà bạn đã tạo trước đây.
    • consumer_secret là Thông tin mật của người dùng trong Ứng dụng dành cho nhà phát triển mà bạn đã tạo trước đó.

    Ví dụ

    edgemicro token get -o docs -e test -i G0IAeU864EtBo99NvUbn6Z4CBwVcS2 -s uzHTbwNWvoSmOy
    

    Kết quả (Mẫu)

    current nodejs version is v4.4.4
    { token: 'eyJ0eXAiOiJKV1QiLCJhbGciSUzI1NiJ9.eyJhcHBsaWNhdGl
    vbl9uYW1lIjoiNWNiMGY0tOWMzOC00YmJjLWIzNzEtZGMxZTQzOGYxZGMxI
    iwiY2xpZW50X2lkIjoiNVVdBWEdvSU9lbzYwYWV3OTRQN0c1TUFaRTNhSnA
    iLCJzY29wZXMiOltdLCJhcGlfcHJvjdF9saXN0IjpbIkVkZ2VNaWNyb1Rlc
    3RQcm9kdWN0IlmlhdCI6MTQ3ODIwODMzMiwiZXhwIjoxNDc4MjEwMTMxfQ.
    v3Q8Rs0W9FO_XpERwIAMMXhjGamRmmmWgrAy1wJv0-99oajx5ASI5qjNubM
    nCF14xxwlVXHcz1VfedA8Nx7Ih145zhWWuPKL9muzhXXnVBRFeBMeeLqJk4
    QQ7Bhst7xH_68nJSTE20Egu95DHOCUemfrepDFH0VggY4BmzvwLkBNfz_te
    E_YqwKZbpGOLMdKK1vMk0fk0x19SieIMS_aJYeOAklrzUhnFxWJFrsAWsax
    NLx_BbQcZzYfK1JSDUrhRNVBuPHMnGjNA_oHw2J4qa6Hsp62PfchG-DIW_t
    -0BFnYf3rYXmqyNORqFrOMdl4VxqQ' }
    

(Không bắt buộc) Sử dụng API để nhận mã thông báo

Nếu thường gọi proxy Edge bằng lệnh curl hoặc một ứng dụng HTTP khác, bạn nên biết rằng bạn có thể gọi trực tiếp điểm cuối của mã thông báo thay vì sử dụng lệnh edgemicro token. Sau đây là một ví dụ về curl. Bạn chỉ cần thay thế tên tổ chức và tên môi trường của mình trong URL rồi chuyển các giá trị Khoá người dùng được phân tách bằng dấu hai chấm:Khoá bí mật của người tiêu dùng vào tiêu đề Xác thực cơ bản:

curl -i -X POST --user [client_id]:[client_secret] "http://[org]-[env].apigee.net/edgemicro-auth/token" -d '{"grant_type": "client_credentials"}' -H "Content-Type: application/json"

Trong trường hợp:

  • org là tên tổ chức của bạn trong Edge (bạn phải là quản trị viên tổ chức).
  • env là một môi trường trong tổ chức của bạn (chẳng hạn như thử nghiệm hoặc sản phẩm).
  • client_id là Mã nhận dạng người tiêu dùng trong Ứng dụng dành cho nhà phát triển mà bạn đã tạo trước đây.
  • client_secret là Thông tin mật của người dùng trong Ứng dụng dành cho nhà phát triển mà bạn đã tạo trước đó.

Kết quả (Mẫu)

Lệnh này (cho dù bạn đã sử dụng lệnh CLI edgemicro token hay gọi là điểm cuối bằng curl) sẽ trả về một mã truy cập đã ký có thể dùng để thực hiện lệnh gọi ứng dụng. Ví dụ như sau:

MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWxKWBDP9o 
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa 
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd 
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L 
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j 
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X 
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd 
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz 
pFkIxepyr/0=
      

3. Kiểm tra cấu hình trong Edge Microgateway

  1. Mở tệp ~/.edgemicro/org-env-config.yaml. Xem thêm "Cửa sổ nhỏ Edge được cài đặt ở đâu" trong bài viết Cài đặt Cổng nhỏ cạnh.
  2. Hãy đảm bảo rằng các thuộc tính của trình bổ trợ OAuth này được đặt thành false. Theo mặc định, các giá trị này có giá trị là false, nhưng bạn nên kiểm tra kỹ:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
    
  3. Ngoài ra, trong tệp org-env-config.yaml, hãy nhớ thêm trình bổ trợ OAuth cho phần tử plugins:sequence, như sau::
    plugins:
       dir: ../plugins
       sequence:
       - oauth
    
  4. Nếu bạn thực hiện bất kỳ thay đổi nào đối với tệp, hãy tải lại các thay đổi đó vào thực thể Edge Microgateway đang chạy. Lệnh này định cấu hình lại Edge Microgateway với thời gian ngừng hoạt động bằng 0:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Trong trường hợp:

    • org là tên tổ chức của bạn trong Edge (bạn phải là quản trị viên tổ chức).
    • env là một môi trường trong tổ chức của bạn (chẳng hạn như thử nghiệm hoặc sản phẩm).
    • key là khoá được lệnh cấu hình trả về trước đó.
    • secret là khoá được lệnh cấu hình trả về trước đó.

    Ví dụ

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
    

4. Gọi API một cách an toàn

Với mã truy cập trong tay, giờ đây bạn có thể thực hiện lệnh gọi API một cách an toàn. Ví dụ:

  curl -i -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhcHBsaWNhdGlvbl
9uYW1lIjoiYmU2YmZjYjAtMWQ0Ni00Y2IxLWFiNGQtZTMxNzRlNTAyMDZkIiwiY2xpZW50X2lkIjoiOGxTTTVIRHdyM
VhIT1ZwbmhURExhYW9FVG5STVpwWk0iLCJzY29wZXMiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIk1pY3JvZ2F0ZXdh
eVRlQcm9kdWN0Il0sImCI6MTQzNTM0NzY5MiwiZXhwIjoxNDM1MzQ5NDkxfQ.PN30Y6uK1W1f2ONPEsBDB_BT31c6
IsjWGfwpz-p6Vak8r767tAT4mQAjuBpQYv7_IU4DxSrnxXQ_q536QYCP4p4YKfBvyqbnW0Rb2CsPFziy_n8HIczsWO
s0p4czcK63SjONaUpxV9DbfGVJ_-WrSdqrqJB5syorD2YYJPSfrCcgKm-LpJc6HCylElFDW8dHuwApaWcGRSV3l5Wx
4A8Rr-WhTIxDTX7TxkrfI4THgXAo37p3au3_7DPB_Gla5dWTzV4j93xLbXPUbwTHzpaUCFzmPnVuYM44FW5KgvBrV0
64RgPmIFUxSqBWGQU7Z1w2qFmWuaDljrMDoLEreI2g" http://localhost:8000/hello/echo

API trả về tiêu đề và thông tin khác từ máy chủ mô phỏng.

Bảo mật API bằng khoá API

Nếu bạn muốn sử dụng khoá API để uỷ quyền, hãy làm theo các bước sau:

1. Lấy khoá API

  1. Trong giao diện người dùng Edge, hãy chuyển đến Ứng dụng dành cho nhà phát triển mà bạn đã tạo trước đó như mô tả trong Phần 2: Tạo thực thể trên Apigee Edge. Tên của Ứng dụng là EdgeMicroTestApp.
  2. Trong trang Ứng dụng dành cho nhà phát triển, hãy hiển thị và sao chép Khóa người dùng. Giá trị này là khoá API. Bạn sẽ sử dụng khoá này để thực hiện các lệnh gọi API đã xác thực.

2. Kiểm tra cấu hình trong Edge Microgateway

  1. Mở tệp ~/.edgemicro/org-env-config.yaml. Xem thêm "Cửa sổ nhỏ Edge được cài đặt ở đâu" trong bài viết Cài đặt Cổng nhỏ cạnh.
  2. Hãy đảm bảo rằng các thuộc tính của trình bổ trợ OAuth này được đặt thành false. Theo mặc định, các giá trị này có giá trị là false, nhưng bạn nên kiểm tra kỹ:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
    
  3. Ngoài ra, trong tệp org-env-config.yaml, hãy nhớ thêm trình bổ trợ OAuth cho phần tử plugins:sequence, như sau::
    plugins:
       dir: ../plugins
       sequence:
       - oauth
        
    
  4. Nếu bạn thực hiện bất kỳ thay đổi nào đối với tệp, hãy tải lại các thay đổi đó vào thực thể Edge Microgateway đang chạy. Lệnh này định cấu hình lại Edge Microgateway với thời gian ngừng hoạt động bằng 0:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Trong trường hợp:

    • org là tên tổ chức của bạn trong Edge (bạn phải là quản trị viên tổ chức).
    • env là một môi trường trong tổ chức của bạn (chẳng hạn như thử nghiệm hoặc sản phẩm).
    • key là khoá được lệnh cấu hình trả về trước đó.
    • secret là khoá được lệnh cấu hình trả về trước đó.

    Ví dụ

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
    

3. Gọi API một cách an toàn bằng khoá API

Gọi API có tiêu đề x-api-key như sau. Giá trị Khoá người dùng mà bạn đã sao chép từ Ứng dụng dành cho nhà phát triển là khoá API. Theo mặc định, Edge Microgateway dự kiến bạn sẽ truyền khoá trong một tiêu đề có tên là x-api-key, như sau:

curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"

Trong trường hợp:

  • apikey là giá trị Khoá người tiêu dùng được lấy từ EdgeMicroTestApp.

Ví dụ:


curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxa0ilYQ5szwuljr5bB'

Giờ đây, bạn đã có một Edge Microgateway hoạt động đầy đủ và an toàn. Trong phần tiếp theo của hướng dẫn, chúng ta sẽ tìm hiểu các trình bổ trợ thêm chức năng vào Edge Microgateway.

Phần 5: Thêm trình bổ trợ Spike Arrest

Trong phần này, chúng tôi sẽ thêm một tính năng giới hạn tốc độ có tên là bắt giữ tăng đột biến vào thực thể của Edge Microgateway.

Trình bổ trợ là gì?

Trình bổ trợ là một mô-đun Node.js bổ sung chức năng cho Edge Microgateway. Các mô-đun trình bổ trợ tuân theo một mẫu nhất quán và được lưu trữ tại một vị trí mà Edge Microgateway biết đến, cho phép cổng vi mô khám phá và tự động tải các mô-đun đó. Bạn có thể đọc thêm về trình bổ trợ trong phần Sử dụng trình bổ trợ.

Thêm trình bổ trợ bắt giữ tăng đột biến

Thiết bị chống tăng đột biến ngăn chặn lưu lượng truy cập tăng đột biến. Điều này điều tiết số lượng yêu cầu được một thực thể Edge Microgateway xử lý.

Trong Edge Microgateway, tính năng chống tăng đột biến được triển khai dưới dạng một mô-đun trình bổ trợ. Để bật chế độ này, bạn cần thêm khoá này vào tệp cấu hình Edge Microgateway.

  1. Mở tệp ~/.edgemicro/org-env-config.yaml. Xem thêm "Cửa sổ nhỏ Edge được cài đặt ở đâu" trong bài viết Cài đặt Cổng nhỏ cạnh.
  2. Hãy thêm phần tử sau đây. Bạn có thể thêm thẻ này vào vị trí bất kỳ trong tệp.
       spikearrest:
          timeUnit: minute   
          allow: 10   
          buffersize: 0   
    
  3. Thêm spikearrest vào phần tử edgemicro:sequence, như minh hoạ dưới đây. Thuộc tính cấu hình trình tự cho Edge Microgateway biết thứ tự thực thi các mô-đun trình bổ trợ.
    edgemicro:
      home: ../gateway
      port: 8000
      max_connections: -1
      max_connections_hard: -1
      logging:
        level: info
        dir: /var/tmp
        stats_log_interval: 60
      plugins:
        dir: ../plugins
      sequence:
        - spikearrest
        - oauth 
    
  4. Lưu tệp cấu hình.
  5. Tải lại Edge Microgateway bằng lệnh reload (tải lại). Bạn phải chạy lệnh này từ thư mục mà bạn đã khởi động Edge Microgateway.
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Trong trường hợp:

    • org là tên tổ chức của bạn trong Edge (bạn phải là quản trị viên tổ chức).
    • env là một môi trường trong tổ chức của bạn (chẳng hạn như thử nghiệm hoặc sản phẩm).
    • key là khoá được lệnh cấu hình trả về trước đó.
    • secret là khoá được lệnh cấu hình trả về trước đó.

    Ví dụ

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
    
  6. Thử gọi API này nhiều lần liên tiếp. Sau lệnh gọi thứ hai, Edge Microgateway sẽ trả về lỗi này:
    {"message":"SpikeArrest engaged","status":503}
    

Lý do là tính năng bắt giữ tăng đột biến giúp làm mượt số lượng lệnh gọi có thể thực hiện theo đơn vị thời gian đã chỉ định. Vì vậy, trong trường hợp này, bạn có thể thực hiện 10 cuộc gọi trong một phút, hoặc cứ 6 giây sẽ có 1 cuộc gọi.

Để biết thêm thông tin, hãy xem phần "Tính năng chặn đột biến hoạt động như thế nào?" trong phần Sử dụng trình bổ trợ.

Điểm cộng: Thêm trình bổ trợ hạn mức

Theo cùng một mẫu dùng để định cấu hình tính năng chống tăng đột biến, bạn có thể thêm các trình bổ trợ khác, chẳng hạn như trình bổ trợ hạn mức. Giống như với tính năng chống tăng đột biến, trình bổ trợ hạn mức đi kèm với mỗi lần cài đặt Edge Microgateway. Hạn mức chỉ định số lượng thông báo yêu cầu mà một ứng dụng được phép gửi tới API trong một khoảng thời gian cụ thể (phút hoặc giờ).

Để tìm hiểu cách hoạt động của hạn mức, hãy xem phần "Sử dụng trình bổ trợ hạn mức" trong phần Sử dụng trình bổ trợ.

Phần 6: Xem số liệu phân tích trên Apigee Edge

Chúng ta hiện đã có một thực thể Edge Microgateway hoạt động đầy đủ. Hãy xem chúng ta đã làm được gì! Theo mặc định, mô-đun trình bổ trợ phân tích sẽ được thêm vào Edge Micro. Mô-đun này sẽ tự động đẩy dữ liệu phân tích từ Edge Micro sang Apigee được hệ thống Edge Analytics sử dụng. Hãy xem:

  1. Đăng nhập vào tổ chức của bạn trên Apigee Edge.
  2. Chọn Analytics > Proxy Performance (Analytics > Hiệu suất proxy).
  3. Trong trang tổng quan về Hiệu suất proxy, hãy chọn edgemicro_hello proxy.
  4. Biểu đồ này hiển thị cho bạn thông tin về mẫu lưu lượng truy cập của proxy, chẳng hạn như tổng lưu lượng truy cập, thời gian phản hồi trung bình, thời gian phản hồi trung bình mục tiêu, v.v.

Bạn có thể đọc thêm về trang tổng quan Analytics Edge trên trang chủ Trang tổng quan Analytics trong tài liệu về Edge. Để tìm hiểu thêm về trình bổ trợ, hãy xem bài viết Sử dụng trình bổ trợ