Edge Microgateway 的 CLI 參考資料

您目前查看的是 Apigee Edge 說明文件。
前往 Apigee X 說明文件
info

Edge Microgateway 3.1.5 以上版本

總覽

您可以使用 Edge Microgateway CLI 控制及管理 Edge Microgateway 執行個體的各個層面。

管理憑證

cert 指令可讓您安裝及管理公開/私密金鑰組,用戶端會使用這組金鑰簽署不記名權杖,透過 Edge Microgateway 發出安全呼叫。金鑰會儲存在 Apigee Edge 的加密鍵/值對應 (KVM) 中。Edge Microgateway 會使用公開金鑰驗證已簽署的承載權杖。如「設定及配置 Edge Microgateway」一文所述,執行 edgemicro configure 指令時,系統會產生這些金鑰。如需重新產生及管理這些金鑰,可以使用本文所述的 cert 指令。

安裝憑證

將金鑰安裝在加密的鍵/值對應 (KVM) 中,並以輸出內容的形式傳回公開金鑰。金鑰組的範圍限定為指定機構。

用量

edgemicro cert install -o [organization] -e [environment] -u [username] -p [password] --force

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-u, --username 您的 Apigee 使用者名稱。您必須是指定機構的機構管理員。
-p, --password (選用) 密碼。如果您未在指令列中提供這個參數,系統會提示您輸入。
-f, --force (選用) 如果加密 KVM 中已儲存金鑰,請強制替換。
-h, --help 輸出使用情況資訊。

範例

edgemicro cert install -o docs -e test -u jdoe@example.com -f

輸出內容

current nodejs version is v12.5.0
current edgemicro version is 3.0.2
password:
deleting vault
creating vault
adding private_key
adding public_key
installed cert

刪除憑證

刪除機構的金鑰組。

用量

edgemicro cert delete -o [organization] -e [environment] -u [username] -p [password]

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-u, --username 您的 Apigee 使用者名稱。您必須是指定機構的機構管理員。
-p, --password (選用) 密碼。如果您未在指令列中提供這個參數,系統會提示您輸入。
-h, --help 輸出使用情況資訊。

範例

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

輸出內容

deleting vault
Vault deleted!

查看憑證

檢查貴機構是否已安裝憑證。

用量

edgemicro cert check -o [organization] -e [environment] -u [username] -p [password]

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-u, --username 您的 Apigee 使用者名稱。您必須是指定機構的機構管理員。
-p, --password (選用) 密碼。如果您未在指令列中提供這個參數,系統會提示您輸入。
-h, --help 輸出使用情況資訊。

範例

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

輸出內容 (成功)

checked cert successfully

輸出內容 (失敗)

如果憑證不存在,系統會傳回錯誤。

取得公開金鑰

傳回指定機構的公開金鑰。不需要驗證。

用量

edgemicro cert public-key -o [organization] -e [environment]

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-h, --help 輸出使用情況資訊。

範例

edgemicro cert public-key -o docs -e test

輸出內容 (範例)

-----BEGIN CERTIFICATE-----

MIICpDCCAYwCCQCKpXWGum9uTjANBgkq9w0BAQsFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3cNMTYxMTAyMjAxNTA2WhcNMTYxMTAzMjAxNTA2WjAUMRIwEAYD
VQQDEwlsb2Nvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDD
ETr/ne/gP47+9LgjLvBJjpbFVdaeUabZZ3wbA7sSIVnnNXWt3yPklrWSfIh+
L2+dq4k+YunsQE2+dwPdXA2x8DPGvqGcCdWPxnpZ7ix5Akbs8i/J+Ue0pXT4
jkpWbaDDftGL2tcxwP45yI+slpDYvmWRps07TFXkAPjGEHYPvCT9/v/35GkL
0h4v0S+XfpcjS5c47o7CIWlkgEM5GBosQUb17kuVR48392vGFPsnCP34iNe7
zguhiCXYg2zkOcj/N3AE4xKIhCz0QcewULy08GltWMmyjJ/30zs8P41JqoA4
RwfeEZ8RenN3rJQim1ppAAEwDQYJKoZIhvcNAQELBQADggEBAHcORIfc+ySe
2FMmqicNe6Wt5V/5zOaBMLsGQdqGOHB5cQc79sMBrk680KVhrwHXZ2nBIkVe
UEL+2qLY1VLfswBNAvcNwV9U4TwHq4eIANiD751oJK1tHmM/ujThQkwNf96o
6I7Ws+wfpGO3ppJCttRbtnATIxrwsCHN4i5lbW/tJSL7t/Zf6T1B+YSJU9AF
xuvLq22cCqyYJQdmKq2vVS55WRZdllm+mRtJrv7MLM9gfDPRxVlwrBz/eQHy
Fv+dwzxcvQjkz03RNhZUodzuD34DPJoYeK++rItsddwQ26KTahH80yYTAFzY
x9gfPf1/+qo=?

-----END CERTIFICATE-----

為 Apigee Edge Cloud 設定 Edge Microgateway

讓 Edge Microgateway 能夠與 Apigee Edge Cloud 執行個體搭配運作。這個指令會包裝並執行一連串指令,將必要的驗證 Proxy 部署至 Edge、產生驗證權杖,以及更新設定檔。如需完整的運作範例,請參閱「設定及配置 Edge Microgateway」。

用量

edgemicro configure -o [organization] -e [environment] -u [username] -p [password]

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-u, --username 您的 Apigee 使用者名稱。您必須是指定機構的機構管理員。
-p, --password (選用) 密碼。如果您未在指令列中提供這個參數,系統會提示您輸入。
-r, --url (選用) 指定貴機構:環境的虛擬主機別名。如要瞭解虛擬主機,請參閱 Edge 說明文件。預設值: org-env.apigee.net
-c, --configDir (選用) 指定 Edge Microgateway 設定檔的路徑。根據預設,設定檔位於 ./config/config.yaml。(已新增至 2.4.x 版)
-x, --proxyName (選用) 設定 edgemicro-auth Proxy 的 basepath。如果 edgemicro-auth Proxy 部署在預設路徑 /edgemicro-auth 以外的路徑,您可以使用這項功能在 Edge Microgateway 中設定新路徑。根據預設,基本路徑為 /edgemicro-auth。(新增 v2.4.x)
-t, --token (選用) 讓您使用 OAuth 權杖進行驗證,而非使用者名稱/密碼。 另請參閱「使用 OAuth2 存取權杖保護 API 呼叫安全」。 例如:

edgemicro configure -o docs -e test -t <your token>
-v, --virtualHosts (選用) 覆寫預設虛擬主機,即「default,secure」。如果為 Edge 機構:環境指定了預設以外的虛擬主機,請使用這個選項。如要瞭解虛擬主機,請參閱 Edge 說明文件。
-d, --debug (選用) 提供偵錯資訊。
-h, --help 輸出使用情況資訊。

使用須知

這項指令會將設定資訊儲存在 ~/.edgemicro/org-env-config.yaml 中。

範例

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

輸出內容

成功後,指令會傳回一組金鑰,您必須在啟動 Edge Microgateway 時使用這些金鑰。

...

The following credentials are required to start edge micro
  key: d2f0a246ad52b5d2a8b04ba65b43c76348aba586691cf6185cd7bb9fb78fe9f
  secret: 59813bc1db4a7ada182705ae40893c28a6fae680c3deb42aefbf1a4db42e372

edgemicro configuration complete!

產生金鑰

genkeys 指令會產生一組金鑰和密鑰配對,供 Edge Microgateway 在非同步將數據分析資料發布至 Apigee Edge 時,用來驗證自身。

用量

edgemicro genkeys -o [organization] -e [environment] -u [username] -p [password]

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-u, --username 您的 Apigee 使用者名稱。您必須是指定機構的機構管理員。
-p, --password (選用) 密碼。如果您未在指令列中提供這個參數,系統會提示您輸入。
-t, --token (選用) 讓您使用 OAuth 權杖進行驗證,而非使用者名稱/密碼。 另請參閱「使用 OAuth2 存取權杖保護 API 呼叫安全」。 例如:

edgemicro genkeys -o docs -e test -t <your token>
-h, --help 輸出使用情況資訊。

使用須知

成功時,指令會傳回三個項目。第一個是您必須放在設定檔中的網址。另外兩個是啟動 Edge Microgateway 執行個體時必須使用的金鑰組。

  • 啟動網址:這個網址指向 Apigee Edge 服務,可讓 Edge Microgateway 執行個體將 Analytics 資料傳送至 Apigee Edge。您需要將該網址複製到 Edge Microgateway 設定檔:~/.edgemicro/org-env-config.yaml
  • key:金鑰。啟動 Edge Microgateway 執行個體時,需要將這個金鑰和密鑰做為 CLI 指令的輸入內容。
  • secret:密鑰。

範例

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

輸出內容 (範例)

成功後,指令會傳回一組金鑰,您必須在啟動 Edge Microgateway 時使用這些金鑰。

configuring host edgemicroservices-us-east-1.apigee.net for region us-east-1
Please copy the following property to the edge micro agent config
  bootstrap: https://edgemicroservices-us-east-1.apigee.net/edgemicro/bootstrap/organization/jdoe/environment/test

The following credentials are required to start edge micro
  key: db39324077989c75eac34c13d285772ea8e3b982b957b3f52916f3048511443f
  secret: 5bf8da39de0056f88fdd5f25a8602d22f312c1c8c870580a5fef55ac6637b7ae

finished

為 Apigee Edge Private Cloud 設定 Edge Microgateway

設定 Edge Microgateway,以便與 Apigee Edge 私有雲安裝作業搭配使用。

用量

edgemicro private configure -o [organization] -e [environment] -u [username] -p [password]

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-u, --username 您的 Apigee 使用者名稱。您必須是指定機構的機構管理員。
-p, --password (選用) 密碼。如果您未在指令列中提供這個參數,系統會提示您輸入。
-r, --runtime-url 指定私有雲執行個體的執行階段網址。
-m, --mgmt-url 私有雲執行個體管理伺服器的網址。
-v, --virtualHosts 貴機構/環境的虛擬主機清單 (以半形逗號分隔)。預設值為「default,secure」。
-c, --configDir (選用) 指定 Edge Microgateway 設定檔的路徑。根據預設,設定檔位於 ./config/config.yaml。(已新增至 2.4.x 版)
-t, --token (選用) 讓您使用 OAuth 權杖進行驗證,而非使用者名稱/密碼。 另請參閱「使用 OAuth2 存取權杖保護 API 呼叫安全」。 例如:

edgemicro configure -o docs -e test -t <your token>
-d, --debug (選用) 提供偵錯資訊。
-h, --help 輸出使用情況資訊。

使用須知

這項指令會將設定資訊儲存在 ~/.edgemicro/org-env-config.yaml 中。

範例

edgemicro private configure -o docs -e test -u jdoe@example.com -r http://192.162.55.100:9002 -m http://192.162.55.100:8080

輸出內容

成功後,指令會傳回一組金鑰,您必須在啟動 Edge Microgateway 時使用這些金鑰。

...

The following credentials are required to start edge micro
  key: d2f0a246ad52b5d2a8b04ba65b43c76348aba586691cf6185cd7bb9fb78fe9f
  secret: 59813bc1db4a7ada182705ae40893c28a6fae680c3deb42aefbf1a4db42e372

edgemicro configuration complete!

啟動 Edge Microgateway

啟動 Edge Microgateway 之前,請先執行 edgemicro configure (公有雲) 或 edgemicro private configure (私有雲)。configure 指令會傳回啟動 Edge Microgateway 時所需的金鑰和密碼值。

用量

edgemicro start -o [organization] -e [environment] -k [public-key] -s [secret-key]

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-k, --key 執行「edgemicro configure」指令時傳回的鍵值。
-s, --secret 執行「edgemicro configure」指令時傳回的密鑰值。
-p, --processes (選用) 要啟動的程序數量。預設值:系統上的核心數量。
-d, --pluginDir (選用) 外掛程式目錄的絕對路徑。
-r, --port (選用) 覆寫 ~/.edgemicro/org-env-config.yaml 檔案中指定的通訊埠號碼。預設值:8000
-c, --cluster

(選用) 在叢集模式下啟動 Edge Microgateway。

注意: 自 2.3.1 版起,這個選項已移除。在 v2.3.1 以上版本中,Edge Micro 一律會以叢集模式啟動。

-c, --configDir (選用) 指定 Edge Microgateway 設定檔的路徑。根據預設,設定檔位於 ./config/config.yaml。(已新增至 2.4.x 版)
-u, --configUrl (選用) 指定 Edge Microgateway 下載設定檔的端點。(v2.5.x 新增)
-d, --debug (選用) 提供偵錯資訊。
-h, --help 輸出使用情況資訊。

設定通訊埠

您可以使用 start 指令指定通訊埠編號,覆寫設定檔中指定的通訊埠。您也可以使用 PORT 環境變數指定通訊埠號碼。例如:

edgemicro start -o docs -e test -k abc123 -s xyz456 -p 2 --port 8002

export PORT=8002
edgemicro start -o org -e test -k key -s secret -p 2

如果通訊埠正在使用中,Edge Microgateway 會傳回錯誤。

關於分群

Edge Microgateway 會使用 Node.js 叢集模組啟用叢集功能。叢集功能可讓 Edge Microgateway 充分運用多核心系統。詳情請參閱這份 Node.js 說明文件

範例

edgemicro start -o docs -e test -k abc123 -s xyz456

輸出內容範例:

...

current nodejs version is v12.5.0
current edgemicro version is 3.0.2
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

管理權杖

token 指令可讓您取得、解碼及驗證已簽署的 OAuth2 存取權杖。另請參閱「 使用 OAuth2 存取權杖保護 API 呼叫安全」。

解碼權杖

將已簽署的編碼不記名權杖解碼為純文字 JSON JWT (Java Web Token) 表示法。權杖會傳達 Apigee Edge 開發人員應用程式的相關資訊,包括應用程式名稱、client_id、產品清單等,這些資訊提供用於建立權杖的金鑰。

用量

edgemicro token decode -f [filename]

參數

參數 說明
-f, --file 包含要解碼的 JWT 權杖的檔案名稱。
-h, --help 輸出使用情況資訊。

範例

edgemicro token decode -f token.jwt

輸出內容 (範例)

{ header: { typ: 'JWT', alg: 'RS256' },

  payload:
   { application_name: 'b43342ef-86f6-4666-a121-b9ac2025d217',
     client_id: 'O9ZQRZKnn1rdgcKQgsABSMdOsKS',
     scopes: [],
     api_product_list: [ 'MicroTest' ],
     iat: 1436280566,
     exp: 1436282365 },
  signature: '' }

產生權杖

產生已簽署的承載權杖。有了權杖,用戶端應用程式就能向 Edge Microgateway 發出經過驗證的 API 呼叫。這個權杖是符合 OAuth 2.0 規範的 JSON Web Token (JWT)。您必須輸入 Apigee Edge 上已註冊開發人員應用程式的用戶端金鑰 (用戶端 ID) 和用戶端密鑰值。另請參閱「 使用 OAuth2 存取權杖保護 API 呼叫安全」。

用量

edgemicro token get -o [org] -e [env] -i [client_id] -s [client_secret]

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-1, --key 與支援 Microgateway 的 Proxy 相關聯的開發人員應用程式用戶端 ID。
-s, --secret 與支援 Microgateway 的 Proxy 相關聯的開發人員應用程式用戶端密鑰。
-h, --help 輸出使用情況資訊。

範例

edgemicro token get -o docs -e test -i 5UzOwAXGoOeo60aew94PPG5MAZE3aJp -s 6vahKFGS9a3qMLwz

輸出內容 (範例)

{ token: 'eyJ0eXAiOiJKV1JhbGciOiJSUzI1NiJ9Glvbl9uYW1lIjoiNWNiMGY0NTV6TV3
EtOWMzOC00YmJjLWIzNzEtZGMxZTQzOGMxIiwiY2xpZW50X2lkIjoiNVV6T3dBWEdvSU9lbz
YwYWV3OTRQN0c1TUFaRTNhSnAiLCJzY2MiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIkVkZ2
VNaWNyb1Rlc3RQcm9kdWN0Il0sImlhdCI3ODEyMzQ2MSwiZXhwIjoxNDc4MTI1MjYwfQ.Dx5
f5U7PXm8koNGmFX4N6VrxKMJnpndKgoJ5zWSJvBZ6Ccvhlpd85ipIIA5S2A5nx4obYWp_rpY
RJpIGYwyxP6Oq2j0rxnVjdCC4qyYMgthZjhKgEBVBe3s1ndP72GP2vV6PsSA9RQ2-yzsy9r0
TzhAZ3NJTxT1tS0XKqKngE-OhR3fJHVLAzdMDT0AmS9H0Z2NAJtQOuK6RTpCjG9B6Bc48AEM
sj7QSM-1LWiQ8LdY8k_BoC06qsTI7bCQGWwTuqL-ismbcx2bxovUxSemZIaoROfuF-dCZHG3
2aTP75WxBvvNgBBvPvQtPzbeSOtEaww' }

您也可以使用 Management API 產生 JWT:

curl -i -X POST "http://$ORG-$ENV.apigee.net/edgemicro-auth/token" \
  -H "Content-Type: application/json" \
  -d '{
    "$CLIENT_ID": "your consumer key",
    "$CLIENT_SECRET": "your consumer secret",
    "grant_type": "client_credentials"
  }'

其中:

  • $ORG 是 Edge 機構名稱 (您必須是機構管理員)。
  • $ENV 是貴機構的環境 (例如「test」或「prod」)。
  • $CLIENT_ID 是您先前建立的開發人員應用程式中的消費者 ID。
  • $CLIENT_SECRET 是您先前建立的開發人員應用程式中的消費者密鑰。

驗證權杖

根據儲存在 Apigee Edge 的公開金鑰,驗證指定機構和環境的已簽署不記名權杖。

用量

edgemicro token verify -o [org] -e [env] -f [filename]

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-f, --file 包含待驗證 JWT 的檔案名稱。
-h, --help 輸出使用情況資訊。

範例

edgemicro token get -o docs -e test -f token.jwt

有效權杖的輸出內容範例

{ application_name: 'b43342ef-86f6-4666-a121-b9ac2025d217',

  client_id: 'O9ZQRZKnn1rdgcKQsAZUBkQSMdOsKS',

  scopes: [],

  api_product_list: [ 'MicroTest' ],

  iat: 1436396155,

  exp: 1436397954 }

無效權杖的輸出內容範例

{ [JsonWebTokenError: invalid token] name: 'JsonWebTokenError', message: 'invalid token' }

權杖過期時的輸出內容範例

{ [TokenExpiredError: jwt expired]

  name: 'TokenExpiredError',

  message: 'jwt expired',

  expiredAt: Tue Jul 07 2015 09:19:25 GMT-0600 (MDT) }

初始化新的 Edge Microgateway 設定

首次安裝 Edge Microgateway 後,請執行一次這項指令。建立新的預設設定檔:~/.edgemicro/default.yaml

用量

edgemicro init

參數

參數 說明
-c, --configDir (選用) 指定 Edge Microgateway 設定檔的路徑。根據預設,設定檔位於 ./config/config.yaml。(已新增至 2.4.x 版)
-h, --help 輸出使用情況資訊。

範例

edgemicro init

輸出內容 (成功)

config initialized to /MyHome/.edgemicro/default.yaml

驗證 Edge Microgateway 設定

確認 Edge Microgateway 設定正確無誤。

用量

edgemicro verify -o [organization] -e [environment] -k [public-key] -s [secret-key]

參數

範例

edgemicro verify -o docs -e test -k abc123 -s xyz456

輸出內容 (成功)

logging to /var/tmp/edgemicro-My-Machine.local-a0c48610-a148-11e6-8466-93f081b05988
installed plugin from analytics
installed plugin from oauth
a0c48610-a148-11e6-8466-93f081b05988 edge micro listening on port 8000
verifying analytics negative case: OK
verifying bootstrap url availability:OK
verifying jwt_public_key availability: OK
verifying products availability: OK
verifying quota with configured products: OK
verifying analytics with payload: OK
verification complete

檢查微閘道叢集狀態

根據預設,Edge Microgateway 會以叢集模式啟動。您可以使用這項指令檢查叢集狀態。

用量

edgemicro status

參數

參數 說明
-h, --help 輸出使用情況資訊。

範例

edgemicro status

輸出內容 (成功)

current nodejs version is v12.5.0
current edgemicro version is 3.0.2
edgemicro is running with 8 workers

停止微閘道叢集

停止 Edge Microgateway 叢集。

用量

edgemicro stop

參數

參數 說明
-h, --help 輸出使用情況資訊。

範例

edgemicro stop

輸出內容 (成功)

current nodejs version is v12.5.0
current edgemicro version is 3.0.2
Stop Completed Successfully

重新載入微閘道叢集

在設定變更後提供零停機時間重新啟動。透過提取新設定重新載入 Edge Microgateway。

用量

edgemicro reload -o [organization] -e [environment] -k [public-key] -s [secret-key]

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-k, --key 執行「edgemicro configure」指令時傳回的鍵值。
-s, --secret 執行「edgemicro configure」指令時傳回的密鑰值。
-h, --help 輸出使用情況資訊。

範例

edgemicro reload -o docs -e test -k abc123 -s xyz456

輸出內容 (成功)

...

Reload Completed Successfully

升級 edgemicro-auth Proxy

如要使用金鑰輪替,您必須在 Apigee Edge 機構中部署升級版 edgemicro-auth 代理程式。(v2.5.x 新增)

注意:如果您在 2.5.2 版之前設定目前的 Edge Micro 執行個體,則必須升級這個 Proxy,才能使用金鑰輪替功能。這項升級只需進行一次。

用量

edgemicro upgradeauth -o [organization] -e [environment] -u [username]

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-u, --username 您的 Apigee 使用者名稱。您必須是指定機構的機構管理員。
-p, --password (選用) 密碼。如果您未在指令列中提供這個參數,系統會提示您輸入。
-v, --virtualhost (選用) Proxy 的虛擬主機。
-b, --baseuri (選用) 貴機構在 Apigee Edge 上的基本 URI。Apigee 雲端部署的預設基本 URI 為 api.enterprise.apigee.com。如果是內部部署,基本網址可能不同。

範例

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

輸出內容 (成功)

成功後,指令會傳回類似下列的輸出內容:

Going to create revision 2 of API edgemicro-auth
Using /Users/jdoe/npm/lib/node_modules/edgemicro/node_modules/microgateway-edgeauth/apiproxy/edgemicro-auth.xml as the root file
Creating revision 2 of API edgemicro-auth
Uploading java resource micro-gateway-products-javacallout-2.0.0.jar
Uploading jsc resource generate-verify-jwt.js
Uploading jsc resource send-public-key.js
Uploading jsc resource set-jwt-variables.js
Uploading jsc resource set-response.js
Uploading node resource index.js
Uploading node resource node_modules_apigee-access.zip
Uploading node resource node_modules_base64url.zip
Uploading node resource node_modules_buffer-equal-constant-time.zip
Uploading node resource node_modules_ecdsa-sig-formatter.zip
Uploading node resource node_modules_jsrsasign.zip
Uploading node resource node_modules_jwa.zip
Uploading node resource node_modules_jws.zip
Uploading node resource node_modules_safe-buffer.zip
Uploading node resource package.json
Uploading policy Access-App-Info-2.xml
Uploading policy Access-App-Info.xml
Uploading policy AccessTokenRequest.xml
Uploading policy Add-Custom-Claims.xml
Uploading policy Create-OAuth-Request.xml
Uploading policy Create-Refresh-Request.xml
Uploading policy Extract-API-Key.xml
Uploading policy Extract-OAuth-Params.xml
Uploading policy Extract-Refresh-Params.xml
Uploading policy Get-Private-Key.xml
Uploading policy Get-Public-Key.xml
Uploading policy Get-Public-Keys.xml
Uploading policy JavaCallout.xml
Uploading policy Products-to-JSON-2.xml
Uploading policy Products-to-JSON.xml
Uploading policy Raise-Fault-Unknown-Request.xml
Uploading policy RefreshAccessToken.xml
Uploading policy Send-Public-Key.xml
Uploading policy Set-JWT-Variables.xml
Uploading policy Set-Response.xml
Uploading policy Verify-API-Key.xml
Uploading target TargetEndpoint-1
Uploading proxy default
Deploying revision 2 of edgemicro-auth to test
Deployment on test successful
edgemicro-auth proxy upgraded

鍵/值對應 (KVM) 升級

使用 edgemicro upgradekvm 指令升級 Apigee 機構中的 KVM。如要使用金鑰輪替,必須升級 KVM。

用量

公有雲專用 Edge:

edgemicro upgradekvm -o [organization] -e [environment] -k [key] -s [secret]

Edge for Private Cloud:

edgemicro private upgradekvm -o [organization] -e [environment] -k [key] -s [secret] -p 'https://[hostname]/edgemicro-auth'

參數

參數 說明
-o, --org 您為 Edge Microgateway 設定的 Apigee 機構。
-e, --env 您已為其設定 Edge Microgateway 的環境。
-k, --key 執行「edgemicro configure」指令時傳回的鍵值。
-s, --secret 執行「edgemicro configure」指令時傳回的密鑰值。
-p, --proxyuri edgemicro_auth proxy 的 URI

Edge Public Cloud:選用。
Edge Private Cloud:必要。

Edge Public Cloud 範例:

 -p 'https://[org]-[env].apigee.net/edgemicro-auth'

Edge Private Cloud 範例:

-p 'https://[hostname]/edgemicro-auth'

範例

edgemicro upgradekvm -o docs -e test \
-k 27ee39567c75e4567a66236cbd4e86d1cc93df6481454301bd5fac4d3497fcbb \
-s 4618b0008a6185d7327ebf53bee3c50282ccf45a3cceb1ed9828bfbcf1148b47

輸出內容 (成功)

成功後,指令會傳回類似下列的輸出內容:

current nodejs version is v12.5.0
current edgemicro version is 3.1.5
password:
Checking for certificate...
Certificate found!
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsT6yVoT/h6pvkPlkUUtv
Hgs7MbDPcWxto7dZqJBwQ4oOQ0IJ2P4XGigc3kYUyPp5lFHg1ssP9+0onRpqn6Lq
z7N5iaTSv5YXb26bU2kSOl4hbwcljIzauAnBzQ13VaQ5SoflRxMGSZmTqZeu5jkQ
3JZ7F6k2bCar5sk1k84vd4WXcCVyngFlrMtlux5z0vOU56QYZFvvKYl/wOHNPLLB
Js54531CV1ZfhV3nDDq9Lh5D1C/oQVlm1Lc7BJoEUmKeFATmSsi50c14ScsmdtJ1
HqC/brSXCd185P6ifu2RH7IHKzNfcD4NlfAVmDScng4w5RxBan2avbmAJrokQ4b5
WQIDAQAB
-----END PUBLIC KEY-----
KVM update complete

金鑰輪替

使用 edgemicro rotatekey 指令,輪替用於產生 JWT 權杖的公開/私密金鑰組,這些權杖用於 Edge Microgateway 的 OAuth 安全性。

詳情請參閱「 輪替 JWT 金鑰」。

用量

公有雲專用 Edge:

edgemicro rotatekey -o [organization] -e [environment] -k [key] -s [secret]

Edge for Private Cloud:

edgemicro private rotatekey -o [organization] -e [environment] -k [key] -s [secret] -r '[hostname]/edgemicro-auth/rotateKey'

參數

參數 說明
-o, --org (必要) 您為 Edge Microgateway 設定的 Apigee 組織。
-e, --env (必要) 您已設定 Edge Microgateway 的環境。
-k, --key 執行「edgemicro configure」指令時傳回的鍵值。
-s, --secret 執行「edgemicro configure」指令時傳回的密鑰值。
-p Apigee Edge 要使用的自訂私密金鑰路徑。(3.1.6 版新增)
-c Apigee Edge 要使用的自訂憑證路徑。(3.1.6 版新增)
-n, --nbf

設定新的私密金鑰生效的延遲時間 (以分鐘為單位)。這段延遲時間可讓微閘道執行個體重新整理,取得新的公開金鑰。建議您將延遲時間設為大於 config_change_poll_internal 設定 (預設為 10 分鐘)。詳情請參閱「設定『不早於』延遲時間」。(3.1.6 版新增)

注意: 如果您使用的 edgemicro-auth 版本比 Edge Microgateway 3.1.6 隨附的版本舊,系統會忽略這個選項。

-i, --kid (選用) 用於比對特定金鑰的 ID。Edge Microgateway 會使用這個值,在金鑰輪替期間從一組金鑰中選擇。如果省略這個參數 (建議做法),Edge Microgateway 會產生以時間戳記為準的金鑰。詳情請參閱 JSON 網頁金鑰規格的第 4.5 節。
-r, --rotatekeyuri 輪替金鑰 URI。

Edge Public Cloud:選用。
Edge Private Cloud:必要。

公有雲範例:

-r 'https://[org]-[env].apigee.net/edgemicro-auth/rotateKey'

Edge Private Cloud 範例:

-r '[hostname]/edgemicro-auth/rotateKey'

範例

edgemicro rotatekey -o docs -e test \
-k 27ee39567c75e4567a66236cbd4e86d1cc93df6481454301bd5fac4d3497fcbb \
-s 4618b0008a6185d7327ebf53bee3c50282ccf45a3cceb1ed9828bfbcf1148b47

輸出內容 (成功)

成功後,指令會傳回類似下列的輸出內容:

current nodejs version is v12.5.0
current edgemicro version is 3.0.2
password:
Checking if private key exists in the KVM...
Checking for certificate...
Found Certificate
Generating New key/cert pair...
Extract new public key
Key Rotation successfully completed!

輪替後,您可以在 Edge UI 中看到微閘道 KVM 已新增金鑰。

範例

這個範例會使用 -p-c 標記,指定私密金鑰/憑證配對的路徑。這些選項可讓您傳遞自訂私密金鑰和憑證配對。

edgemicro rotatekey -o docs -e test \
-k 27ee39567c75e4567a66236cbd4e86d1cc93df6481454301bd5fac4d3497fcbb \
-s 4618b0008a6185d7327ebf53bee3c50282ccf45a3cceb1ed9828bfbcf1148b47 \
-p /users/home/keys.pem -c /users/home/cert.cert

永久監控

使用 edgemicro forever 指令管理 Forever 程序。這個 Node.js 工具會在 Node.js 應用程式停止運作或發生錯誤時,自動重新啟動應用程式。另請參閱「 永久監控」。

用量

執行 edgemicro forever 指令前,請務必設定下列環境變數:

  • EDGEMICRO_ORG:您為其設定 Edge Microgateway 的 Apigee 機構。
  • EDGEMICRO_ENV - 您已設定 Edge Microgateway 的環境。
  • EDGEMICRO_KEY - 執行「edgemicro configure」指令時傳回的鍵值。
  • EDGEMICRO_SECRET:執行「edgemicro configure」指令時傳回的密鑰值。
edgemicro forever -f [forever_file] -a [start|stop]

參數

參數說明
-f, --file指定 forever.json 檔案的位置。
-a, --actionstartstop。預設值為 start。

範例:

如何開始使用「永久保存」:

edgemicro forever -f ~/mydir/forever.json -a start

如要停止 Forever:

edgemicro forever -a stop

撤銷金鑰

使用 edgemicro revokekeys 指令,撤銷 Edge Microgateway 設定的金鑰和密碼憑證。

用量

edgemicro revokekeys -o [organization] -e [environment] -u [username]
-k [key] -s [secret]

參數

參數 說明
-o, --org (必要) 您為 Edge Microgateway 設定的 Apigee 組織。
-e, --env (必要) 您已設定 Edge Microgateway 的環境。
-u, --username (必填) 您的 Apigee 使用者名稱。您必須是指定機構的機構管理員。
-p, --password (選用) 密碼。如果您未在指令列中提供這個參數,系統會提示您輸入。
-k, --key (必要) 要撤銷的金鑰。
-s, --secret (必要) 要撤銷的密鑰。

範例

edgemicro revokekeys -o myorg -e test -u jdoe@apigee.com
-k 2c0064f5bd85f5573dcaffe21566fa7a2d49885cdbf8899370c8a4479285f -s 4b5d6355b874f7c46838893823e8d929dcb2e42fb9aebcb535089c9b98513

成功後,您會看到以下訊息:

key 2c0064f5bd85f5573dcaffe21566fa7a2d49885cdbf8899370c8a4479285f revoked successfully