Edge Microgateway の CLI リファレンス

Edge Microgateway v. 3.1.x

概要

Edge Microgateway CLI を使用すると、Edge Microgateway インスタンスを全面的に制御、管理できます。

証明書の管理

cert コマンドを使用すると、クライアントが署名なしトークン(Edge Microgateway 経由で安全な呼び出しを行うために使用)に署名するために使用する公開鍵 / 秘密鍵のペアをインストールおよび管理できます。鍵は、Apigee Edge の、暗号化された KeyーValue マップ(KVM)に保存されます。Edge Microgateway は、公開鍵を使用して署名付きトークンを検証します。Edge Microgateway の設定と構成の説明に従って、edgemicro configure コマンドを実行すると、これらの鍵が生成されます。必要に応じて、ここで説明した cert コマンドを使用して、これらの鍵を再生成および管理できます。

証明書をインストールする

暗号化された Key-Value マップ(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 の設定と構成をご覧ください。

使用方法

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 にあります(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 組織 / 環境に仮想ホストが指定されている場合は、このオプションを使用します。仮想ホストの詳細については、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 コマンドは、分析データを Apigee Edge に非同期に送信するときに、Edge Microgateway が使用する鍵とシークレットのペアを生成して認証します。

使用方法

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 使用状況情報を出力します。

使用上の注意

成功すると、このコマンドは 3 つの項目を返します。1 つは、構成ファイルに配置する必要のある URL です。他の 2 つは、Edge Microgateway インスタンスを起動するときに必要となる鍵のペアです。

  • ブートストラップ URL: この URL は、Edge Microgateway インスタンスが分析データを Apigee Edge に送信することを可能にする Apigee Edge サービスを指します。その URL を、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 for Private Cloud への Edge Microgateway の構成

Edge Microgateway を Apigee Edge for Private Cloud インストールで動作するように構成します。

使用方法

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 プライベート クラウド インスタンスのランタイム URL を指定します。
-m, --mgmt-url プライベート クラウド インスタンスの管理サーバーの URL。
-v, --virtualHosts 組織 / 環境の仮想ホストのカンマ区切りリスト。デフォルトは「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 に構成情報を格納します。

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(Public Cloud)または edgemicro private configure(Private Cloud)を実行する必要があります。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」コマンドを実行すると返される Key-Value。
-s, --secret edgemicro configure」コマンドを実行すると返されるシークレットの値。
-p, --processes (省略可)開始するプロセス数。デフォルト: システム上のコア数。
-d, --pluginDir (省略可)プラグイン ディレクトリへの絶対パス。
-r, --port (省略可)~/.edgemicro/org-env-config.yaml ファイルで指定されたポート番号をオーバーライドします(デフォルト: 8000)。
-c, --cluster

(省略可)Edge Microgateway をクラスタモードで起動します。

注: v2.3.1 で、このオプションは削除されました。v2.3.1 以降のバージョンでは、Edge Microgateway は常にクラスタモードで起動します。

-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 クラスタ モジュールを使用してクラスタリングを有効にします。クラスタリングを使用することで、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 ウェブトークン)表現にデコードします。トークンは、アプリケーション名、client_id、製品リストなど、トークンの作成に使用された鍵を提供する Apigee Edge デベロッパー アプリに関する情報を伝えます。

使用方法

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 ウェブトークン(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 対応プロキシに関連付けられているデベロッパー アプリのクライアント 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' }

トークンを検証する

指定された組織および環境の 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 のインストールが完了したら、このコマンドを 1 回実行してください。新しいデフォルト構成ファイル ~/.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 クラスタのステータスの確認

デフォルトでは、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 クラスタの停止

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 クラスタの再読み込み

構成が変更されたら、ダウンタイムなしで再起動します。新しい構成を取り込み、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」コマンドを実行すると返される Key-Value。
-s, --secret edgemicro configure」コマンドを実行すると返されるシークレットの値。
-h, --help 使用状況情報を出力します。

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

出力(成功)

...

Reload Completed Successfully

KVM のアップグレード

鍵のローテーションを使用するには、アップグレードした Key-Value マップを Apigee Edge 組織にインストールする必要があります(v2.5.x で追加)。

注: 現在の Edge Microgateway インスタンスを 2.5.2 以前のバージョンで構成した場合、鍵のローテーションを使用するには、KVM をアップグレードする必要があります。このアップグレードは一度だけ行う必要があります。

使用方法

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

パラメータ

パラメータ 説明
-o, --org Edge Microgateway を構成した Apigee 組織。
-e, --env Edge Microgateway を構成した環境。
-u, --username Apigee ユーザー名。指定した組織の組織管理者である必要があります。
-p, --password (省略可)パスワード。コマンドラインでこのパラメータを指定しない場合は、入力するよう要求されます。
-v, --virtualhost (省略可)プロキシの仮想ホスト。
-t, --token (省略可)ユーザー名 / パスワードの代わりに OAuth トークンを認証に使用できます。OAuth2 アクセス トークンを使用した API 呼び出しの保護もご覧ください。次に例を示します。

edgemicro upgradekvm -o docs -e test -t <your token>
-b, --baseuri (省略可)Apigee Edge の組織のベース URI。デフォルトの Apigee クラウド デプロイのベース URI は、api.enterprise.apigee.com です。オンプレミスのデプロイでは、ベース URL が異なる場合があります。

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

出力(成功)

成功すると、コマンドは次のような出力を返します。

current nodejs version is v12.5.0
current edgemicro version is 3.0.2
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-auth プロキシのアップグレード

鍵のローテーションを使用するには、アップグレードした edgemicro-auth プロキシを Apigee Edge 組織にデプロイする必要があります(v2.5.x で追加)。

注: 現在の Edge Microgateway インスタンスを 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 です。オンプレミスのデプロイでは、ベース URL が異なる場合があります。

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

鍵のローテーション

edgemicro rotatekey コマンドを使用して、Edge Microgateway 上の OAuth セキュリティ用の JWT トークンの生成に使用された公開鍵 / 秘密鍵のペアをローテーションします。

詳細については、JWT 鍵のローテーションをご覧ください。

使用方法

edgemicro rotatekey -o [organization] -e [environment] -u [username] -k [kid]

パラメータ

パラメータ 説明
-o, --org (必須)Edge Microgateway を構成した Apigee 組織。
-e, --env (必須)Edge Microgateway を構成した環境。
-u, --username (必須)Apigee ユーザー名。指定した組織の組織管理者である必要があります。
-p, --password (省略可)パスワード。コマンドラインでこのパラメータを指定しない場合は、入力するよう要求されます。
-k, --kid (必須)特定の鍵の照合に使用する ID。Edge Microgateway は、この値を使用して、鍵のローテーション中に鍵のセットから選択します。詳細については、JSON ウェブキー仕様のセクション 4.5 をご覧ください。
-b, --baseuri (省略可)Apigee Edge の組織のベース URI。デフォルトの Apigee クラウド デプロイのベース URI は、api.enterprise.apigee.com です。オンプレミスのデプロイでは、ベース URL が異なる場合があります。

edgemicro rotatekey -o jdoe -e test -u jdoe@google.com -k 2

出力(成功)

成功すると、コマンドは次のような出力を返します。

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 で新しい鍵が Edge Microgateway KVM に追加されたことがわかります。

Forever によるモニタリング

edgemicro forever コマンドを使用して Forever プロセスを管理します。このプロセスは、Node.js アプリがダウンした場合やエラーが発生した場合にアプリを自動的に再起動する Node.js ツールです。Forever によるモニタリングもご覧ください。

使用方法

edgemicro forever コマンドを実行する前に、次の環境変数を設定する必要があります。

  • EDGEMICRO_ORG - Edge Microgateway を構成した Apigee 組織。
  • EDGEMICRO_ENV - Edge Microgateway を構成した環境。
  • EDGEMICRO_KEY - 「edgemicro configure」コマンドを実行したときに返された Key-Value。
  • EDGEMICRO_SECRET - 「edgemicro configure」コマンドを実行したときに返されたシークレットの値。
edgemicro forever -f [forever_file] -a [start|stop]

パラメータ

パラメータ説明
-f, --fileforever.json ファイルの場所を指定します。
-a, --actionstart または stop を指定します。デフォルトは start です。

例:

Forever を起動するには次を実行します。

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