ネイティブマニフェストを使用してmacOS版Firefoxで設定する

最終更新日:

この記事では、Mozillaのネイティブマニフェスト機能を使って、MacコンピュータのFirefoxウェブブラウザにPendo Launcher拡張機能を設定する手順を説明します。ネイティブマニフェストは、WindowsとMacの両方のデバイスに適用されますが、その実装プロセスは各OSで異なります。この記事で説明するプロセスを使用して、次の種類のデータを構成できます。

  • APIキー
  • 訪問者ID
  • メタデータ

Firefoxのネイティブマニフェストに関するドキュメントは、Mozillaのネイティブマニフェスト:Native messagingマニフェスト(Native manifests: Native messaging manifests)のドキュメントをご覧ください。

前提条件

エンドユーザーのデバイスに拡張機能を設定する前に、まずエンドユーザーのブラウザに拡張機能をインストールする必要があります。すべてのインストールオプションについては、Pendo Launcherを導入するためのITガイドをご覧ください。

また、展開ステップを実行する前に、Adoptのインストールを計画するの記事を読むことをお勧めします。

ステップ1. シェルスクリプトを作成する

次のテンプレートスクリプトを調整してAPI_KEYフィールドに独自の値を含め、必要に応じて訪問者IDとメタデータを正しく取得します。

APIキーを見つける

[設定(Settings)]>[サブスクリプション(Subscription)]に移動して、APIキーを確認します。個別の拡張機能API キーが以下のようにページの上部に表示されます。

{
"APIKey": {
"Value": "c022bb1e-676d-4c58-731c-caf13fe12a89"
}
}

テンプレートに値を挿入する

このテンプレートの例では、現在のユーザー名が変数currentUser内に取得されています。メールドメインexample.comを付加して訪問者IDを作成し、それをファイル/Library/Application Support/Mozilla/ManagedStorage/pendo-launcher@pendo.io.jsonに保存します。

この方法で訪問者IDを生成する必要はありません。訪問者IDの値を生成するためのアプローチは、Adoptのインストールを計画するの記事に従って作成した計画によって決まります。

#!/bin/bash

# Set the API key
API_KEY="your-api-key-goes-here"

# Get current username
currentUser=$( echo "show State:/Users/ConsoleUser" | scutil | awk '/Name :/ { print $3 }' )

# Set
domain name for emails
domainName="example.com"

# Create folder location if not there
dest_folder="/Library/Application Support/Mozilla/ManagedStorage"

if [ ! -d "$dest_folder" ]; then
  sudo mkdir -p "$dest_folder"
  sudo chown $(whoami) "$dest_folder"
fi

# JSON content
visitor_object='{
    "id": "'"$currentUser@$domainName"'",
}'

visitor_string=$(echo "$visitor_object" | jq tostring)

json_content='{
    "name": "pendo-launcher@pendo.io",
    "description": "Metadata for Pendo Adopt",
    "type": "storage",
    "data": {
        "APIKey": "'"$API_KEY"'",
        "visitor": '"$visitor_string"'
    }
}'

echo "$json_content" > "$dest_folder/pendo-launcher@pendo.io.json"

可能な場合は、追加のメタデータを訪問者オブジェクトのキーとして追加できます。たとえば、現在のユーザーのオフィスの場所を特定できる場合は、以下をjson_contentとして渡すことができます。

visitor_object='{
    "id": "'"$currentUser@$domainName"'",
    "office": "$office"
}'

ステップ2. スクリプトをエンドユーザーのデバイスにプッシュする

MDMツールを使用して、エンドユーザーのデバイスで定期的に実行されるようにシェルスクリプトを設定します。少なくとも毎日1回、またはログインごとに1回実行することをお勧めします。ただし、定期的に変更される可能性のあるメタデータがファイルに含まれている場合は、頻度を増やして、新しいデータがすぐにブラウザに提供されるようにすることができます。

エンドユーザーのデバイスでシェルスクリプトを実行するための詳細は、各社のMDMツールによって異なります。以下は、Macデバイスで使用される最も一般的なMDMツールのドキュメントです。

ステップ3. 構成を検証する

まず、物理的にアクセスできる単一のデバイスでスクリプトをテストし、構成が正しいことを検証します。検証では、ネイティブマニフェストファイルの存在を確認し、正しいブラウザの動作を検証します。

ネイティブマニフェストファイルの存在を確認する

  1. Macターミナルアプリを開きます。
  2. コマンドcd /Library/Application\ Support/Mozilla/ManagedStorageを入力します。
  3. コマンドls -lを入力します。
  4. pendo-launcher@pendo.io.jsonを検索して、出力にリストされていることを確認します。
  5. コマンドcat pendo-launcher@pendo.io.jsonを入力して、ファイルの内容を確認します。内容が想定の訪問者IDやメタデータと一致することを確認します。

ブラウザの動作を検証する

ブラウザがマニフェストファイルの内容を正しく読み取っていることを確認します。

  1. マニフェストファイルのあるデバイスでFirefoxを開きます。Firefoxアプリがすでに実行されている場合は、終了して再度開きます。
  2. Firefoxのブラウザに、Pendo Launcherブラウザ拡張機能をインストールします。Pendo Launcherの強制インストールをすでに設定している場合は、この手順をスキップできます。
  3. https://pendo.io/など、Mozilla以外のウェブページにアクセスします。
  4. ブラウザのツールバーの右上にあるPendo Launcher拡張機能アイコンを右クリックします。
  5. [デバッグ情報を表示(Show Debug Info)]を選択します。
  6. [識別対象(Identified as)]フィールドの訪問者IDが正しいことを確認します。
  7. [コンフィギュレーション情報を表示(Show Configuration Info)]を選択します。
  8. [IT管理の構成(IT-Managed Config]ドロップダウンメニューを開き、構成値を検索して、その値が存在することを確認します。

    IT管理