Edge Microgate 的 CLI 参考文档

<ph type="x-smartling-placeholder"></ph> 您正在查看 Apigee Edge 文档。
转到 Apigee X 文档
信息

Edge Microgateway v. 3.1.5 及更高版本

概览

借助 Edge Microgateway CLI,您可以控制和管理 Edge Microgateway 的所有方面 实例。

<ph type="x-smartling-placeholder">

管理证书

借助 cert 命令,您可以安装和管理公钥/私钥对 用于对客户端使用的不记名令牌进行签名,以便通过 Edge 进行安全调用 Microgateway。这些密钥以加密的键值对映射 (KVM) 的形式存储在 Apigee Edge 上。Edge Microgateway 使用 公钥以验证已签名的不记名令牌。这些密钥是在您运行 configure 命令,如设置和 配置 Edge Microgateway。您可以使用此处所述的 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 实例搭配使用。它会封装起来并具有出色的性能 一系列命令,用于将所需的身份验证代理部署到 Edge,生成身份验证 以及更新配置文件有关完整的工作示例,请参阅设置和 配置 Edge Microgateway

<ph type="x-smartling-placeholder">

用法

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 (可选)为“organization:environment”指定虚拟主机别名。请参阅 用于了解虚拟主机的 Edge 文档。默认: org-env.apigee.net
-c, --configDir (可选)指定 Edge Microgateway 配置文件的路径。默认情况下 配置文件位于 ./config/config.yaml 中。(添加 v2.4.x)
-x, --proxyName (可选)设置 edgemicro-auth 代理的基本路径。如果 edgemicro-auth 代理部署在与默认值不同的路径下 /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 organization:环境。请参阅 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 实例。您需要复制该网址 插入 Edge Microgateway 配置文件:~/.edgemicro/org-env-config.yaml
  • key:密钥。必须提供此密钥和 Secret 作为 CLI 的输入 命令,用于启动 Edge Microgateway 实例。
  • 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 私有云配置 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 “organization:environment”的虚拟主机列表(以英文逗号分隔)。默认 “default,secure”。
-c, --configDir (可选)指定 Edge Microgateway 配置文件的路径。默认情况下 配置文件位于 ./config/config.yaml 中。(添加 v2.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

<ph type="x-smartling-placeholder">

示例

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(私有云)。配置 命令返回启动 Edge Microgateway 所需的键和 Secret 值。

用法

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”时返回的 Secret 值命令。
-p, --processes (可选)要启动的进程数。默认值: 系统。
-d, --pluginDir (可选)插件目录的绝对路径。
-r, --port (可选)覆盖 ~/.edgemicro/org-env-config.yaml 个文件。默认值:8000
-c, --cluster

(可选)以集群模式启动 Edge Microgateway。

注意从 v2.3.1 开始,此选项已被移除。在 v2.3.1 中 及更高版本,Edge Micro 始终以集群模式启动。

-c, --configDir (可选)指定 Edge Microgateway 配置文件的路径。默认情况下 配置文件位于 ./config/config.yaml 中。(添加 v2.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 cluster 模块启用聚类。通过集群,Edge Microgateway 可以 充分利用多核系统的优势如需了解详情,请参阅此 Node.js 文档

<ph type="x-smartling-placeholder">

示例

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 网络令牌) 表示。令牌用于传达提供 用于创建令牌的密钥,包括应用名称、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: '' }

生成令牌

生成已签名的不记名令牌。通过该令牌,客户端应用可以进行经过身份验证的 API 调用 再到 Edge Microgateway。该令牌是符合 OAuth 2.0 标准的 JSON 网络令牌 (JWT)。它需要 请输入一个已注册的客户密钥(客户端 ID)和使用方密钥(客户端密钥) Apigee Edge 上的开发者应用。另请参阅 使用 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 感知功能关联的开发者应用中的客户端 ID 代理。
-s, --secret 来自开发者应用的客户端密钥(与您的 Microgateway 感知功能相关联) 代理。
-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 是您创建的开发者应用中的使用方 Secret 。

验证令牌

针对指定的 组织和环境。

用法

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 中。(添加 v2.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 以集群模式启动。您可以使用此命令 集群状态

<ph type="x-smartling-placeholder">

用法

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

停止 microgateway 集群

停止 Edge Microgateway 集群。

<ph type="x-smartling-placeholder">

用法

edgemicro stop

参数

参数 说明
-h, --help 输出使用情况信息。

示例

edgemicro stop

输出 (成功)

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

重新加载 microgateway 集群

在配置更改后提供零停机重启。重新加载 Edge Microgateway 拉取新配置

<ph type="x-smartling-placeholder">

用法

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”时返回的 Secret 值命令。
-h, --help 输出使用情况信息。

示例

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

输出 (成功)

...

Reload Completed Successfully

升级 Edgemicro-auth 代理

如需使用密钥轮替,您必须拥有升级版 Apigee Edge 组织中部署的 Edgemicro-auth 代理。(添加 v2.5.x)

注意:如果您在之前配置当前的 Edge Micro 实例, 2.5.2 版,则您必须升级此代理,才能使用密钥轮替。您只需要 执行一次升级

用法

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

参数

参数 说明
-o, --org 您为其配置 Edge Microgateway 的 Apigee 组织。
-e, --env 您为其配置了 Edge Microgateway 的环境。
-u, --username 您的 Apigee 用户名。您必须是 组织。
-p, --password (可选)您的密码。如果您在 命令行。
-v, --virtualhost (可选)代理的虚拟主机。
-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:

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”时返回的 Secret 值命令。
-p, --proxyuri edgemicro_auth 代理的 URI

Edge 公有云:可选。
Edge Private Cloud:必需。

Edge 公有云示例:

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

边缘私有云示例:

-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 命令轮替公钥/私钥对 用于在 Edge Microgateway 上生成 OAuth 安全性的 JWT 令牌。

要了解详情,请参阅 轮替 JWT 密钥

用法

适用于公有云的 Edge:

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

适用于私有云的 Edge:

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”时返回的 Secret 值命令。
-p 指向 Apigee Edge 使用的自定义私钥的路径。(添加 3.1.6)
-c 指向 Apigee Edge 使用的自定义证书的路径。(添加 3.1.6)
-n, --nbf

配置新私钥生效的延迟时间(分钟)。这个 Delay 会让 Microgateway 实例有时间根据新的公共 键。最好将延迟时间设置为大于 config_change_poll_internal 配置设置。 默认为 10 分钟有关详情,请参阅配置“不早于”延迟。(添加 3.1.6)

注意 :如果您将此选项与 edgemicro-auth之前的版本一起使用, 则忽略该标志。

-i, --kid (可选)用于匹配特定键的 ID。Edge Microgateway 使用此值 在密钥轮替期间从一组密钥中进行选择。如果省略此参数(推荐), Edge Microgateway 会生成基于时间戳的密钥。有关详情,请参阅 JSON Web Key 规范。
-r, --rotatekeyuri 轮替密钥 URI。

Edge 公有云:可选。
Edge Private Cloud:必需。

公有云示例:

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

边缘私有云示例:

-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 界面中看到新密钥已添加到微网关 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 命令管理永久 进程,一个 Node.js 工具,可在应用出现故障或出现错误时自动重启 Node.js 应用。 另请参阅 永久监控

用法

在执行 edgemicro forever 命令之前,您必须设置以下环境变量:

  • EDGEMICRO_ORG - 为其配置 Edge Microgateway 的 Apigee 组织。
  • EDGEMICRO_ENV - 您为其配置了 Edge Microgateway 的环境。
  • EDGEMICRO_KEY - 运行“edgemicro configure”时返回的键值对命令。
  • EDGEMICRO_SECRET - 运行“edgemicro configure”时返回的 Secret 值命令。
edgemicro forever -f [forever_file] -a [start|stop]

参数

参数说明
-f, --file指定 forever.json 文件的位置。
-a, --action可以是 startstop。默认值为 start。

示例

如要启动“永久保存”功能,请执行以下操作:

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

如要永久停用,请按以下步骤操作:

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