Frontline Command Center (FCC)、データベース、Keycloak はセルフホスト型であり、Frontline システム環境の中心的なコンポーネントと見なされます。顧客にとって重要なデータはすべて、セルフホステッド データベースと VM のローカル ストレージでホストされます。

Ubuntuシステムへのインストール

データベース

  1. 公式のインストール手順に従ってMariaDBをインストールします。
  2. 次のコマンドでインストールを確認します(実際のMariaDBによっては、サービスが呼び出され MariaDB る mysqld場合があります)。
mysql systemctl 
status mysql 

3. データベースと対応するユーザを設定します。

sudo mysql -uroot -e "CREATE DATABASE frontlinecommandcenter CHARACTER SET = 'utf8' COLLATE = utf8_bin;" 
sudo mysql -uroot -e "CREATE USER 'frontline'@'localhost' IDENTIFIED BY '$PASS'" 
sudo mysql -uroot -e "GRANT ALL ON frontlinecommandcenter.* TO 'frontline'@'localhost' IDENTIFIED BY '$PASS' WITH GRANT OPTION;" 

4. プレースホルダーを $PASS 安全なパスワードに置き換えます。

適切なデータベースが既にインストールされ、構成されている場合は、このデータベースのユーザーを作成し、 -u root に変更します -u name_of_user -p。 

注: インストールされたデータベースの内部バックアップ戦略に従うことをお勧めします。

最前線司令部

1. frontline.jar ファイル用のディレクトリを作成します。 sudo mkdir /var/opt/frontline

2. ユーザーデータ用のディレクトリを作成します。 sudo mkdir /var/data/frontline

3. Frontline Downloads ページから Server アプリケーションの JAR ファイルをダウンロードします。

4. 名前を frontline.jar に変更し、次のようにコピーします /var/opt/frontlinesudo cp ~/Downloads/frontline.jar /var/opt/frontline

5. frontline.jar 実行可能にします。 sudo chmod +x /var/opt/frontline/frontline.jar 

6. Frontline は Spring Boot サービスとして実行されます。に移動し /etc/systemd/system て、サービスの詳細を含むファイルを作成します。 sudo touch frontline.service

7. frontline.service を編集し、以下を追加します。

[ユニット] 
説明=フロントラインコマンドセンター
 After=mysql.service

 [Service] 
Environment="UBIMAX_HOME=/var/data/frontline/"
 ExecStart=/var/opt/frontline/frontline.jar
 SuccessExitStatus=143 

[install] 
WantedBy=multi-user.target 

8. サービスを有効にするには、 systemctl enable frontline.service

9.経由でサービスを開始します systemctl start frontline.service

10.サービスはいくつかの構成ファイル /var/data/frontline を作成してからシャットダウンします。

Windows システムへのインストール

データベース

1. 公式Webサイト からMariaDBの最新の安定バージョンをダウンロードし、 インストールガイドに従います。

2. HeidiSQLサポートプログラムを含むMariaDBインストーラーを実行します。

3. データベースの root パスワードを作成します。

手記:root パスワードは、このマニュアルでは次のようにdbrootpassword参照されます。

4. 「次へ」をクリックします。

5. インストールが完了したら、HeidiSQLユーティリティを起動します。デフォルトのインストールを想定すると、ファイルは次の場所にあります。  C:\Program Files (x86)\Common Files\MariaDBShared\HeidiSQL\heidisql.exe

6. 「 新規」をクリックします。

7. 指定した名前 (Frontline_Test など) で新しいデータベースを作成します。

8. プレースホルダーを$PASS以前に作成した dbrootpasswordに置き換えます。

9. オプション: ホスト名/ IPとポート番号をカスタマイズします。

手記: より詳細なガイドについては、 HeidiSQLのヘルプページを参照してください。

別のデータベースシステムを使用する場合は、データベースに合わせて以下のSQL文を調整してください。

CREATE DATABASE FrontlineCommandCenter CHARACTER SET = 'utf8' COLLATE = utf8_bin; 
'$PASS'で識別されるユーザー'frontline'@'%'を作成します。 
GRANT ALL ON FrontlineCommandCenter.* TO 'frontline'@'%' IDENTIFIED BY '$PASS' WITH GRANT OPTION; 

最前線司令部

  1. Frontline Downloads ページに移動します。
  2. サーバー・アプリケーション・ファイルをダウンロードし、名前を frontline.jarに変更します。
  3. 同じページからServer Service Wrapperをダウンロードします。

FCCには、インストールディレクトリとDATAディレクトリが必要です。 

  1. インストール・ディレクトリ - frontline.jar ・ファイル、WinSW_frontline.exeおよびWinSW_frontline.xml・サービス・ラッパー・ファイルが含まれます。 
    1. 場所: C:\Frontline 
    2. 身分証明書: $BASE$ 
  2. DATAディレクトリ - ホームディレクトリとして使用されます。ログインカードやテーマなどの顧客資産に使用されます。インストールディレクトリ内に新しいフォルダを作成し、DATAという名前を付けます。 
    1. 場所: C:\Frontline\DATA 
    2. 身分証明書: $FRONTLINE_HOME$ 

手記: $BASE$$FRONTLINE_HOME$ 場所 ID は、次のコード サンプルで参照として使用されます。 

サービス・ラッパーにより WinSW_frontline.exe 、ユーザーはFCCサービスをWindowsサービスとしてインストールすることができます。 

  1. 随意:フォワードプロキシを設定する必要がある場合(たとえば、FCCがライセンスサーバーにアクセスできるようにするため)、WinSW_frontline.xmlファイルを開き、要素の<arguments>先頭に追加し-Dhttps.proxyHost=$HOST -Dhttps.proxyPort=$PORT -Dhttps.nonProxyHosts=localhost$HOSTプロキシ$PORTの値に置き換えます。 
  2. コマンドプロンプトを開きます(管理者権限で)。
  3. ディレクトリを $BASE$に変更します。
  4. を実行します WinSW_frontline.exe install
  5. net start frontline(デフォルトのサービス ID は frontline) です。

初回起動時に、構成ファイルを抽出した後、サービスは自動的に停止します。Windowsは、サービスが失敗またはクラッシュしたと報告する場合があります。  

FCC構成ディレクトリは、 $FRONTLINE_HOME$ ディレクトリ内にあります。 場所は、 です C:\Frontline\DATA\config\configuration\xserver.properties 構成ファイルは、以下で説明するように編集する必要があります。 

Frontline Command Center の初期設定 (Ubuntu および Windows)

  1. にある UBIMAX_HOME/config/configuration/ xserver.properties ファイルを開きます。
  2. データベースのIP、ユーザー名、およびパスワードを変更します(IPアドレスを表示するには、次のコマンドを使用します ip addr show )。
  3. 顧客がホスト名を持っている場合は、 xserver.url.external.http IPアドレスの代わりに使用できます。ポートは、に記述server.portする必要があります。SSL ターミネーションを備えたリバース プロキシがない限り、SSL を構成する必要があります。  

個々のシステムと要件に応じて、Keycloak、xAssistスタック、ffmpeg、電子メール、FaaSなどのコンポーネントのセットアップまたは構成が必要です。 

FaaS (必須)

1. Frontline クラウド サービスを使用するには、次のプロパティを設定します。 

fcc.faas.base-url=https://functions.svc.frontlineworker.com/function/ 

2. セルフホスティングの場合、各 FaaS のエンドポイントを個別にオーバーライドできます。

fcc.faas.function.<function>.override-url=

一方、関数は imagemagickpdfmake または progloveです。 

3. ImageMagick と Proglove の場合、追加の設定は必要ありません。

4. PDFMake の場合、次の環境変数を設定する必要があります。  

RAW_BODY: "true" 
MAX_RAW_SIZE: "100MB" 

サーバーの起動

  1. プロパティーのセットアップが完了したら、コマンド (UBUNTU) または net start frontline (WINDOWS) を使用してサーバーを起動します。 systemctl start frontline.service
  2. サービスの状態は、 でUBIMAX_HOME/log/server/fronline.log確認できます。
  3. FCCの最初の正常な起動時に、ランダムなパスワードで呼び出される sysadmin システム管理者ユーザーが作成されます。このユーザーは、FCCの構成に使用されます。 
  4. ユーザーのパスワード sysadmin は、にある$FRONTLINE_HOME\logsログファイルから取得できます。
  5. frontline.logファイルを開くと、パスワードが次の形式で表示されます。 
INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/- 
INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/-
 INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/- 
INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/-
 INFO  de.ubimax.xserver.DatabaseSetupManager - 生成された SYSADMIN パスワード: 123456789 - -:-/-
 INFO  de.ubimax.xserver.DatabaseSetupManager - このパスワードは、できるだけ早くパーソナライズされたパスワードに変更してください。 - -:-/- 
INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/- 
INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/-
 INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/- 
情報  de.ubimax.xserver.DatabaseSetupManager - ##################################################### 

6. ユーザーを使用して sysadmin サインインし、パスワードを変更します。

ライセンスをインポートするには:

  1. Frontline Command Center を開きます。
  2. [構成] に移動します。
  3. [ライセンス] に移動します。
  4. [ ライセンスのインポート]をクリックします。
  5. その後に表示されるモーダルで、[ ライセンスのインポート ]をクリックして、エントリをライセンスサーバーと同期します。 

キークローク(必須)

Keycloakを実行する際の操作モードには、スタンドアロンモードとクラスタモードの2つがあります。どちらを選択するかは、個々の要件によって異なります。いずれかの設定方法の詳細なガイドについては、 公式のKeycloakインストールガイドを参照してください。Frontline はバージョン 15 以降をサポートしています。

Keycloakが正常にインストールされたら、このインストールで使用するレルムを作成する必要があります。FCCインストールの各ドメインには、個別のレルムが必要です。

  1. この JSON ファイルをダウンロードします。
  2. レルム・エクスポートJSONファイルを開きます。
  3. すべての <the-fcc-url> 出現箇所を実際のFCC URLに置き換えます。
  4. オプション: すべての frontline-realm 出現箇所を別のレルム名に置き換えます (Keycloak で複数のフロントラインレルムが必要な場合にのみ適用可能)。
  5. 随意: 対応するドメイン値 を検索し "claim.name": "domain" て置き換えます(FCCがデフォルト ubimax ドメイン以外のドメインを使用する場合にのみ適用可能)。
  6. ブラウザーからKeycloak管理コンソールにサインインします。 
  7. レルムの選択」をクリックします
  8. [レルムの追加] を選択します
  9. インポートするファイルを選択します。
  10. インポートされたレルムを開きます。
  11. の順 Clients/FCC/Credentialsに移動します。
  12. [ Regenerate Secret] をクリックします。
  13. この値をコピーします。
  14. コピーした値は、FCCの xserver.properties ファイル fcc.keycloak.realms.<domain>.clientSecret で(<domain>がデフォルトで設定されています ubimax )。
  15. 随意: [ レルム設定]の[電子メール]タブでSMTPサーバーを設定します。
  16. Keycloakを設定したら、FCCの xserver.properties ファイルのドメインごとに次のプロパティを設定する必要があります。
    1. シェブロン (<>) で記述されたすべてのプレースホルダーは、対応する詳細に置き換える必要があります。
    2. これは、 KeyMan URI を に設定する nullためのものです。
fcc.keycloak.enabled=true 
fcc.keycloak.realms.<domain>.name=<realm-name>
 fcc.keycloak.realms.<domain>.domainTag=<domain>
 fcc.keycloak.realms.<domain>.realmId=<realm-name> 
fcc.keycloak.realms.<domain>.serverUrl=<keycloak-external-url>
 fcc.keycloak.realms.<domain>.clientId=fcc 
fcc.keycloak.realms.<domain>.clientSecret=<クライアントシークレット> 
fcc.keycloak.keyman.uri= 

注:KeyMan は、上記のすべての手順を Frontline Cloud インスタンスで自動的に実行するサービスであり、セルフホステッド Keycloak には必要ありません。

クライアントアプリケーションのアップロード

Keycloakを構成したら、管理者ユーザーを作成し、クライアントアプリケーションをFrontline Command Centerにアップロードする必要があります。

  1. [ユーザー管理] ページに記載されている手順を使用して、管理者ロールを持つユーザーを作成します。
  2. ダウンロード ページから最新の Frontline Workplace スマート グラス アプリケーションをダウンロードし ます
  3. Frontline Command Center で、左上の ナビゲーション ウィンドウ を選択します。
  4. [構成] に移動します。
  5. [アプリケーション構成の管理] ページに記載されている手順に従って、アプリケーションをアップロードします。

IAM統合

ユーザー管理を容易にするために、Frontline は ID プロバイダーから FCC へのユーザー詳細の同期をサポートしています。このマッピングが有効な場合、FCCはIDPユーザーの詳細を処理し、FCC管理レベルでそれらを上書きすることを許可しません。同期されるユーザーの詳細は、言語設定、ロール、ライセンス割り当て、およびチームです。

現在、Frontline では次の IAM の種類がサポートされています。

  • Microsoft Azure Active Directory
  • Microsoft Active Directoryの
  • AWS Identity and Access Management (英語)

ロール、ライセンス、およびチームは、次の場合には正常に適用されません。

  • ライセンス、役割、またはチームが IDP と FCC で 100% 一致しない (大文字と小文字の区別が適用されます)
  • FCCには無料ライセンスはありません(役割とライセンスマッピング用)
  • ユーザーがまだサインインしていない (同期はユーザーがサインインした場合にのみ行われます)

ID プロバイダーの使用可能なロールとチームは、ロール、ライセンス、およびチームを正常にマップできるように慎重に定義する必要があります。

  • <LicenseName> 特定のユーザー (例: License_xAssist) にライセンスを割り当てます。
  • <RoleName>は、特定のユーザーにロールを割り当て、ライセンス(管理者など)を引き受けます。
  • <チーム>は、特定のユーザをFCCのチームに割り当てます

ID 仲介 (オプション)

手記: ID仲介は、ユーザーがKeycloakに完全に存在するFCCインストールでのみサポートされます。これは、既存のすべてのユーザーが少なくとも一度はKeycloakにサインインした後、またはKeycloakが最初から有効になっている新しいインストールでのみ機能します。 

ID 仲介により、Keycloak レルムを外部の OpenID ベースの ID プロバイダー (IDP) に接続できます。つまり、Keycloakに資格情報を入力する代わりに、ユーザーは外部IDP(Azure ADやOktaなど)にリダイレクトされ、認証が成功するとKeycloak(その後Frontline)に戻されます。 

次の図は、ユーザーがサインインするときの基本認証プロセスを示しています。

ユーザーはパスワードをFCCと共有することはありませんが、Keycloakと認証トークンを作成するIDプロバイダーにリダイレクトされます。既定では、Keycloak はメール アドレスを介して外部ユーザーと既存の Frontline ユーザーの照合を試みます。それが不可能な場合 (一致するユーザーが見つからなかった場合)、サインイン手順は中止され、Frontline へのアクセスは拒否されます。 

Keycloakレルムには、複数のIDブローカー(Azure ADなど)を含めることができます。これにより、ローカルアカウントだけでなく、別の外部アカウントでもサインインする可能性が高まります。特定のシナリオでは、新しいユーザーがサインインを試みたときに、その場でユーザーを作成すると便利な場合があります。これはユーザー プロビジョニングと呼ばれ、FCC で次のプロパティを使用して有効にできます。 

fcc.keycloak.user-provisioning.enabled=true 

それに加えて、次のプロパティを構成する必要があります。 

server.servlet.session.cookie.same-site=none 
server.servlet.session.cookie.secure=true 

これを行うと、最初のサインイン時にユーザー アカウントが作成されますが、ライセンス層もロールも割り当てられていないため、この時点ではアカウント自体は事実上役に立ちません。この動作は、次のプロパティを使用して変更できます。次の変更により、プロビジョニングされたすべてのユーザーが、xAssist ライセンス階層の xAssist ロールが割り当てられた状態で FCC に取り込まれます。 

fcc.keycloak.user-provisioning.default-license-tiers=xAssist
fcc.keycloak.user-provisioning.default-roles=xAssist

ID ブローカーでは、使用する ID プロバイダー側でいくつかの設定が必要です。次の例は、Azure AD を ID プロバイダーとして構成する方法を示しています。他の ID プロバイダーも同様のアプローチに従います。  

KeycloakでAzure ADをIDプロバイダーとして構成するには:

  1. レルムを選択します。
  2. [ID プロバイダー] に移動します。
  3. 新しい OpenID Connect v1.0 プロバイダーを追加します。
  4. [外部 IDP 設定のインポート(Import External IDP Config)] まで下にスクロールします。
  5. ディスカバリーURLを貼り付けます。
  6. [ インポート] をクリックします。これにより、 認証 URLトークン URL などのフィールドに入力されます。 
  7. 次の値を手動で編集します。   
    1. エイリアスと名前 - これらはカスタム値に設定でき、名前は後でサインイン ページに表示される名前ですが、エイリアスはリダイレクト URI にあります。 
    2. ClientAuthMethod - を選択しますclient_secret_post
    3. ClientID - Azure でアプリを作成するときに見つかります。 
    4. ClientSecret - Azure でアプリを作成するときに見つかります。 
  8. 新しく追加した ID プロバイダーを保存します。その後、シングルサインオンページに表示されます。

ID プロバイダーとしての Azure AD

  1. Azure にサインインします。
  2. [ アプリの登録] に移動します。
  3. [新規登録] に移動します。
  4. アプリに 「Frontline Keycloak」という名前を付けます。
  5. [ シングル テナント] に設定します。リダイレクト URI はまだ必要ありません。

6. アプリが作成されると、メインページに クライアントID が表示されます。

7. ディスカバリ URL は [エンドポイント] の下にあります。これは、 OpenID Connect メタデータ ドキュメントです。 

8. クライアント シークレットを生成します。このためには、現在のクライアント資格情報をクリックします。 

9. 新しいクライアントシークレットを追加するには、「 新しいクライアントシークレット」をクリックします。説明は Frontline secret で、期間は 24 か月に設定する必要があります。 

10. シークレットが追加されると、 シークレット ID を持つエントリが生成されます。

手記: 後で使用できなくなるため、すぐに値をコピーして安全に保管してください( クライアントシークレットです)。

不足しているリダイレクト URI を Azure で構成するには、次のようにします。

  1. アプリ登録からアプリフロントラインキークロークに移動します。
  2. [ リダイレクト URI] を選択します。 

3. [プラットフォーム/Web を追加] を選択します。 

4. 入力する必要があるリダイレクト URI は、次のようになります。

<Local-Keycloak-Url>/auth/realms/<your-realm-name>.