Comments
Transcript
Worklight Server 6.1 導入構成ガイド 日本アイ・ビー・エム株式会社
Worklight Server 6.1 導入構成ガイド ver. 1.0 日本アイ・ビー・エム株式会社 ソフトウェア事業 2014 年 3 月 目次 1. はじめに ..............................................................................................................................1 2. Worklight の構成要素 ..........................................................................................................2 2-1. Worklight Server の構成概要........................................................................................2 2-2. Worklight Server の構成要素........................................................................................4 2-3. Worklight Server の環境構築........................................................................................9 3. Worklight Server 導入・構成手順 .....................................................................................10 3-1. 導入・構成概要 ...........................................................................................................10 3-2. ハードウェアおよびソフトウェア前提条件 ................................................................ 11 3-3. 事前準備...................................................................................................................... 11 3-4. 導入の流れ ..................................................................................................................13 3-5. IBM Installation Manager のインストール ...............................................................15 3-6. Web アプリケーション・サーバーのインストール .....................................................16 3-7. Web アプリケーション・サーバーのインスタンス作成 ..............................................20 3-8. DBMS のインストール ................................................................................................22 3-9. (手動作成の場合) Worklight 用データベースの作成 ...................................................25 3-10. Worklight Server のインストール ............................................................................26 3-11. Application Center の稼動確認 .................................................................................32 3-12. プロジェクト WAR ファイルの作成 .........................................................................34 3-13. サーバー構成ツールによる Worklight Console のデプロイ .....................................34 3-14. 稼動確認....................................................................................................................38 4. Worklight Server 基本設定 ................................................................................................40 4-1. アプリケーションのインストール ..............................................................................40 4-2. Worklight Server のパラメーター変更 .......................................................................41 4-3. Worklight Console のログイン制御設定 .....................................................................46 4-4. パスワードの暗号化....................................................................................................47 4-5. モバイル・デバイス管理.............................................................................................49 5. 参考文献 ............................................................................................................................61 修正履歴 日付 バージョン 修正履歴 2014/3/18 1.0 初版 1. はじめに IBM Worklight は、モバイル・アプリケーションの効率的な開発・実行・管理をトータルに実現するモバ イル・アプリケーション・プラットフォームです。 Worklight は、開発環境である Worklight Studio、モ バイル・デバイス上で稼働するライブラリーやクライアント API である Worklight Device Runtime component、外部システムとのゲートウェイとして機能し、セキュリティー、認証、アプリケーション管理、 分析など様々な機能を提供する Worklight Server、Worklight Server の専用 Web ベース UI である Worklight Console、そして開発時のアプリケーション共有や組織内アプリケーション・ストアとして機 能する Application Center の 5 つの主要コンポーネントから構成されています。この中で、サーバー 側で稼動するコンポーネントは、Worklight Server、Worklight Console、そして Application Center の 3 つです。 本ガイドでは、この 3 つのサーバー側コンポーネントに焦点をあてます。まず、Worklight Server 側コ ンポーネントの構成要素とそれぞれの役割を説明します。その後、実際に Worklight Server 6.1 を WebSphere Application Server (以降 WAS) 8.5.5 Liberty Core の上に導入する手順を解説しま す。最後に、Worklight Server で行う典型的な作業や設定について、具体的な手順を含めて紹介し ます。 当文書は、Worklight 6.1 を前提にできるだけ正確を期して作成しておりますが、製品の稼動を保証 するものではありません。正確な仕様や動作に関しては、V6.1 で日本語化されたオンライン・マニュア ル「Worklight V6.1 InfoCenter」と正式技術サポートをご利用ください。 Worklight 6.0 以前のバージョンの導入手順は、かなり異なりますので、それぞれのバージョンの InfoCenter をご参照ください。 -1- 2. Worklight の構成要素 2-1. Worklight Server の構成概要 Worklight Server の典型的なトポロジーを図 1 に示しました。Worklight Server は、シングル構成と することもクラスター構成とすることもできます。クラスター構成とする場合は前段に負荷分散装置や Reverse Proxy サーバーを配置しリクエストを割り振ります。クラスター・メンバーは同一のデータベー スを参照します。Worklight Server はステートフルであるため、Sticky によるセッション維持が必要で す。サーバーがダウンした場合には、セッション情報は失われ、再度ログインが必要となります。 図 1 Worklight Server トポロジー それでは、Worklight Server についてもう少し詳しく見ていきましょう。 図 2 に示すように、モバイル端末で稼動している Worklight アプリケーションは、Worklight Server を 介してバックエンドシステムとの連携を行うことができます。統合 Push 通知や利用状況の統計データ の取得、ユーザー認証とセキュリティー機能の提供、アプリケーションのアップデート、なども、モバイ ル端末上の Worklight アプリケーションが Worklight Server にアクセスすることで実現されます。また、 モバイル Web アプリも実行されます。 -2- 管理者は、Worklight Console を使用して、モバイルやデスクトップ Web アプリケーションへの直接ア ップデートの登録、アプリケーションからのサーバーへのアクセス拒否や通知メッセージの表示等を通 して、Worklight アプリケーションを管理することができます。V6.1 では、デバイス・アクセス管理がで き、「DEVICE STOLEN、DEVICE LOST、または DEVICE DISABLED」の状況にすることでサーバ ーへの不適切なアクセスを防ぐことができます。 Application Center は、企業や部門、開発チーム内でモバイル・アプリケーションを簡単に共有する ための企業内アプリケーション・ストアです。開発チームや企業内へのアプリケーションの配信と管理、 フィードバック情報を管理できます。当構成ガイドでは、Worklight Server と同じ Java EE サーバー に導入しますが、異なるサーバーにも導入できます。 図 2 Worklight Server 構成要素 それでは、Worklight Server の各構成要素について、順に説明していきます。 -3- 2-2. Worklight Server の構成要素 ¾ Worklight Server Worklight Server は、Worklight Studio で開発するモバイル・アプリケーションのランタイム・コンテナ です。Java EE の意味でのアプリケーション・サーバーではありません。Tomcat や WAS Liberty プロ ファイルなどの Java EE アプリケーション・サーバーで実行される Web アプリケーション群です。この Web アプリケーションはプロジェクト WAR と呼ばれます。プロジェクト WAR の作成は、開発環境で ある Worklight Studio で行います。 Worklight Studio で Worklight プロジェクトを作成すると、図 3 のように、server/config ディレクトリー に authenticationConfig.xml や SMSConfig.xml、worklight.properties などの構成ファイルが作成さ れます。これらの構成ファイルで統合 Push 通知のプロキシや Worklight サーバーの URL、認証など のサーバーでの挙動に関する設定を行います。 図 3 Worklight Studio のプロジェクトツリー それぞれの構成ファイルの設定内容は次のようなものです。 構成ファイル名 設定内容 worklight.properties データベース接続情報(JNDI 名等。開発環境用) -4- Worklight Server 情報(プロトコル、ポート、URL)、レポーティング構成 情報、Push 通知構成、Worklight Console 認証情報など authenticationConfig.xml realm や使用する loginModule など、認証に関連する情報 SMSConfig.xml SMS ゲートウェイ情報 default.keystore SSL 証明書鍵ストア login.html 認証に使用するログイン・ページ worklight.properties ファイルに含まれるプロパティーは、Worklight Studio でのテストにも利用され、 ビルドされるとアプリケーションのデフォルト構成となります。テスト環境や本番環境に配置する場合、 通常は開発環境とは異なります。worklight.properties ファイル内の値をそのまま変更しないでおき、 アプリケーション・サーバーへの配置時に構成を指定できます。JNDI 環境項目に関しては、管理コン ソール (WAS) または server.xml ファイル (WAS Liberty Profile、Apache Tomcat) を使用して サーバーの環境項目を構成します。詳細は「4-2. Worklight Server のパラメーター変更」で説明しま す。 Worklight Studio でアプリケーションやアダプターをビルドすると、bin ディレクトリー下に <ProjectName>.war という名前の WAR ファイルが作成されます。図 3 では、HelloApplication.war です。これが、プロジェクト WAR ファイルです。 この WAR ファイルを展開すると、図 4 のようになっており、WAR ファイルの中にこれらの構成ファイル が含まれていることが分かります。プロジェクト WAR ファイルを Worklight Server を導入した Java EE サーバーにデプロイすることで、構成ファイルの設定内容は反映されます。 図 4 プロジェクト WAR ファイルの詳細 -5- Worklight Server の実体は、上記で説明したプロジェクト WAR ファイルですが、もう 1 つ重要な点と してプロジェクト WAR ファイルは、Worklight Server を稼動させるために必要な worklight-jee-library.jar という Java EE サーバー上のライブラリーを参照します。 ¾ Worklight データベース Worklight Server は、3 つのデータベースを使用します。クラスター構成の場合は、全てのクラスタ ー・メンバーが同一のデータベースを参照します。 データベース名 役割 WRKLGHT Worklight データベース Worklight Server にインストールされたモバイル・アプリケーションの情報や Push 通知情報などが格納されるデータベースで、Worklight Server の稼動 に必須です。 WLREPORT Worklight レポート・データベース Worklight Server が利用状況の統計データを集約するために使用するデー タベースです。初期状態では使用しないように設定されています。ここに出 力された raw データを BI システムに転送して分析を行ったり、Worklight Server の出力する分析テーブルをもとに、BIRT レポートを作成・参照したり することができます。 APPCNTR Application Center データベース -6- Application Center に登録されているアプリケーション情報やフィードバック 情報、インストール先デバイス情報などが格納されるデータベースです。 Application Center の稼動に必須です。 ¾ Worklight Console Worklight Console は、Web ベースの管理ツールです。ユーザーは Worklight Console を使用して、 モバイル・アプリケーションやバックエンド連携を実現するアダプターの管理などを行うことができます。 Worklight Console アプリケーションそのものは、プロジェクト WAR ファイルに含まれているので、プ ロジェクト WAR を Java EE サーバーにデプロイすることで Worklight Console も使用可能となりま す。 図 4 のプロジェクト WAR ファイルの console ディレクトリーの下に、Worklight Console の html/JavaScript/images/css が含まれています。 Worklight Studio でプロジェクトをビルドすると、プロジェクト WAR ファイルはプロジェクトごとに作成 されます。Worklight Server 6.1 では、複数のプロジェクト WAR、つまり複数の Worklight Console を稼動させることができます。その場合は、それぞれ異なる Worklight Console のコンテキスト・ルート を指定する必要があります。 -7- ¾ Worklight アプリケーション・メタデータ&Web リソースとアダプター Worklight Server の構成要素ではありませんが、関連するアプリケーションについてもここで説明しま す。Worklight Studio で作成した成果物にはクライアント・サイドとサーバー・サイドのものがあります。 クライアント・サイドの成果物として、モバイル・デバイスでデプロイ可能なモバイル・バイナリー・ファ イルがあります。例えば、Android の.apk ファイル、iPhone の.ipa ファイルなどが該当します。これら の成果物は、Apple App Store や Google Play のような外部ストアや、次に説明する Worklight の Application Center によって管理することができます。 サーバー・サイドの成果物には、アプリケーション・メタデータおよびアプリケーション・リソース (.wlapp) と、アダプター・ファイル (.adapter) があります。.wlapp ファイルには、Worklight アプリケ ーションの メタデータおよび Web リソースが含まれています。Worklight Console にデプロイし、モ バイル・アプリケーションの識別および保守を行うために使用されます。.adapter ファイルは、バックエ ンド・システムとの連携を実現する Worklight アダプターが含まれます。Worklight アダプターによって、 モバイル・アプリケーションと Worklight Server の間でデータを送受信することができます。アダプタ ーの種類には、HTTP アダプター、SQL アダプター、JMS アダプター等があります。Worklight アダプ ターも.wlapp ファイルと同様 Worklight Console にデプロイします。Worklight Studio でアプリケーシ ョンもしくはアダプターをビルドすると、bin ディレクトリー以下に、<アプリケーション名>.wlapp または <アダプター名>.adapter ファイルが生成されます。 ¾ Application Center Application Center は、モバイル・アプリケーション配布の共有基盤を提供します。Application Center の実体も Web アプリケーション・サーバーにインストールされる WAR ファイルです。用途とし ては(1)開発時のコードの共有環境、もしくは(2)組織内の”Apple App Store”もしくは”Google Play” のようなアプリケーション配布環境として使用することができます。Application Center は Android と iOS、Windows Phone 8 などのアプリケーションを一元管理することができます。 Worklight 6.1 では、Worklight Studio で作成し、アップロードしたアプリケーションだけでなく、公開 アプリケーション・ストアである Apple App Store と Google play 内のアプリケーションをカタログに追 加することもできます。 -8- 2-3. Worklight Server の環境構築 Worklight Server の環境構築は、導入済みの Web アプリケーション・サーバーおよび DBMS (デー タベース管理システム) に対して行います。Worklight Server 環境は、Web アプリケーション・サーバ ー上にデプロイされる Web コンポーネント (プロジェクト WAR ファイル) と、それが参照する共有ライ ブラリー、及びデータベースによって構成されています。プロジェクト WAR ファイルには Web ベース の管理コンソールである Worklight Console、サーバーのデフォルト構成値、Worklight アプリケーシ ョンおよびアダプターの一部のリソースが含まれています。プロジェクト WAR ファイルは、Worklight Studio または Ant コマンドで作成します。名前のとおりプロジェクト単位に作成して、それぞれにコン テキスト・ルート名を与えて、Web アプリケーション・サーバーにデプロイします。 つまり Worklight Server (Console 含む) の導入は、図 5 を次の大きなステップで構成することにな ります。 1) Web アプリケーション・サーバーの共有ライブラリーに Worklight-jee-library.jar などを導入 2) データベースの作成 3) プロジェクト WAR (<ProjectName>.war) 作成とデプロイ、および Web アプリケーション・サーバ ーの構成 これらの作業に、IBM Installation Manager と「サーバー構成ツール」を利用します。 Application Center も同様に applicationcenter.war と appcenterconsole.war をデプロイ、構成し、 DB を準備します。この作業は、IBM Installation Manager で行います。 図 5 Worklight Server 内部構成 -9- 3. Worklight Server 導入・構成手順 3-1. 導入・構成概要 ここでは次の環境に Worklight Server 6.1 を導入する手順を説明します。 ■ 環境 y RedHat Enterprise Linux Server 6.5 y IBM Installation Manager 1.6.3.1 y WebSphere Application Server 8.5.5 Liberty Core (以下 Liberty Core) y IBM DB2 Enterprise Edition 10.1 y IBM Worklight Server Enterprise Edition 6.1 本ガイドでは、下図の構成の導入手順を記述します。 1 台のマシンにアプリケーション・サーバーとして Liberty Core、データベース・サーバーとして DB2 を導入します。 Worklight Enterprise Edition には、IBM HTTP Server (以下、IHS) および Web Server Plug-ins for IBM WAS (以下、Web サーバー・プラグイン) も含まれます。本ガイドでは、IHS と Web サーバ ー・プラグインの導入手順は説明しません。IHS と Web サーバー・プラグインの導入手順は、参考文 献の「WebSphere Application Server V8.5 導入ガイド」に記載がありますので参照ください。 - 10 - 本ガイドでは、それぞれのソフトウェアを以下のディレクトリーに導入します。 ■ 導入ディレクトリー一覧 ソフトウェア名 ディレクトリー IBM Installation Manager 1.6.3.1 /opt/IBM/InstallationManager IBM WAS 8.5.5 Liberty Core /opt/IBM/WebSphere/Liberty IBM DB2 Enterprise Edition 10.1 /opt/ibm/db2/V10.1 IBM Worklight Server /opt/IBM/Worklight Enterprise Edition 6.1 3-2. ハードウェアおよびソフトウェア前提条件 最新の IBM Worklight のシステム要件 / 前提条件については、IBM Worklight and IBM Mobile Foundation detailed system requirements および InfoCenter を参照してください。 Detailed System Requirements for IBM Worklight and IBM Mobile Foundation http://www-01.ibm.com/support/docview.wss?uid=swg27024838 IBM Worklight V6.1.0 Information Center - インストール前提条件 http://pic.dhe.ibm.com/infocenter/wrklight/v6r1m0/topic/com.ibm.worklight.installconfig.doc/ad min/c_installation_prerequisites.html 3-3. 事前準備 当導入ガイドの手順では、事前に次の準備が必要です。 1. Worklight Studio を導入し利用可能とする 2. DB2 構成で SSH を利用可能とする Worklight Server 上で稼動する Worklight Console をデプロイするために、プロジェクト WAR アプリ ケーションが必要になります。プロジェクト WAR アプリケーションは Worklight Studio で作成・ビルド を行う必要がありますので、別途 Worklight Studio の環境を用意してください。プロジェクト WAR ア プリケーションの作成は「3-12. プロジェクト WAR ファイルの作成」で実施します。 - 11 - IBM Installation Manager やサーバー構成ツールは、DB データベースの作成に SSH を利用します。 DB2 10.1 または 10.5 の導入時に Windows 環境で IBM Secure Shell (SSH) Server for Windows を導入していない場合は、「DB2 製品のインストール後の SSH Server コンポーネントのインストー ル」を参照して導入しておいてください。DB2 9.7 の場合は、この SSH サーバーが付属していないの で、コマンドでデータベースを手動作成してください。 IBM DB2 V10.1 Information Center DB2 製品のインストール後の SSH Server コンポーネントのインストール http://pic.dhe.ibm.com/infocenter/db2luw/v10r1/topic/com.ibm.db2.luw.qb.server.doc/doc/t005 9009.html - 12 - 3-4. 導入の流れ IBM Worklight Server 6.1.0 の導入の流れは以下の通りです。 IBM Installation Manager のインストール IBM Installation Manager をインストールします。 Web アプリケーション・サーバーのインストール WAS や Tomcat のような Web アプリケーション・サーバーをインストールします。既に導入済みの場 合は、この手順はスキップしてください。 本ガイドでは、IBM Installation Manager を使用して Liberty Core をインストールします。 Web アプリケーション・サーバーのインスタンス作成 IBM Worklight Server で使用する Web アプリケーション・サーバーのインスタンスを作成します。既 に作成済みの場合は、この手順はスキップしてください。 本ガイドでは、Liberty Core のサーバーを作成します。 DBMS のインストール DB2、Oracle、MySQL のいずれかの DBMS をインストールします。既に導入済みの場合は、この手 順はスキップしてください。 本ガイドでは、DB2 付属のインストーラーを使用して DB2 をインストールします。 (手動作成の場合のみ) Worklight 用データベースの作成 Windows 環境で、SSH が利用できない場合、Worklight で使用するデータベースを手動で作成しま す。本ガイドの環境では、後の手順でインストーラーを使用して作成するので手動で作成する必要は ありません。 - 13 - Worklight Server のインストール IBM Installation Manager を使用して Worklight Server をインストールします。本ガイドでは、同じ Liberty Core サーバーに「Worklight Server」と「Application Center」を導入します。Application Center の導入は、このステップで完了です。 Application Center の稼動確認 この時点で、Application Center は機能し、デモ用のユーザー・アカウントが設定され、データベース も作成されています。管理画面が表示されることを確認します。 プロジェクト WAR ファイルの作成 Worklight Console 画面と構成ファイルはプロジェクト毎に作ります。コンソールをデプロイするために Worklight Studio を使用してシンプルな Worklight プロジェクトを作成し、アプリケーションをビルドし ます。 サーバー構成ツールの実行 インストールした Worklight Server のサーバー構成ツール (Server Configuration Tool) を使用し て、Worklight Console をデプロイします。Worklight で使用するデータベースが作成されていない場 合は、ここでツールによって作成します。 Liberty Core サーバーの再起動 Liberty Core サーバーを再起動します。 稼動確認 Worklight Server が正常稼動しているか確認します。 - 14 - バージョン確認 Worklight Server のバージョン確認を行います。 3-5. IBM Installation Manager のインストール IBM Installation Manager を導入します。IBM Installation Manager のバージョンは 1.6.3.1 以降で ある必要があります。Worklight Server 6.1 に同梱される IBM Installation Manager は 1.6.3.1 です。 パッケージ名が IBM Rational Enterprise Deployment となっている場合がありますが、その中に IBM Installation Manager が含まれます。もちろん、IBM Installation Manager のダウンロード・サイトから バージョン 1.6.3.1 以降をダウンロードしてきてインストールしても構いません。 ここでは IBM Installation Manager のインストールの詳細な手順は紹介しませんが、インストール・イ メージ直下のディレクトリーにある install コマンドを実行すれば、ウィザードに従って簡単にインスト ールできます。サイレント・インストールも可能です。詳細は参考文献の「WebSphere Application Server V8.5 導入ガイド」に記載がありますので参照ください。 - 15 - 3-6. Web アプリケーション・サーバーのインストール Web アプリケーション・サーバーをインストールします。既に Web アプリケーション・サーバーがインス トール済みの場合、この手順はスキップしてください。 インストールした IBM Installation Manager を使って Liberty Core をインストールします。ここでは GUI 画面を使用したインストール手順を説明します。 1. 予め Liberty Core のインストール・イメージを導入マシンに解凍しておきます。 2. IBMIM コマンドを実行し、IBM Installation Manager を起動します。 # cd /opt/IBM/InstallationManager/eclipse # ./IBMIM 3. メニュー「ファイル」を選択し、「設定」をクリックします。 4. メニュー「ファイル」を選択し、「設定」をクリックします。 「リポジトリーの追加」から、展開した Liberty Core の repository.config ファイルを指定し「OK」をクリックします。 5. リポジトリーが追加されたら画面下部の「OK」をクリックします。 - 16 - 6. 「インストール」をクリックします。 7. 「IBM WebSphere Application Server Liberty Core」にチェックを入れ、「次へ」をクリックします。 - 17 - 8. 使用条件の同意確認画面で、「使用条件の条項に同意します」に同意(ラジオボックスを選択)し て「次へ」をクリックします。同意いただけない場合は、製品を使用することができません。 9. インストール・ディレクトリーで製品の導入先を指定します。デフォルトのまま、または必要に応じて 書き換えて「次へ」をクリックします。 - 18 - 10. フィーチャーの選択画面ではそのまま「次へ」をクリックします。 11. インストールの要約情報が表示されます。内容を確認し「インストール」をクリックします。インストー ルが開始されます。 - 19 - 12. インストール結果が表示されますので、内容を確認し、「終了」をクリックします。 3-7. Web アプリケーション・サーバーのインスタンス作成 次に、Web アプリケーション・サーバーのインスタンスを作成します。上でインストールした Liberty Core のサーバーを作成します。 1. インストールした Liberty Core の bin ディレクトリー以下の server コマンドから、サーバー作成コ マンドを実行します。ここでは worklightServer という名前のサーバーを作成していますが、任 意のサーバー名をつけることができます。 # /opt/IBM/WebSphere/Liberty/bin/server create worklightServer サーバー worklightServer が作成されました。 # 2. Liberty Core のユーザー・ディレクトリー (<Liberty Core のインストール・ディレクトリー >/usr/servers) に worklightServer が作成されたことを確認します。 # ls /opt/IBM/WebSphere/Liberty/usr/servers worklightServer # 3. Liberty Core を起動して、正常に稼動することを確認します。 - 20 - 次のコマンドで Liberty Core サーバーを起動します。 # /opt/IBM/WebSphere/Liberty/bin/server start worklightServer サーバー worklightServer を始動中です。 サーバー worklightServer がプロセス ID xxxxx で始動しました。 # 次のログファイルにエラーが出力されていないことを確認します。 /opt/IBM/WebSphere/Liberty/usr/server/worklightServer/logs/message.log Web ブラウザから以下の URL にアクセスし、下記の画面が表示されることを確認します。 http://localhost:9080/ もしくは http://127.0.0.1:9080/ この時点では、ローカルホストからしかアクセスできませんのでご注意ください。 4. Liberty Core サーバーを停止します。 次のコマンドで Liberty Core サーバーを停止します。 # /opt/IBM/WebSphere/Liberty/bin/server stop worklightServer サーバー worklightServer を停止中です。 サーバー worklightServer は停止しました。 # - 21 - 3-8. DBMS のインストール 次に DBMS をインストールします。ここでは、DB2 を製品同梱のインストーラーから導入します。 (Windows 環境の場合、SSH Server for Windows も同時に導入してください。) 1. 予め DB2 のインストール・イメージを導入マシンに解凍しておきます。 2. db2setup コマンドを実行し、DB2 のインストーラーを起動します。 # cd 〈DB2 インストール・イメージの展開ディレクトリー〉 # ./db2setup 3. ランチパッドが起動するので、「製品のインストール」をクリックします。 4. 「新規インストール」をクリックします。 - 22 - 5. 概要では「次へ」をクリックします。 6. 使用条件の同意確認画面で、「使用条件の条項に同意します」に同意(ラジオボックスを選択)し て「次へ」をクリックします。同意いただけない場合は、製品を使用することができません。 7. インストール・タイプの選択では、そのまま「次へ」をクリックします。 8. インストールおよび応答ファイルの作成を選択では、そのまま「次へ」をクリックします。 9. インストール・ディレクトリーの選択で製品の導入先を指定します。デフォルトのまま、または必要 に応じて書き換えて「次へ」をクリックします 10. DAS ユーザー情報の設定では、そのまま dasusr1 を作成し、パスワードを入力します。必要に応 じてユーザーを変更してください。ここではそのまま「次へ」をクリックします。 - 23 - 11. インスタンスのセットアップでは、「DB2 のインスタンスを作成する」にチェックが入っていることを確 認し、「次へ」をクリックします。 12. DB2 インスタンス所有者のユーザー情報を設定します。そのままでも構いませんが、ここでは新規 ユーザーを選択し、ユーザー名に「wluser」、グループ名に「wlgroup」を入力し、パスワードを 設定します。「次へ」をクリックします。 13. fenced ユーザーのユーザー情報を設定します。そのままでも構いませんが、ここでは新規ユーザ ーを選択し、ユーザー名に「wlfenc」、グループ名に「wlfgroup」を入力し、パスワードを設定し ます。「次へ」をクリックします。 14. 通知のセットアップでは、「現時点では、通知を送信するように DB2 サーバーをセットアップしな い」にチェックを入れ、「次へ」をクリックします。 15. サマリー画面が表示されるので確認して「完了」をクリックします。 16. インストールが完了するとセットアップ完了画面が表示されるので確認して「完了」をクリックして画 面を閉じます。 - 24 - 3-9. (手動作成の場合) Worklight 用データベースの作成 Worklight Server で使用するデータベースは、WRKLGHT、WLREPORT、APPCNTR の 3 つです。 APPCNTR は IBM Installation Manager による Worklight Server のインストール時に、WRKLGHT、 WLREPORT はサーバー構成ツールによってプロジェクト WAR アプリケーションをデプロイする際に、 自動的に作成することができます。手動でデータベースを作成する場合は、以下の手順を参照してく ださい。 データベース管理者が手動でデータベースを作成する手順を説明します。 1. データベースの作成 Worklight Server の使用する 3 つのデータベース、WRKLGHT、WLREPORT、APPCNTR を 作成します。DB2 のインスタンス・ユーザー、もしくは SYSADM や SYSCTRL 権限をもつユーザ ーで作成し、データベース接続ユーザーに対して CONNECT 権限を付与しておきます。データ ベースが作成できたら、接続ユーザーで接続できることを確認しておきます。 ここでは、DB2 の導入時に作成した wluser ユーザーでデータベースを作成します。 WRKLGHT データベースの作成 $ db2 CREATE DATABASE WRKLGHT COLLATE USING SYSTEM PAGESIZE 32768 $ db2 CONNECT TO WRKLGHT $ db2 GRANT CONNECT ON DATABASE TO USER wluser $ db2 DISCONNECT WRKLGHT WLREPORT データベースの作成 $ db2 CREATE DATABASE WLREPORT COLLATE USING SYSTEM PAGESIZE 32768 $ db2 CONNECT TO WLREPORT $ db2 GRANT CONNECT ON DATABASE TO USER wluser $ db2 DISCONNECT WLREPORT APPCNTR データベースの作成 $ db2 CREATE DATABASE APPCNTR COLLATE USING SYSTEM PAGESIZE 32768 $ db2 CONNECT TO APPCNTR $ db2 GRANT CONNECT ON DATABASE TO USER wluser $ db2 DISCONNECT APPCNTR 接続確認例 $ db2 connect to <DB 名> user wluser using wluser 併せて以下の InfoCenter も参照してください。 Application Center 用の DB2 データベースの作成 http://pic.dhe.ibm.com/infocenter/wrklight/v6r1m0/topic/com.ibm.worklight.installconfig.doc/ admin/t_creating_the_db2_database_for_App_Center.html - 25 - DB2 データベースの手動セットアップ http://pic.dhe.ibm.com/infocenter/wrklight/v6r1m0/topic/com.ibm.worklight.deploy.doc/admi n/t_setting_up_your_db2_database_manually.html 3-10. Worklight Server のインストール IBM Installation Manager を起動し、Worklight Server のインストールを行います。この時、データベ ースを忘れずに開始しておいてください。GUI 環境がない場合にはサイレント・インストールを実行す ることもできます。ここでは、通常の GUI 画面を用いたインストール手順を紹介します。 1. 予め Worklight Server のインストール・イメージを導入マシンに解凍しておきます。 2. IBMIM コマンドを実行し、IBM Installation Manager を起動します。 # cd /opt/IBM/InstallationManager/eclipse # ./IBMIM 3. メニュー「ファイル」を選択し、「設定」をクリックします。 「リポジトリーの追加」から、展開した Worklight Server の diskTag.inf ファイルを指定します。 4. リポジトリーが追加されたら画面下部の「OK」をクリックします。 5. IBM Installation Manager のトップ画面で「インストール」をクリックします。 - 26 - 6. 「IBM Worklight Server」にチェックを入れ、「次へ」をクリックします。 7. 使用条件の同意確認画面で、「使用条件の条項に同意します」に同意(ラジオボックスを選択)し て「次へ」をクリックします。 8. インストール・ディレクトリーで製品の導入先を指定します。デフォルトのまま、または必要に応じて 書き換えて「次へ」をクリックします。 9. フィーチャーの選択画面ではそのまま「次へ」をクリックします。 - 27 - 10. Choose Configuration 画面では IBM Application Center をインストールするかを選択します。こ こでは、「Yes」にチェックを入れ、「次へ」をクリックします。 11. Choose your database type 画面では「IBM DB2」にチェックを入れ、「次へ」をクリックします。 - 28 - 12. Database server properties 画面では、Host name:に「localhost」、Port:に「50000」、IBM DB2 Driver for JDBC の Path to .jar file:に「/opt/ibm/db2/V10.1/java/db2jcc4.jar」を指定し、 「次へ」をクリックします。 13. Database server additional properties 画面では、「Simple mode」を選択し、User name に 「wluser」、Password にユーザーのパスワードを入力し、「次へ」をクリックします。 - 29 - 14. Create database では、事前にデータベースを作成しておいた場合は、”The required DB2 databases already exists.”と表示されます。”The required DB2 database already exist. Click “次へ(N)” to continue.”と表示されたら「次へ」を押して進みます。 事前にデータベースを作成していない場合は、「Database instance」にインスタンス名が表示さ れていることを確認します。「Admin user name」と「Admin user password」の入力を求められる 場合は、それぞれインスタンス所有ユーザーとパスワードを入力します。「次へ」をクリックするとデ ータベースの作成が始まります。 15. Database create progress では、データベース作成のステータスが表示されます。“Database or user successfully created.”と表示されれば「次へ」をクリックします。 16. Select your application server type では、「WebSphere Application Server」にチェックを入れ、 「次へ」をクリックします。 17. 「Application server properties」では、WebSphere installation directory:にインストールした Liberty Core を指定します。Profile:には「Liberty」、Server name:には Liberty Core で作成済み のサーバーが自動的に表示されるので確認して「次へ」をクリックします。 18. Multiple users で、ここでは Multiple user を選択し、「次へ」をクリックします。ここでは、Worklight Server を起動・停止する権限を持つユーザーを指定します。複数のユーザーに権限を与える場 合は、Multiple user にしてグループを選択します。使用する環境に合わせて適切な方を選択し てください。 - 30 - 19. 「Thank you」画面で、「次へ」をクリックします。 20. インストールの要約情報が表示されます。内容を確認し「インストール」をクリックします。インストー ルが開始されます。 21. インストール結果が表示されますので、内容を確認し、「終了」をクリックします。 ここまでで、Worklight Server の稼動に必要なライブラリーの導入が完了しました。Worklight Server の導入ディレクトリーの構造を以下に示します。 Worklight Server 導入ディレクトリーの構造 (ここでは /opt/IBM/Worklight) /opt/IBM/Worklight -Analytics 分析サーバーのファイル・アーカイブが含まれます。当ガイドでは分析サーバーは導入しま せん。詳細は、参考文献「IBM Worklight の分析機能「IBM SmartCloud Analytics Embedded」のご紹介」を参照ください。 -ApplicationCenter Application Center アプリケーションや Application Center で使用するテーブル手動作成 用の SQL スクリプト、サンプル Ant スクリプトなど ApplicationCenter をデプロイするための 各種ツールが含まれます。 -License License ファイルが含まれます。 -properties ソフトウェアの情報が記載されたファイルが含まれます。 -shortcuts サーバー構成ツールの起動スクリプトなどのショートカットが含まれます。 -tools Apache Ant のバイナリー・インストールが含まれます。 -WorklightServer 実動用の Worklight サーバー・ライブラリーや Ant タスクの実行用ライブラリー、Worklight Server で使用するテーブルの手動作成用の SQL スクリプト、プロパティーの暗号化ツール など Worklight Server 環境の構成に使用できる各種ツールが含まれます。 -install.log インストール・ログ・ファイル。 -README.html README ファイル。 - 31 - Worklight Server で稼動する管理アプリケーションのうち、Application Center のデプロイと Application Center で使用する DB2 のテーブル作成はこの時点で完了していますので、次の節で稼 動確認を行います。 Worklight Console(プロジェクト WAR アプリケーション)のデプロイはまだ完了していません。後の 手順、「3-13. サーバー構成ツールによる Worklight Console のデプロイ」で実施します。 3-11. Application Center の稼動確認 Application Center が正常にインストールされ、正しく稼動することを確認します。 1. Liberty Core の server コマンドで起動します。 # /opt/IBM/WebSphere/Liberty/bin/server start worklightServer サーバー worklightServer を始動中です。 サーバー worklightServer がプロセス ID xxxxx で始動しました。 # 2. Liberty Core のログを確認します。 # view /opt/IBM/WebSphere/Liberty/usr/servers/worklightServer/logs/messages.log 次のようなメッセージが出力されていることを確認してください。 com.ibm.ws.app.manager.internal.statemachine.StartAction A CWWKZ0001I: アプリ ケーション applicationcenter が x.xxx 秒で開始しました。 com.ibm.ws.app.manager.internal.statemachine.StartAction A CWWKZ0001I: アプリ ケーション appcenterconsole が x.xxx 秒で開始しました。 3. Web ブラウザから Application Center にアクセスします。Web ブラウザを起動し、以下の URL に アクセスしてください。(この時点では、外部からもアクセスすることが可能です。) http://<ホスト名>:9080/applicationcenter - 32 - 4. Application Center のログイン画面が表示されたら、デモ用のアカウントでログインします(ログイ ン: demo、パスワード: demo)。Web ブラウザから Application Center にアクセスします。次のア プリケーション・センター画面が表示されます。 次の Liberty Core サーバーの構成ファイル(server.xml)内に、次の記述でデモ用ユーザーが作 成されています。 例 /opt/IBM/WebSphere/Liberty/usr/servers/worklightServer/server.xml <user name=”demo” password=”demo”/> - 33 - 3-12. プロジェクト WAR ファイルの作成 Worklight Studio を使って、シンプルなプロジェクトを作成し、アプリケーションをビルドします。 1. Worklight Studio のメニューで、「ファイル (File)」 > 「新規 (New)」 > 「Worklight プロジェクト (Worklight Project)」)をクリックします。 2. Worklight Project の名前(Name)に 例) HelloApplication と指定し、プロジェクト・テンプレー トに「Hybrid Application」を選択します。 3. アプリケーション名に 例)Hello と指定し、「終了(Finish)」をクリックします。 4. アプリケーションをビルドします。Worklight Studio の「プロジェクト・エクスプローラー」ビューで、 プロジェクトを開きます。「apps」 フォルダを開き、サブフォルダ 「例) Hello」 を右クリックし、「実 行 (Run As)」 > 「Worklight 開発サーバー上で実行 (Run on Worklight Development Server)」とクリックします。 5. 「プロジェクト・エクスプローラー」ビューで、このタスクで作成された 「bin」 フォルダ を開きます。 「HelloApplication.war」 を右クリック し、「プロパティー (Properties)」をクリックします。プロパテ ィーは WAR ファイルへのパスを 示します。 6. 上記で確認したパス上にある WAR ファイルを Worklight Server をインストールしたマシン上に 配置します。 3-13. サーバー構成ツールによる Worklight Console のデプロイ サーバー構成ツール (Server Configuration Tool) を使って、事前準備でマシンに配置したプロジ ェクト WAR ファイルのデプロイを行います。プロジェクト WAR ファイルには Worklight Console が含 まれます。 1. Linux のメニューから「アプリケーション」 > 「IBM Worklight Server 6.1」 > 「Server Configuration Tool」をクリックして起動します。 もしくは以下のコマンドで起動します。 # cd /opt/IBM/Worklight/WorklightServer/ConfigurationTool/linux-x86-<ビット数> # ./ServerConfigurationTool - 34 - 2. サーバー構成ツール (Server Configuration Tool) が起動してきたら「Create a new Worklight Server configuration」をクリックします。 3. 任意の Worklight Server の構成名を指定し、「OK」をクリックします。ここでの構成名はサーバー 構成を定義する論理名であり、Worklight Server や Worklight Console の定義には含まれるもの ではありません。 - 35 - 4. Configuration Description では、Worklight project WAR file:にマシンに配置したプロジェクト WAR ファイルの場所を指定します。「Next」をクリックします。 5. Database choice では、「IBM DB2」にチェックを入れ、「Next」をクリックします。 6. Database properties では、Hostname:に「localhost」、Port:に「50000」、IBM DB2 Driver for JDBC の Path to .jar file:には「/opt/ibm/db2/V10.1/java/db2jcc4.jar」を指定し、「Next」をクリ ックします。 7. Database additional properties では、「Simple mode」を選択し、User name に「wluser」、 Password にユーザーのパスワードを入力し、「次へ」をクリックします。 8. Database creation request では Database instance:に「wluser」が表示されることを確認して 「次へ」をクリックします。 - 36 - 9. Application Server choice では、「WebSphere Application Server」にチェックを入れ、「次へ」 をクリックします。 10. Application Server では、WebSphere installation directory:にインストールした Liberty Core を 指定します。Profile:には「Liberty」、Server name:には Liberty Core で作成済みのサーバーが 自動的に表示されるので確認します。Context root:にコンテキスト・ルート(例:worklight)を指定 します。複数のプロジェクトを 1 つの Worklight Server にデプロイする場合は、コンテキスト・ルー トは異なる必要があります。すべて入力したら「Save」をクリックします。 11. 「Deploy」をクリックすると、デプロイが開始されます。 デプロイ状況は Console ビューで確認することができます。「BUILD SUCCESSFUL」と表示され れば、デプロイは成功です。 <<< トラブル・シューティング >>> root ユーザーで Worklight Server を導入し、Server Configuration Tool を起動している場合、 同一マシンの DB2 にツールからデータベースを作成しようとすると DB インスタンス・ユーザーが root の作業ディレクトリーにアクセスできず、以下のようなエラーになります。(確認を行った RHEL では、日本語ロケールを使用していると文字化けします。) BUILD FAILED /root/.worklight/server-configuration-tool/<構成名>.xml:51: Database creation failed: Command 'db2' failed: exit code 8 DB21019E An error occurred while accessing the directory "/root/.worklight/server-configuration-tool/workarea". - 37 - その場合は以下のいずれかの対処を行ってください。 • Server Configuration Tool の作業ディレクトリーの変更 Server Configuration Tool のメニュー・バーの「File」 > 「Preferences」をクリックします。 Directory for configuration files:の場所をインスタンス・ユーザーのアクセス権限がある場 所に変更します。 • 事前にデータベースを作成 既に対象のデータベースが存在する場合、上記エラーは発生しません。「Worklight 用のデ ータベースの手動作成」の節を参考にデータベースを手動で作成してください。 ここまでで Worklight Server の基本的なインストール作業は完了です。 3-14. 稼動確認 インストールを行った Worklight Server、Worklight Console が正常にインストールされ、正しく稼動 することを確認します。 1. Liberty Core の server コマンドで起動します。既に起動している場合は、一度停止してから再起 動してください。 # /opt/IBM/WebSphere/Liberty/bin/server stop worklightServer サーバー worklightServer を停止中です。 サーバー worklightServer は停止しました。 # /opt/IBM/WebSphere/Liberty/bin/server start worklightServer サーバー worklightServer を始動中です。 サーバー worklightServer がプロセス ID xxxxx で始動しました。 # 2. Liberty Core のログを確認します。 # view /opt/IBM/WebSphere/Liberty/usr/servers/worklightServer/logs/messages.log 次のようなメッセージが出力されていることを確認してください。 com.ibm.ws.app.manager.internal.statemachine.StartAction A CWWKZ0001I: アプリ ケーション worklight が x.xxx 秒で開始しました。 アプリケーション名はサーバー構成ツールで指定した“Context root:”で指定した値になっている ことを確認します。 - 38 - 3. Web ブラウザから Worklight Console にアクセスします。 Web ブラウザを起動し、以下の URL にアクセスしてください。 http://<ホスト名>:9080/<コンテキスト・ルート(ここでは worlight)>/console Worklight Console が正常に表示されることを確認します。 4. Worklight Console のバージョンを確認します。 4. で確認した Worklight Console の画面右上の「About」をクリックすると、Worklight Server のバ ージョンが表示されます。 以上で、稼動確認は終了です。 - 39 - 4. Worklight Server 基本設定 4-1. アプリケーションのインストール Worklight アプリケーション(*.wlapp)やアダプター(*.adapter)を Worklight Server にインストールする 方法には、Worklight Console を使う方法と Ant タスクを使用する方法があります。ここでは Worklight Console を使用して作業を行います。 Worklight アプリケーションやアダプターをインストールする手順は以下の通りです。 1. Worklight Console に接続し、Catalog のタブを選択し、「参照」ボタンを押します。 2. インストールするファイル(*wlapp もしくは*adapter)を選択したら、「Submit」ボタンをクリックします。 これでインストールは完了です。インストールされたアプリケーションが表示されます。 - 40 - 4-2. Worklight Server のパラメーター変更 Worklight Studio 環境でアプリケーションを開発・テストする際には、テスト・サーバーの挙動の多くは Worklight Studio プロジェクト構造内の server/conf フォルダ以下の worklight.properties ファイル に記述して設定することができます。worklight.properties に定義する項目としては、Worklight Server のサーバー・ロケーション情報や統合 Push 通知のプロキシ・サーバーの情報、セッション・タ イムアウト、SSL 通信の際に使用する証明書情報などがあります。 テスト環境と本番環境では、上記に挙げたような項目は異なるのが一般的です。Worklight Server へ アクセスする際の URL などは、開発時に worklight.properties ファイル中に記載されますが、JNDI 環境項目として定義されており、本番環境にデプロイした後にアプリケーション・サーバー側の設定と して変更することができます。 Liberty Core の場合は、server.xml ファイルの<jndiEntry>タグで変更します。 JNDI 環境項目の一例として Worklight Server のサーバー・ロケーションを指定するパラメーターに以 下のようなものがあります。 プロパティー名 説明 publicWorkLightHostname IBM Worklight を実行しているコンピューターの IP アドレスまたはホ スト名。 Worklight Server がリバース・プロキシーの背後にある場合は、この 値は、リバース・プロキシーの IP アドレスまたはホスト名になります。 publicWorkLightPort Worklight Server にアクセスするためのポート。 Worklight Server がリバース・プロキシーの背後にある場合は、この 値は、リバース・プロキシーのポートになります。 publicWorkLightProtocol Worklight Server にアクセスするためのプロトコル。 有効な値は HTTP および HTTPS です。 Worklight Server がリ バース・プロキシーの背後にある場合は、この値は、リバース・プロキシ ーのプロトコルになります。 例えば、実働の Worklight Server は 9080 ポートで稼動していてもクライアントのデバイスからは、ロ ード・バランサーやプロキシ・サーバーの 80 ポートにアクセスするケースが多いでしょう。実際にクライ アントからアクセスする URL やホスト名を変更したり、明示的に指定したりする必要が出てきます。この 場合 Worklight Server の JNDI 環境項目を変更して URL を指定します。 Liberty Core を使用している場合の JNDI 環境項目の変更手順を、サーバー・ロケーションを変更す る場合を例に説明します。 1. Liberty Core の場合、server.xml で以下のように追加するか、既に JNDI 項目が存在する場合は 編集します。 - 41 - /opt/IBM/WebSphere/Liberty/usr/servers/worklightServer/server.xml (抜粋) <jndiEntry jndiName="worklight/publicWorkLightHostname" value='"www.worklight-configuration-guide.com"'/> <jndiEntry jndiName="worklight/publicWorkLightPort" value='"80"'/> 2. Liberty Core を再起動します。 # /opt/IBM/WebSphere/Liberty/bin/server stop worklightServer ~略~ # /opt/IBM/WebSphere/Liberty/bin/server start worklightServer ~略~ 3. Worklight Console から Desktop Browser アプリケーションの URL を確認します。 (Worklight Console に Mobile Web アプリケーションもしくは Desktop Browser アプリケーション をインストールしている場合に確認することができます。) server.xml の JNDI 環境項目で設定した値が反映されていることが確認できます。 - 42 - 上記のように worklight.properties に記載されるサーバー・プロパティーを Liberty Core の server.xml 内で上書きできることを確認しました。 注意すべき点として、wl.db.* および wl.reports.db.* は、開発フェーズでのみ使用するものである ため、JNDI 環境項目として使用できません。Worklight Server でのデータベース接続設定は、アプ リケーション・サーバーのデータベース接続設定を行う必要があります。手動で設定もできますが、本 ガイドではサーバー構成ツールを使用するため自動的に定義されます。 では、SQL アダプターの DB 接続定義についてもここで説明します。 Worklight アダプターの接続定義は、基本的にアダプター XML ファイルに記述します。下図のプロ ジェクト構造の adapters/<アダプター名>/<アダプター名>.xml ファイルがアダプター XML ファイル に該当します。 記述方法は 2 通りあり、直接データソース定義を記述する方法とサーバーのデータソースを JNDI 経 由でルックアップする方法があります。 ■ 直接データソース定義を記述する方法(<dataSourceDefinition>要素を使用) <アダプター名>.xml <connectionPolicy xsi:type="sql:SQLConnectionPolicy"> <dataSourceDefinition> <driverClass>com.ibm.db2.jcc.DB2Driver</driverClass> <url>jdbc:db2://localhost:50000/mydb</url> <user>worklight</user> <password>worklight</password> </dataSourceDefinition> </connectionPolicy> ■ JNDI 経由でルックアップする方法(<dataSourceJNDIName>要素を使用) <アダプター名>.xml <connectionPolicy xsi:type="sql:SQLConnectionPolicy"> <dataSourceJNDIName>jdbc/myAdapterDS</dataSourceJNDIName> </connectionPolicy> ※この場合、Web アプリケーション・サーバーで JNDI 名が jdbc/myAdapterDS のデータソースを 定義している必要があります。 - 43 - Worklight Studio を使用して編集する場合は、以下のようなエディターを使用して構成することも可能 です。 いずれの方法も、要素に含まれる値をアプリケーション固有のプロパティーとして独自に worklight.properties に定義し、XML ファイルの中から ${プロパティー名} という形で参照することで 外部プロパティー化することができます。具体的には、以下のような形式で記述することになります。 ■ 直接データソース定義を記述する方法(<dataSourceDefinition>要素を使用) <アダプター名>.xml <connectionPolicy xsi:type="sql:SQLConnectionPolicy"> <dataSourceDefinition> <driverClass>com.ibm.db2.jcc.DB2Driver</driverClass> <url>${my-db2-url}</url> <user>${my-db2-user}</user> <password>${my-db2-password}</password> </dataSourceDefinition> </connectionPolicy> worklight.properties my-mydb2-url=jdbc:db2://localhost:50000/mydb my-mydb2-user=worklight my-mydb2-password=worklight ■ JNDI 経由でルックアップする方法(<dataSourceJNDIName>要素を使用) <アダプター名>.xml <connectionPolicy xsi:type="sql:SQLConnectionPolicy"> <dataSourceJNDIName>${my-adapter-ds}</dataSourceJNDIName> </connectionPolicy> - 44 - worklight.properties my-adapter-ds=jdbc/myAdapterDS アプリケーション固有のプロパティーを worklight.properties に定義する方法はアダプターXML ファイ ルや authenticationConfig.xml ファイルに適用できます。 JNDI 環境項目として定義されるプロパティーやアプリケーション固有のプロパティー使用に関する詳 細は InfoCenter を参照してください。 JNDI 環境項目を使用した実動での IBM Worklight プロジェクトの構成 http://pic.dhe.ibm.com/infocenter/wrklight/v6r1m0/topic/com.ibm.worklight.deploy.doc/admin/t _using_JNDI_lookup_to_override_WL_properties.html アプリケーション固有の構成プロパティーの宣言および使用 http://pic.dhe.ibm.com/infocenter/wrklight/v6r1m0/topic/com.ibm.worklight.deploy.doc/admin/r _declaring_using_app_specific_config_props.html - 45 - 4-3. Worklight Console のログイン制御設定 初期状態では、Worklight Console にはログイン制御がされておらず、誰でも Worklight Console を 使用して管理作業が実施できます。しかし実運用ではセキュリティーを考慮し、ログイン制御を行うこ とが想定されます。そこで、ここでは Worklight Console にログイン制御をかける設定方法を紹介しま す。 Worklight Server の設定は、基本的に開発環境の Worklight プロジェクトの server/conf フォルダの 下にある構成ファイルを設定し、ビルドしたプロジェクト WAR を Web アプリケーション・サーバー (こ こでは Liberty Core) にインストールすることで行うことは既に説明しました。JNDI 環境項目はサーバ ー側でも設定を行い worklight.properties を上書きできますが、セキュリティー設定については、 server/conf 下の authenticationConfig.xml ファイルに認証に必要な設定を記述する必要がありま す。 ここではテスト用に提供される最も単純な単一 ID ログインの設定を紹介します。 1. authenticationConfig.xml ファイルの設定 authenticationConfig.xml ファイルに、Worklight Console の認証に必要な内容を記載します。 保護したい staticResource として worklightConsole を指定し、securityTest、realm、 loginModule を設定します。authenticationConfig.xml ファイルから、該当する部分を抜粋したも のを以下に添付します。証明書認証など使用しない箇所はコメントアウトしてください。Worklight Server における、認証設定の詳細については、InfoCenter を参照してください。 <staticResources> <resource id="worklightConsole" securityTest="WorklightConsole"> <urlPatterns>/console*</urlPatterns> </resource> </staticResources> <securityTest> <customSecurityTest name="WorklightConsole"> <test realm="WorklightConsole" isInternalUserID="true"/> </customSecurityTest> </securityTests> <realms> <realm loginModule="requireLogin" name="WorklightConsole"> <className>com.worklight.core.auth.ext.FormBasedAuthenticator</className> <onLoginUrl>/console</onLoginUrl> </realm> </realms> <loginModules> <loginModule name="requireLogin"> <className>com.worklight.core.auth.ext.SingleIdentityLoginModule</className> </loginModule> - 46 - </loginModules> 2. worklight.properties ファイルの設定 worklight.properties ファイルに、Worklight Console にログインするユーザー名と、そのパスワー ドを指定します。ここでは、ユーザー名を wladmin、パスワードを wladmin と設定する例です。 worklight.properties ファイルには様々な設定を記載されますが、該当部分を抜粋したものが以 下になります。 ################################################################## Protecting the Worklight Console ################################################################## # You can protect the Worklight Console by defining user credentials required to access it. # In addition to defining these two properties, you should also configure the authenticationConfig.xml file, # located under <Worklight Root Directory>¥server¥conf. console.username=wladmin console.password=wladmin 上記設定を行ってビルドしたプロジェクト WAR ファイルを、1 のプロジェクト WAR のインストール 手順に従って WAS にインストールします。インストール完了後、Worklight Console にアクセスす ると、ログイン画面が表示されるようになります。 4-4. パスワードの暗号化 ところで、worklight.properties ファイルに設定したパスワードが平文のままでよいでしょうか? worklight.properties ファイルに記載する内容を暗号化したいときのために、Worklight では暗号化ツ ールが提供されています。worklight.properties ファイルの中で暗号化して設定する項目には、暗号 - 47 - 化していることを示す.enc を名前の後ろにつけます。たとえば、Worklight Console の接続ユーザー のパスワードを設定する console.password という項目を暗号化した場合は console.password.enc となります。暗号化するには、「鍵」が必要です。その鍵は、Worklight Server の、OS 上の環境変数と して定義しておく必要があります。変数名は、worklight_enc_password です。 では、実際に worklight.properties に設定するパスワードを暗号化してみましょう。暗号化を行うには、 <worklight_install_dir>/WorklightServer の下にある、encrypt.sh(UNIX 環境)もしくは encrypt.bat(Windows 環境)ユーティリティーを使用します。 1. Worklight Server を稼動させているサーバーへの環境変数設定 Worklight Server 側に、「鍵」である worklight_enc_password を環境変数として設定します。恒 久的に設定したい場合には、/etc/profile 等のファイルに以下を追加します。 # vi /etc/profile 以下を追加 worklight_enc_password=<設定したいパスワード(鍵)> export worklight_enc_password 2. secret.properties という名前のファイルを作成します。 ファイルの中身は、1. でサーバーにも設定した暗号化のための「鍵」である worklight_enc_password と、暗号化したい項目です。 worklight_enc_password=worklight console.password=wladmin 3. encrypt.sh を実行、暗号化します。 Linux で実行するなら、コマンド・ラインを起動し、以下のようにします。 # /opt/IBM/Worklight/WorklightServer/encrypt.sh secret.properties 環境にもよりますが、5 秒程度で実行は完了し secret.properties ファイルが更新されます。実行 が完了されても特にメッセージは表示されません。 4. secret.properties ファイルを確認します。 #Copy the contents of this file to the worklight.properties file. #Keep the password value in the secure system property worklight_enc_password #Tue Dec 24 14:32:51 JST 2013 console.password.enc=PxX3DJhL1ihlD965lplhaw¥=¥= はじめに記載していた暗号化していないパスワードや、「鍵」の情報は削除され、暗号化されたパ スワードが、.enc つきのプロパティー名とともに記載されています。 5. 暗号化したパスワードを worklight.properties ファイルにコピーします console.password=wladmin としていた行を削除し、 console.password.enc= PxX3DJhL1ihlD965lplhaw¥=¥= と変更して保存します。 - 48 - 6. プロジェクト WAR ファイルをビルドし、サーバーに作成した war ファイルをインストールします ここでは worklight.properties に記載されるプロパティーの暗号化方法を紹介しましたが、WAS フル・ プロファイルもしくは Liberty Core を使用する場合、製品付属のツールを使用して JNDI 環境項目を 暗号化することも可能です。 詳細については以下の InfoCenter を参照してください。 暗号化フォーマットでのプロパティーの保管 http://pic.dhe.ibm.com/infocenter/wrklight/v6r1m0/topic/com.ibm.worklight.deploy.doc/admin/r _storing_properties_in_encrypted_format.html 4-5. モバイル・デバイス管理 Worklight では、モバイル・アプリケーションを介して Worklight Server にアクセスするモバイル・デバ イスの状態を管理することができます。アプリケーション自体を無効にしてアクセス禁止にすることもで きますが、デバイス単位でのアクセス制御が可能になるため、デバイスの紛失や盗難時にも特定ユー ザー、特定デバイスのアクセスを無効にすることができます。モバイル・デバイスの管理を有効にする には、Worklight Server プロパティーを有効にすることと、ユーザーが認証レルムを使用してアクセス することが必要です。 ここでは、モバイル・デバイス管理を確認するテストのために必要な構成手順を説明します。 ■ アプリケーションの準備 デバイスの管理には認証によるアクセスが必要なため、ここではフォーム認証のサンプル・アプリケー ションを使用します。 サンプル・アプリケーションは InfoCenter の以下のページから入手して Worklight Studio にインポー トし、ビルドすることができます。 チュートリアルおよびサンプル http://pic.dhe.ibm.com/infocenter/wrklight/v6r1m0/topic/com.ibm.worklight.getstart.doc/start/c_ gettingstarted.html http://public.dhe.ibm.com/software/mobile-solutions/worklight/docs/v610/FormBasedAuthentic ationProject.zip - 49 - ■ Worklight Server での構成 1. Worklight Server にプロパティーを設定します。 モバイル・デバイス管理はデフォルトでは有効になっていないため、Liberty Core の server.xml に以下の行を追加します。 <jndiEntry value="true" jndiName="worklight/wl.device.enableAccessManagement" /> “worklight”の部分は Worklight アプリケーションのコンテキスト・ルートに相当しますので必要 に応じて変更してください。 2. Worklight Server を再起動します。 # /opt/IBM/WebSphere/Liberty/bin/server stop worklightServer ~略~ # /opt/IBM/WebSphere/Liberty/bin/server start worklightServer ~略~ 以上で Worklight Server の構成は完了です。 ■ Application Center での構成 3. Application Center に Worklight アプリケーションをアップロードします。 Web ブラウザから以下 URL の Application Center にアクセスします。 http://<ホスト名>:9080/applicationcenter テスト用にデフォルトで定義されている demo ユーザーを使用してログインします。ログイン画面で、 User に「demo」、Password に「demo」と入力し、「Log in」をクリックします。 - 50 - トップ画面から「Add Application」をクリックします。 Upload...と表示されている左の領域をクリックするとファイル選択画面が表示されるので、.apk フ ァイルもしくは.ipa ファイルを選択します。ここでは、FormBasedAuthAndroid.apk というファイル をアップロードします。「File FormBasedAuthAndroid.apk uploaded」と表示されたら、「次へ」を クリックします。 - 51 - 「Application Detail」画面では必要に応じてバージョンやアプリケーションの説明などを入力して、 「完了」をクリックします。 アプリケーションが追加されると以下のように一覧表示にアプリケーションが追加されます。 4. Application Center に IBM Application Center Client をアップロードします。 モバイル・デバイスでアプリケーションのインストールや削除などの管理を行うクライアントをアップ ロードします。Android 用のクライアントは以下のディレクトリーに用意されており、Worklight Studio にインポートしてカスタマイズすることが可能です。 /opt/IBM/Worklight/ApplicationCenter/installer/IBMApplicationCenter.apk 上記の手順(FormBasedAuthAndroid.apk)と同様、「Add Application」から IBMApplicationCenter.apk を選択してアップロードします。ただし、このとき Installer:という項目を チェックしてください。 - 52 - iOS や Windows Phone、BlackBerry の Application Center Client をインストールする場合や Android の Application Center Client をカスタマイズしたい場合、Worklight Server で提供される IBMAppCenter プロジェクトを Worklight Studio でインポートしてビルドする必要があります。 IBMAppCenter は本ガイドの導入ディレクトリーの場合、以下に存在します。 /opt/IBM/Worklight/ApplicationCenter/installer/IBMApplicationCenter. 各プラットフォームに応じたパッケージ・ファイル(apk,ipa など)を作成するには、それぞれ Android Developer Tools や Xcode などのビルド環境が必要になります。 Application Center Client のインポートとビルドについては、以下の InfoCenter を参照してくださ い。 プロジェクトのインポートとビルド (Android、iOS、Windows Phone) http://pic.dhe.ibm.com/infocenter/wrklight/v6r1m0/topic/com.ibm.worklight.appadmin.doc/a ppcenter/t_ac_proj_imp_build.html プロジェクトのインポートとビルド (BlackBerry) http://pic.dhe.ibm.com/infocenter/wrklight/v6r1m0/topic/com.ibm.worklight.appadmin.doc/a ppcenter/t_ac_proj_imp_build_bb.html - 53 - IBM App Center をインストールすると以下のような画面が表示されます。 以上で Application Center の構成は完了です。 ■ Worklight Console での構成 5. Worklight Console へのアプリケーションとアダプターのインストール 「4-1 アプリケーションのインストール」と同様の手順で、Worklight Console に FormBasedAuth アプリケーションと DummyAdapter アダプターをインストールします。 以上で Worklight Console の構成は完了です。 ■ クライアント・デバイスでの操作 - 54 - 本ガイドでは、Android 仮想デバイス(Android 4.3、API Level 18)上でモバイル・アプリケーションを 稼動して Worklight Server にアクセスします。Android 仮想デバイスに関しては参考文献の「Android SDK」を参照ください。 6. クライアント・デバイスに IBM AppCenter Client をインストールします。 デバイスの Web ブラウザから以下の URL にアクセスします。 http://<Worklight Server のホスト名>:9080/appcenterconsole/installers.html 以下のようにインストール可能なアプリケーション(インストーラー)が表示されるので、「IBM App Center」をタップ(クリック)します。 「インストール」をタップすると、ダウンロードが始まります。 ダウンロードが完了し、通知領域に表示された IBMApplicationCenter をタップすると、以下のよう な画面が表示されるので「次へ」をタップし、次の画面で「インストール」をタップします。 - 55 - App installed と表示されればインストールは成功です。「開く」をタップしてクライアントを開きま す。 7. AppCenter クライアントにログインします。 AppCenter を開いて表示されるログイン画面で環境に合わせて入力しログインします。 - 56 - デフォルトの App Center クライアントは上記のようにサーバーやポート番号を入力させるようにな っていますが、予め接続情報を構成として保持させておくことができます。 Worklight Studio にインポートした IBMAppCenter プロジェクトの apps/AppCenter/common/js/appcenter 以下の config.json ファイルを編集し、ビルドすることで クライアントに入力させる手間を省略することができます。 - 57 - URL を事前定義しビルドした AppCenter クライアントをイントールした場合のログイン画面は以下 のようになります。 モバイル・クライアントのデフォルト動作の変更についての詳細は以下の InfoCenter を参照してく ださい。 Android、iOS、Windows Phone: エキスパート向け http://pic.dhe.ibm.com/infocenter/wrklight/v6r1m0/topic/com.ibm.worklight.appadmin.doc/a ppcenter/r_ac_and_ios_experts_cli_preps.html 8. クライアント・デバイスに Worklight アプリケーションをインストールします。 カタログにリストされているアプリケーションの中から FormBasedAuth をタップし、インストールしま す。 - 58 - インストール画面で「次へ」→「インストール」をタップしてインストールします。 インストールが完了したら、「開く」をタップしてアプリケーションを開きます。 FormBasedAuth サンプル・アプリケーションでは任意の認証ユーザー・パスワードでログインを行 います。 ログインを実行することで Worklight Server へアクセスすると、自動的に Worklight Server へのデ バイス登録が行われます。 ■ デバイス管理の確認 Worklight Console で確認します。 http://<ホスト名>:9080/<コンテキスト・ルート(ここでは worlight)>/console にアクセスします。 「Devices」タブをクリックします。 以下のようにデバイスを確認できます。 - 59 - Status 列では、デバイスの状態を変更することが可能で、例えば、紛失した場合には「DEVICE LOST」に変更することでデバイスから Worklight Server のアクセスを無効化することができます。 Worklight Server 基本設定は以上です。 - 60 - 5. 参考文献 IBM Worklight 製品情報 http://www.ibm.com/software/jp/websphere/mobile-solutions/worklight/ developerWorks : IBM Worklight 技術情報一覧 http://www.ibm.com/developerworks/jp/websphere/category/mobile/ IBM Worklight V6.1.0 Information Center http://pic.dhe.ibm.com/infocenter/wrklight/v6r1m0/index.jsp Getting started with IBM Worklight (日本語版) http://www.ibm.com/developerworks/jp/websphere/category/mobile/getting-started.html WebSphere Application Server V8.5 導入ガイド http://www.ibm.com/developerworks/jp/websphere/library/was/was85_install/ IBM Worklight の分析機能「IBM SmartCloud Analytics Embedded」のご紹介 http://www.ibm.com/developerworks/jp/websphere/library/mobile/analytics_emb/ Android SDK https://developer.android.com/sdk/index.html - 61 -