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 3.1.x

Tổng quan

Sau khi hoàn tất các bước trong hướng dẫn thiết lập này, bạn sẽ có một ứng dụng Edge đang hoạt động và được định cấu hình đầy đủ Cài đặt Microgateway có khả năng xử lý các yêu cầu API. Bạn sẽ kiểm tra quá trình 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 đến 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 lên 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 Edge Cổng nhỏ. Khi hoàn tất quá trình cài đặt, bạn có thể làm theo các bước trong của chúng tôi.

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

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 đến giao tiếp với Apigee Edge.

Các bước định cấu hình Apigee Edge Cloud

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

  1. 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. Một tệp cấu hình có tên là tệp default.yaml đã được đặt trong nhà của bạn trong một thư mục con có tên là .edgemicro. Kiểm tra ngay để đảm bảo tệp này tồn tại:
    ls ~/.edgemicro
    default.yaml
    

    Lưu ý: Trong tài liệu của Edge Microgateway, chúng tôi đề cập đến thư mục gốc bằng dấu ngã (~), là phím tắt UNIX. Nếu bạn đang sử dụng Windows, nếu bạn đang khi chạy một ô không hỗ trợ dấu ngã, bạn sẽ cần phải thay thế biến môi trường cho dấu ngã trong các lệnh tham chiếu đến thư mục gốc. Cho ví dụ: %USERPROFILE%/.edgemicro.

  3. Tất cả các lệnh CLI đều có chức năng trợ giúp. Trợ giúp in cho edgemicro định cấu hình lệnh:
    edgemicro configure -h
    
  4. 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: Tên tổ chức của bạn trên Edge (bạn phải là một tổ chức quản trị viên).
    • env: 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: Địa chỉ email được liên kết với Tài khoản Apigee.

      Lưu ý: Lệnh định cấu hình cho phép các tham số bổ sung. Để xem đầy đủ hãy xem bài viết Định cấu hình Edge Microgateway cho Apigee Edge Cloud.

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 v12.5.0
current edgemicro version is 3.1.0
password:
file doesn't exist, setting up
Give me a minute or two... this can take a while...
App edgemicro-auth deployed.
checking org for existing KVM
error checking for cert. Installing new cert.
creating KVM
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/docs-test-config.yaml

vault info:
 -----BEGIN CERTIFICATE-----
MIICpDCCAYwCCQCQ2mJZJGbPPTANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3QwHhcNMTcwOTA3MjA0ODA4WhcNMTcwOTA4MjA0ODA4WjAUMRIwEAYD
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDw
yzmqi5CelqqtTr6IaFe1ssrMXEDnNtkBh95U6F5zHLsNQhJcyNUAO9um6FLMSqSd
fTztXfWUZzDgmbb6sfbx/9cqpvQ8TIjxyIz8xGM9H4legRQmsCQoYGkLjpPE5ZOa
wZrI5IaVm8LY6vbopPFwxgKOQ9bphx6k9Na055DmNyZAOTMD+4I0m/RdsrnZnYih
3DaFj1tXHKZI1jfAt/QOif5Nmk4+JckYwF+9HBysWUbbvj/gnBjVYF2Isb7q7oFD
lPGhwFoIebMqHMWD8lG7+9RJDO9dDV6f1g1/9waIrq1D+MoVXos9VMstNrPp0cKF
Ue+lAkct8tylH+2MosF7AgMBAAEwDQYJKoZIhvcNAQELBQADggEBAJMRdcQh3ayy
csVVT4TYwxV7MKWRfhDRz6X+MM9frB+Z7sI4+ZoZbXKOoZI2hSjmbdLpkNR/m9eJ
+1Uk0JKmpSY7Q+1rRrvcHsWNysGf4z+zDJXYECTrtSnXKBXtb9SJ8JAfoZOQD0lA
zmKuJjQMLTdiYMHOBR6ZWnaKaRvrQwGHcQrheJm4a90XgZF6jcRR8CPrBzkmsbCp
IU/Ux3E17wDGYPxjJs5otyQG8rN/88RGyaSeXK8rjKr9D4KFGJeasXBKmTG2afAr
yfBvS4h6s42FCOR/eLpmMllVoO9up71Fa3EtV+aK+FNNY9uMbgUHeLQE7z9nn06q
PTmvExZLkLQ=
-----END CERTIFICATE-----

The following credentials are required to start edge micro
  key: 27ee39567c75e4567a66236cbd4e86d1cc93df6481454301bd5fac4d3497fcbb
  secret: 4618b0008a6185d7327ebf53bee3c50282ccf45a3cceb1ed9828bfbcf1148b47
    

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

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

  1. 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. In thông tin trợ giúp cho lệnh edgemicro riêng định cấu hình. Bạn có thể in trợ giúp theo cách này cho bất kỳ lệnh hoặc tuỳ chọn lệnh CLI nào của Edge Microgateway.
    edgemicro private configure -h
    
  3. Thực thi lệnh sau. Ứng dụng này yêu cầu thông tin tiêu chuẩn về Apigee của bạn Tài khoản Cloud riêng tư: 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 của máy chủ quản lý và IP của bộ định tuyến. Bạn phải là quản trị viên tổ chức Edge thì mới có thể sử dụng tính năng 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 trên Edge (bạn phải là một tổ chức quản trị viên).
    • env là một môi trường trong tổ chức của bạn (chẳng hạn như môi trường thử nghiệm hoặc sản phẩm).
    • runtime_url là URL thời gian chạy cho đám mây riêng tư của bạn thực thể.
    • mgmt_url là URL của máy chủ quản lý cho thực thể máy chủ ảo riêng tư.
    • username là địa chỉ email liên kết với Apigee của bạn tài khoản.
    • virtual_host là danh sách máy chủ ảo được phân tách bằng dấu phẩy tên. 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 bạn có bí danh máy chủ ảo là myorg-test.mycompany.com, bạn sẽ sử dụng 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 KVM
error checking for cert. Installing new cert.
creating KVM
adding private_key
adding public_key
configuring host http://192.168.52.106:9001 for region dc-1

saving configuration information to: $HOME/.edgemicro/jdoe-test-config.yaml
vault info: 
-----BEGIN CERTIFICATE----- 
MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWsKWBDP9o
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: a3f8f3dfe39158fc3c50b274f0af2234246e0d5f6ea4ad09389b645147151ba3
   secret: 3e9904802fb3c0e8ca408128a11119cf13546d54dac10ace944c097a726a1263

edgemicro configuration complete!
    

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

Chạy lệnh này để xác minh việc cài đặt. Nếu bạn không báo cáo lỗi nào thì mọi thứ đã sẵn sàng đú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 trên Edge (bạn phải là một tổ chức quản trị viên).
  • env là một môi trường trong tổ chức của bạn (chẳng hạn như môi trường thử nghiệm hoặc sản phẩm).
  • key là khoá được cấu hình trả về trước đó .
  • secret là khoá được cấu hình trả về trước đó .

Ví dụ

edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f624ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0156d7132afbd03625bbd85dc34ebfefae4f23fbcb3c

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

Cho đến nay, toàn bộ cấu hình được thực hiện đều cho phép Edge Microgateway tự khởi động để sử dụng Apigee Cạnh. Sau khi quá trình tự khởi động thành công, Edge Microgateway sẽ truy xuất một tải trọng thông tin cấu hình của Apigee Edge.

Thông tin cấu hình này được dùng để làm gì? Chúng ta sẽ tìm hiểu trong phần tiếp theo của hướng dẫn, khi Edge Microgateway khởi động, Edge Microgateway cần nhận danh sách các Edge đặc biệt Các proxy API có thể nhận biết Microgateway từ Apigee Edge. Trong phần tiếp theo của hướng dẫn này, bạn sẽ tạo proxy nhận biết Microgateway. Edge Microgateway hạn chế ứng dụng khách chỉ gọi API đặt trước các proxy API nhận biết Microgateway này và ứng dụng khách sẽ được yêu cầu (theo mặc định) để hiển thị 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 "Điều gì bạn cần phải biết về các proxy nhận biết Edge Microgateway" trong phần Tổng quan về Edge Cổng nhỏ.

Là quản trị viên tổ chức của Edge, bạn sẽ quan tâm rằng các proxy nhận biết được Edge Microgateway có thể thêm vào các sản phẩm Edge, giống như mọi proxy khác. Thông qua việc sử dụng sản phẩm và nhà phát triển bạn có thể tạo 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 API được gọi thông qua Cổng nhỏ ở rìa. Xin nhắc lại, các mẫu liên quan giống hệt với việc làm việc với bất kỳ proxy API nào, 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 về sản phẩm, hãy bắt đầu với Sản phẩm API là gì? trong Edge tài liệu.

Tiếp theo, chúng ta sẽ tìm hiểu cách tạo proxy nhận biết Edge Microgateway và sau đó, khởi động Edge Microgateway và kiểm tra chế độ 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:

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

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

1. Sáng tạo proxy API nhận biết Edge Microgateway trên Edge

  1. Đăng nhập vào tổ chức của bạn trên Apigee Edge.
  2. Chọn Phát triển > Proxy API trong trình đơn điều hướng bên.
  3. Nhấp vào + Proxy. Trình hướng dẫn Tạo proxy được gọi.
  4. Trong trang trình hướng dẫn đầu tiên, hãy chọn Đảo ngược proxy (phổ biến nhất).
  5. Nhấp vào Tiếp theo.
  6. Trong trang Chi tiết của trình hướng dẫn, hãy định cấu hình như sau. Hãy nhớ điền vào trình hướng dẫn chính xác như được minh hoạ:
    • Tên proxy: edgemicro_hello
    • Đường dẫn cơ sở proxy: /hello
    • API hiện có: http://mocktarget.apigee.net/
  7. Nhấp vào Tiếp theo.
  8. Trong trang Bảo mật của trình hướng dẫn, chọn Pass through (không có).
  9. Nhấp vào Tiếp theo.
  10. Trong trang Virtual Hosts (Máy chủ lưu trữ) của trình hướng dẫn, chấp nhận các giá trị mặc định.
  11. Nhấp vào Tiếp theo.
  12. 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 đảm bảo rằng môi trường kiểm thử được chọn.
  13. Nhấp vào Build and Deploy (Tạo và triển khai).

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

  1. Chọn Xuất bản > Sản phẩm API trong trình đơn điều hướng bên.
  2. Nhấp vào + Sản phẩm API. Trang Chi tiết sản phẩm sẽ xuất hiện.
  3. Đ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 khoá: Tự động
  4. Trong phần Tài nguyên, hãy nhấp vào +API Proxy
  5. Chọn edgemicro-auth
  6. Nhấp lại vào +API Proxy.
  7. Chọn edgemicro_hello
  8. Chọn + Tài nguyên tuỳ chỉnh
  9. Nhập /**
  10. Chọn + Tài nguyên tuỳ chỉnh một lần nữa.
  11. Nhập /
  12. Nhấp vào Lưu.

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

Đối với 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, tạo một ứng dụng dành cho nhà phát triển. Nhưng nếu bạn muốn, hãy tạo một nhà phát triển thử nghiệm ngay bây giờ:

  1. Chọn Xuất bản > Nhà phát triển trong trình đơn điều hướng bên.
  2. 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 đăng nhập của ứng dụng khách từ ứng dụng này để thực hiện các lệnh gọi API bảo mật thông qua Cửa nhỏ có cạnh:

  1. Chọn Xuất bản > Ứng dụng trong trình đơn điều hướng bên.
  2. Nhấp vào + Ứng dụng. Trang Thông tin chi tiết về ứng dụng dành cho nhà phát triển sẽ xuất hiệ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 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 tại nào theo hướng dẫn này.
    4. Thông tin đăng nhập:
      1. Chọn Ngày hết hạn: Không bao giờ.
      2. Nhấp vào + Product rồi chọn EdgeMicroTestProduct (sản phẩm bạn vừa tạo)
  4. Nhấp vào Lưu.
  5. Bạn đã quay lại trang Danh sách ứng dụng.
  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á người tiêu dùngNgười tiêu dùng Bí mật.

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

Giờ đây, bạn đã định cấu hình Edge Microgateway và nhận biết được ít nhất một Edge Microgateway proxy 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ộ của mình và bạn sẽ thực hiện các lệnh gọi API trực tiếp tới máy chủ đó.

1. Khởi động Microgateway

Dùng lệnh sidemicro start để khởi động Edge Cổng nhỏ.

  1. Đảm bảo rằng bạn có các khoá đã được trả lại trước đó khi chạy edgemicro cấu hình. Kết quả đầu ra có dạng như sau:
    You need key and secret while starting edgemicro instance
    
    key: da4778e7c240a5d4585fc559eaba5083328828bc9f3a7f583e8b73e
    secret: 3aad7439708b4aeb38ee08e82189921ad00e6fc1ba8a8ae9f929ee2
    
  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 trên Edge (bạn phải là một tổ chức quản trị viên).
    • env là một môi trường trong tổ chức của bạn (chẳng hạn như môi trường thử nghiệm hoặc sản phẩm).
    • key là khoá được cấu hình trả về trước đó .
    • secret là khoá được 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 qua Apigee Edge (tức là sẽ cuộn vào cửa sổ dòng lệnh). Trong đầu ra, bạn sẽ thấy danh sách cổng nhận biết vi mô proxy và sản phẩm đã được phát hiện. Ở cuối kết quả, bạn sẽ thấy nội dung như sau:

    ...
    
    current nodejs version is v12.5.0
    current edgemicro version is 3.1.0
    info: jwk_public_keys download from null returned 200 undefined
    info: jwt_public_key download from https://docs-test.apigee.net/edgemicro-auth/publicKey returned 200 OK
    info: products download from https://docs-test.apigee.net/edgemicro-auth/products returned 200 OK
    info: config download from https://edgemicroservices-us-east-1.apigee.net/edgemicro/bootstrap/organization/docs/environment/test returned 200 OK
    PROCESS PID : 17991
    
  4. Kiểm tra trạng thái cổng nhỏ. Trong một cửa sổ dòng lệnh khác, hãy cd vào cùng thư mục nơi bạn đã khởi động Edge Micro và nhập lệnh sau:
    edgemicro status
    current nodejs version is v12.5.0
    current edgemicro version is 3.1.0
    edgemicro is running with 8 workers
    

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

Tải trọng của Edge Thông tin cấu hình Microgateway được tải xuống từ Apigee Edge và lưu vào bộ nhớ đệm trên máy. Đó là các thông tin sau đây:

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

Nhờ thông tin này, Edge Microgateway sẽ biết được các proxy và đường dẫn proxy nào được phép của chúng tôi. API này sử dụng thông tin sản phẩm để thực thi bảo mật (giống hệt như mọi API khác) proxy trên Apigee Edge, nơi khoá ứng dụng của nhà phát triển có mối liên kết với sản phẩm). Chúng ta đi thông qua các bước để bảo mật Edge Microgateway.

2. Kiểm tra cửa Microgateway

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

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

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

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

4. Dừng cạnh Microgateway

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

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

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 quyền truy cập mã thông báo.

Các 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 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 đây. Tên ứng dụng là EdgeMicroTestApp.
  2. Trong trang Ứng dụng dành cho nhà phát triển, hiện Khoá người dùng và Khoá bí mật người dùng, sau đó sao chép các khoá đó. Đây là những giá trị bắt buộc để lấy mã truy cập trong bước tiếp theo.

2. Lấy 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 rất thuận tiện và tuân theo mẫu mà chúng tôi đã sử dụng từ trước đến nay hướng dẫn. Phương thức thứ hai thường hữu ích hơn đối với ứng dụng khách những nhà phát triển 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 edgemicro-auth đã được triển khai khi bạn định cấu hình Edge Cổng nhỏ.

  1. (Không bắt buộc) Xem thông tin trợ giúp về lệnh token get:
    edgemicro token get -h
    
  2. Tạo mã thông báo, thay thế các giá trị Khoá người dùng và Thông tin mật của người dùng từ ứng dụng dành cho nhà phát triển mà bạn đã tạo trên Apigee Edge trong -i-s thông 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 trên Edge (bạn phải là một tổ chức quản trị viên).
    • env là một môi trường trong tổ chức của bạn (chẳng hạn như môi trường 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 đó.
    • consumer_secret là Thông tin bí mật của người dùng trong Nhà phát triển Ứng dụng bạn đã tạo trước đây.

    Ví dụ

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

    Kết quả (Mẫu)

    current nodejs version is v12.5.0
    { token: 'eyJ0eXAiOiJKV1QiLCJhbGciSUzI1NiJ9.eyJhcHBsaWNhdGl
    vbl9uYW1lIjoiNWNiMGY0tOWMzOC00YmJjLWIzNzEtZGMxZTQzOGYxZGMxI
    iwiY2xpZW50X2lkIjoiNVVdBWEdvSU9lbzYwYWV3OTRQN0c1TUFaRTNhSnA
    iLCJzY29wZXMiOltdLCJhcGlfcHJvjdF9saXN0IjpbIsVkZ2VNaWNyb1Rlc
    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 để lấy mã thông báo

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

curl -i -X POST "http://[org]-[env].apigee.net/edgemicro-auth/token" -d '{ "client_id": "your consumer key", "client_secret": "your consumer secret", "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 trên Edge (bạn phải là một tổ chức quản trị viên).
  • env là một môi trường trong tổ chức của bạn (chẳng hạn như môi trường 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 bí mật về người dùng trong Ứng dụng dành cho nhà phát triển mà bạn đã tạo trước đó.

Đầu ra (Mẫu)

Lệnh này, cho dù bạn đã sử dụng lệnh CLI của edgemicro token hay gọi hàm điểm cuối bằng curl, 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ụ:

MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFsnhB0Yvg6JKWxKWBDP9o
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik241yfBku7olooXKRKTRKOUoXa
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 $HOME/.edgemicro/org-env-config.yaml. Xem Edge Microgateway được cài đặt ở đâu nếu bạn không tìm được tệp này.
  2. Hãy đảm bảo các thuộc tính trình bổ trợ OAuth này được đặt thành false. Các kết quả đó không chính xác vì mặc định, 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 đảm bảo rằng trình bổ trợ OAuth đã thêm vào 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 Phiên bản Edge Microgateway. Lệnh này sẽ đị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 trên Edge (bạn phải là một tổ chức quản trị viên).
    • env là một môi trường trong tổ chức của bạn (chẳng hạn như môi trường thử nghiệm hoặc sản phẩm).
    • key là khoá được cấu hình trả về trước đó .
    • secret là khoá được 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.PL30Y6uK1W1f2ONPEsBDB_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 đây. Tên ứng dụng là EdgeMicroTestApp.
  2. Trên trang Ứng dụng dành cho nhà phát triển, hãy hiện và sao chép Khoá người dùng. Giá trị này là API . Bạn sẽ dùng khoá này để thực hiện lệnh gọi API đã xác thực.

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

  1. Mở tệp $HOME/.edgemicro/org-env-config.yaml. Xem Vị trí Edge Microgateway đã được cài đặt hay chưa nếu bạn không tìm được tệp này.
  2. Hãy đảm bảo các thuộc tính trình bổ trợ OAuth này được đặt thành false. Các kết quả đó không chính xác vì nhưng bạn có thể kiểm tra kỹ nếu muốn:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
    
  3. Ngoài ra trong tệp org-env-config.yaml, hãy đảm bảo rằng trình bổ trợ OAuth đã thêm vào 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 Phiên bản Edge Microgateway. Lệnh này sẽ đị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 trên Edge (bạn phải là một tổ chức quản trị viên).
    • env là một môi trường trong tổ chức của bạn (chẳng hạn như môi trường thử nghiệm hoặc sản phẩm).
    • key là khoá được cấu hình trả về trước đó .
    • secret là khoá được cấu hình trả về trước đó .

    Ví dụ

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

3. Gọi API một cách bảo mật bằng khoá API

Gọi API với tiêu đề x-api-key như sau. Giá trị Khoá người tiêu dùng mà bạn được 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ẽ vượt qua khoá trong tiêu đề có tên 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: XsU1R4zGXz2ERxd0ilYQ5szwuljr5bB'

Giờ đây, bạn đã sử dụng Edge Microgateway bảo mật và có đầy đủ chức năng. Trong phần tiếp theo của hướng dẫn, chúng ta sẽ xem xét các trình bổ trợ thêm chức năng vào Edge Microgateway.

Phần 5: Thêm một yêu cầu bắt buộc tăng đột biến trình bổ trợ

Trong phần này, chúng tôi sẽ thêm vào phiên bản Edge của bạn một tính năng giới hạn số lượng yêu cầu có tên là chống tăng đột biến Cổng nhỏ.

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

Trình bổ trợ là một mô-đun Node.js giúp thêm chức năng cho Edge Microgateway. 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 microgateway để khám phá và tải chúng một cách tự động. Bạn có thể đọc thêm về các trình bổ trợ trong Sử dụng trình bổ trợ.

Thêm trình bổ trợ ngăn chặn tăng đột biến

Mốc tăng đột biến trình bổ trợ bắt giữ giúp ngăn chặn tình trạng tăng đột biến lưu lượng truy cập. Chế độ này điều tiết số lượng yêu cầu được xử lý bởi một đối tượng của Edge Microgateway.

Trong Edge Microgateway, tính năng ngăn chặn 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 tệp đó vào tệp cấu hình Edge Microgateway.

  1. Mở tệp $HOME/.edgemicro/org-env-config.yaml.Vị trí Edge Microgateway đã được cài đặt hay chưa nếu bạn không tìm được tệp này.
  2. Thêm phần tử sau. Bạn có thể thêm 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ạ bên dưới. Thuộc tính cấu hình trình tự cho Edge Microgateway biết thứ tự mà các mô-đun trình bổ trợ được thực thi.
    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:
        - oauth
        - spikearrest
    
  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 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 trên 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ư môi trường thử nghiệm hoặc sản phẩm).
    • key là khoá được cấu hình trả về trước đó .
    • secret là khoá được trả về trước đó bởi config.

    Ví dụ

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

Lý do là việc bắt tăng đột biến giúp cân bằng số lượng cuộc gọi có thể thực hiện qua một đơn vị thời gian cụ thể. 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 cuộc gọi thì có một cuộc gọi giây.

Tín dụng bổ sung: Việc thêm trình bổ trợ hạn mức

Theo cùng một mẫu dùng để định cấu hình ngăn chặn mốc tăng đột biến, bạn có thể thêm các trình bổ trợ khác, như trình bổ trợ hạn mức. Giống như biện pháp ngăn chặn tăng đột biến, trình bổ trợ hạn mức được đưa vào mỗi lượt cài đặt Edge Microgateway. Đáp hạn mức xác đị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 một API qua một khoảng thời gian chỉ định (phút hoặc giờ).

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

Chúng tôi hiện đã có một phiên bản Edge Microgateway hoạt động với đầy đủ chức năng. Hãy cùng xem bạn đang làm gì nhé! Theo mặc định, mô-đun trình bổ trợ phân tích số liệu phân tích được thêm vào Edge Micro. Mô-đun này đẩy ngầm dữ liệu phân tích từ Edge Micro cho đến Apigee Edge, trong đó hệ thống Edge Analytics sử dụng dữ liệu này. Hãy xem:

  1. Đăng nhập vào tổ chức của bạn trên Apigee Edge.
  2. Chọn Analytics > Hiệu suất proxy.
  3. Trong trang tổng quan Hiệu suất proxy, hãy chọn Proxy Edgemicro_hello.
  4. Biểu đồ này hiển thị cho bạn thông tin về các 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 mục tiêu trung bình, v.v.

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