sysadmin の認証情報が異なる場合に必要な構成

Edge を最初にインストールしたとき、sysadmin と呼ばれる特別な種類のユーザーが作成され、同時にこのユーザーの詳細情報がいくつかの構成ファイルに反映されます。メールアドレス以外のユーザー名を使用して外部 LDAP による認証を構成した場合や、sysadmin ユーザーのパスワードが外部 LDAP で異なっている場合は、このセクションで説明する変更を行う必要があります。

更新が必要な場所は 2 か所あります。

  • Edge UI は、Edge UI の構成ファイルに保存されている暗号化された認証情報を使用して Management Server にログインします。sysadmin ユーザーのユーザー名とパスワードの一方または両方が異なる場合は、これを更新する必要があります。
  • Edge は、各種ユーティリティ スクリプトの実行時に使用される別のファイルに sysadmin のユーザー名を保持しています。sysadmin ユーザーのユーザー名が異なる場合に限り、これを更新する必要があります。

Edge UI のパスワードを変更する

Edge UI のパスワードを変更する方法は、外部 LDAP サーバーでユーザー名がどのように表されているかによって異なります。

  • ユーザー名がメールアドレスの場合は、setup.sh ユーティリティを使用して Edge UI を更新します。
  • ユーザー名がメールアドレスではなく ID の場合は、API 呼び出しとプロパティ ファイルを使用して Edge UI を更新します。

両方の手順について以下に説明します。

Edge UI のメールアドレス形式の認証情報を変更する

  1. Edge UI のインストールに使用したサイレント構成ファイルをエディタで開き、次のプロパティを設定します。
    ADMIN_EMAIL=newUser
        APIGEE_ADMINPW=newPW
        SMTPHOST=smtp.gmail.com
        SMTPPORT=465
        SMTPUSER=foo@gmail.com
        SMTPPASSWORD=bar
        SMTPSSL=y
        SMTPMAILFROM="My Company <myco@company.com>"

    UI のすべてのプロパティがリセットされるため、新しいパスワードを渡すときに SMTP のプロパティも一緒に渡す必要があります。

  2. apigee-setup ユーティリティを使用して、構成ファイルから Edge UI 上のパスワードを再設定します。
    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile

Edge UI のユーザー ID 形式の認証情報を変更する

  1. ユーザー ID とパスワードを暗号化します。
    java -cp "/opt/apigee/edge-ui/conf:/opt/apigee/edge-ui/lib/*" utils.EncryptUtil 'userName:PWord'
  2. ui.properties ファイルをエディタで開きます。このファイルが存在しない場合は作成します。
    vi /opt/apigee/customer/application/ui.properties
  3. ui.properties 内の conf_apigee_apigee.mgmt.credential トークンを、ステップ 1 のコマンドで返された値に設定します。
    conf_apigee_apigee.mgmt.credential="STRING_RETURNED_IN_STEP_1"
  4. ui.properties の所有者を「apigee」に設定します。
    chown apigee:apigee /opt/apigee/customer/application/ui.properties
  5. Edge UI を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

構成をテストする

  1. ブラウザで管理 UI を開きます。
    http://management_server_IP:9000/

    例:

    http://192.168.52.100:9000/
  2. 新しい認証情報でログインします。ログインが成功すれば、正しく構成されています。

Apigee ユーティリティ スクリプト用の Edge sysadmin ユーザー名ストアを編集する

  1. Edge UI のインストールに使用したサイレント構成ファイルをエディタで開いて次のプロパティを設定し、ADMIN_EMAIL の値を外部 LDAP で sysadmin ユーザーとして使用するユーザー名に変更します。
    APIGEE_EMAIL=newUser
        IS_EXTERNAL_AUTH="true"

    IS_EXTERNAL_AUTH プロパティは、Edge がユーザー名として(メールアドレスではなく)アカウント名を使用するように設定します。

  2. apigee-setup ユーティリティを使用して、構成ファイルからすべての Edge コンポーネント上のユーザー名を再設定します。
    /opt/apigee/apigee-setup/bin/setup.sh -p edge -f configFile

    このコマンドは、Management Server、Router、Message Processor、Qpid、Postgres など、すべての Edge ノードのすべての Edge コンポーネントで実行する必要があります。

構成をテストする

セントラル ポッドにアクセスできることを確認します。Management Server で次の CURL コマンドを実行します。

curl -u sysAdminEmail:password http://localhost:8080/v1/servers?pod=central

出力は次のようになります。

[ {
      "internalIP" : "192.168.1.11",
      "isUp" : true,
      "pod" : "central",
      "reachable" : true,
      "region" : "dc-1",
      "tags" : {
        "property" : [ ]
      },
      "type" : [
        "application-datastore",
        "scheduler-datastore",
        "management-server",
        "auth-datastore",
        "apimodel-datastore",
        "user-settings-datastore",
        "audit-datastore"
      ],
      "uUID" : "d4bc87c6-2baf-4575-98aa-88c37b260469"
    }, {
      "externalHostName" : "localhost",
      "externalIP" : "192.168.1.11",
      "internalHostName" : "localhost",
      "internalIP" : "192.168.1.11",
      "isUp" : true,
      "pod" : "central",
      "reachable" : true,
      "region" : "dc-1",
      "tags" : {
        "property" : [ {
          "name" : "started.at",
          "value" : "1454691312854"
        }, ... ]
      },
      "type" : [ "qpid-server" ],
      "uUID" : "9681202c-8c6e-4da1-b59b-23e3ef092f34"
    } ]