Skip to main content

LandoアプリケーションサーバにPHPエージェントをインストール

開始する前に

手順

重要

contrast.envファイルは、決してアプリケーションのwebrootディレクトリに置かないでください。

  1. プロジェクトのルートディレクトリにある.lando.yamlファイルのservicesセクションのappserverに、以下の設定を追加して、Contrastエージェントをデフォルトサービスにインストールします。

    services:
      appserver:
        build_as_root:
          - curl https://pkg.contrastsecurity.com/api/gpg/key/public | apt-key add -
          - echo "deb https://pkg.contrastsecurity.com/debian-public/ $(sed -rne 's/^VERSION_CODENAME=(.*)$/\1/p' /etc/*ease) contrast" \ | tee /etc/apt/sources.list.d/contrast.list
          - echo "deb https://pkg.contrastsecurity.com/debian-public/ all contrast" | tee -a /etc/apt/sources.list.d/contrast.list
          - apt-get update && apt-get install contrast-php-agent
          - contrast-php-util enable-agent
    env_file:
     - /path/to/contrast.env
  2. エージェントトークンまたは従来の設定で環境変数をcontrast.envファイルに設定します。以下の例の変数を参考にして、設定して下さい。

    • エージェントトークン:プロジェクトのwebroot外に置いたcontrast.envファイルに、エージェントの最小限の設定を追加して、Contrastへの接続を有効にします。

      CONTRAST__API__TOKEN={token value}
      CONTRAST__ASSESS__ENABLE=true
      CONTRAST__SERVER__NAME={yourServerName}
      CONTRAST__AGENT__LOGGER__PATH=stdout
      

      エージェントの設定で、従来の設定とエージェントトークンの両方を参照している場合(環境変数またはYAMLファイル内)、従来の設定が優先されます。エージェントトークンの値のみを使用するには、従来の設定への参照を削除してください。

    • 従来の設定::1.34.0より前のバージョンのPHPエージェントを使用している場合は、以下の変数を設定します。

      CONTRAST__API__URL={contrastURL}
      CONTRAST__API__API_KEY={apiKey}
      CONTRAST__API__SERVICE_KEY={serviceKey}
      CONTRAST__API__USER_NAME={contrastAgentUserName}
      CONTRAST__ASSESS__ENABLE=true
      CONTRAST__SERVER__NAME={yourServerName}
      CONTRAST__AGENT__LOGGER__PATH=stdout

    注 記

    • server.nameプロパティに名前を設定すると、サーバの再起動時に、Contrast Webインターフェイスに新しいサーバエントリが作成されるのを防ぐことができます。

    • agent.logger.pathプロパティは、エージェントログが webrootディレクトリに出力されないようにstdoutに設定されています。この設定を使用すると、lando logs -s appserverコマンドを実行することで、Contrastエージェントのログを取得できます。

    • Contrastエージェント設定エディタを使用すると、エージェントの設定を確認し、設定を環境変数としてエクスポートすることができます。

  3. Contrastエージェントを有効にするには、lando start(まだ実行していない場合)、またはlando rebuild -yコマンドを実行します。