Edge Microgateway の CLI リファレンス

Edge Microgateway v. 2.5.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 v6.9.1
    current edgemicro version is 2.5.4
    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 トークンを認証に使用できます。次に例を示します。

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 (省略可)パスワード。コマンドラインでこのパラメータを指定しない場合は、入力するよう要求されます。
-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 トークンを認証に使用できます。次に例を示します。

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 v6.9.1
    current edgemicro version is 2.5.4
    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' }

    

トークンを取得するための HTTP リクエストの作成

未処理の HTTP リクエストを作成して、トークンを取得することもできます。次に、curl の例を示します。URL の組織名と環境名を置き換えて、コンシューマ ID とコンシューマ シークレットの各値を client_id と client_secret のパラメータと置き換えます。

    curl -i -X POST "http://<org>-<test>.apigee.net/edgemicro-auth/token" -d '{"grant_type": "client_credentials", "client_id": "4t8X137pOUUtMR7wag3M1yZTcRxeK", "client_secret": "RAcOFVOvO0jns"}' -H "Content-Type: application/json"
    

トークンを検証する

指定された組織および環境の 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) }
    

署名なしトークンの直接取得

Apigee Edge のトークン エンドポイントに HTTP リクエストを送信して、署名なしトークンを直接取得することもできます。実際のトークン エンドポイントは、deploy-edge-service CLI コマンドでデプロイされたプロキシに実装されます。

次に、curl の例を示します。URL の組織名と環境名を置き換えて、Apigee Edge のデベロッパー アプリから取得したコンシューマ ID とコンシューマ シークレットの各値を client_idclient_secret のパラメータと置き換えます。

    curl -i -X POST "http://<org>-<test>.apigee.net/edgemicro-auth/token" -d '{"grant_type": "client_credentials", "client_id": "4t8X137pOUUtMR7wag3M1yZTcRxeK", "client_secret": "RAcOFVOvO0jns"}' -H "Content-Type: application/json"
    

出力例:

    HTTP/1.1 200 OK

    X-Powered-By: Express

    Cache-Control: no-store

    Pragma: no-cache

    Content-Type: application/json; charset=utf-8

    Content-Length: 640

    ETag: W/"280-ze/g/k+c9taqp110vjYQ"

    Date: Fri, 17 07 2015 15:49:24 GMT

    Connection: keep-alive

    "<long string of numbers and letters>"
    

新しい 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 v6.9.1
    current edgemicro version is 2.5.4
    edgemicro is running with 8 workers
    

Edge Microgateway クラスタの停止

Edge Microgateway クラスタを停止します。

用途

    edgemicro stop
    

パラメータ

パラメータ 説明
-h, --help 使用状況情報を出力します。

    edgemicro stop
    

出力(成功)

    current nodejs version is v6.9.1
    current edgemicro version is 2.5.4
    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 (省略可)プロキシの仮想ホスト。
-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 v6.9.1
    current edgemicro version is 2.5.4
    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 v6.9.1
    current edgemicro version is 2.5.7
    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 コマンドを使用して、アプリがダウンしたりエラーが発生したりした場合に Node.js アプリを自動的に再起動する Node.js ツールである Forever プロセスを管理します。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