インストール&管理ガイド

イントロダクション

PEP Proxy GE のユーザ&プログラマ・ガイドへようこそ。PEP Proxy は、FIWARE GE およびバックエンド・サービスに認証および認可フィルタを追加するためのセキュリティ・レイヤを提供します。それは、FIWARE Security Chapter のPEP (Police Enforcement Point) です。ID 管理と認可と合わせて、PDP GEs は FIWARE バックエンドにセキュリティを提供します。

注 : PEP Proxy GE はバックエンド・コンポーネントであるため、この GE ではユーザ・ガイドを用意する必要はありません。

要件

PEP Proxy GE を実行するには、以下のフレームワークのソフトウェアを事前にインストールする必要があります :

システムのインストール

PEP Proxy を起動して実行するには、次の手順を実行する必要があります :

  • GitHub を使ってソフトウェアをダウンロード
 git clone https://github.com/ging/fiware-pep-proxy
  • NPM を使用して必要なライブラリをすべてインストール
 cd fiware-pep-proxy
 npm install
  • インストールを設定

PEP Proxy を設定するには、config.js.template という名前のファイルを config.js にコピーし、対応する情報で編集します。以下にその例を示します :

 var config = {};

 config.idm_host = 'https://account.lab.fiware.org';

 config.app.host = 'www.google.es';
 config.app.port = '80';

 config.pep.app_id = 'my_app_id';
 config.pep.username = 'pepProxy';
 config.pep.password = 'pepProxy';

 config.check_permissions = false;

 module.exports = config;

ユーザ名/パスワードは、FIWARE Account Portal の登録された PEP Proxy の資格情報に対応しています。まずアプリケーションを登録する必要があります。ステップはここで見つけることができます。

Authorization PDP GE インスタンスへの接続を設定して、アプリケーションの認可を認可することもできます(認可レベル2と3) :

    config.azf = {
        enabled: true,
        ssl: false,
        host: 'azf_host',
        port: 6019,
        custom_policy: undefined
    };
  • TCP ポート 80 で実行されるように、管理者権限で次のコマンドを実行して、実行可能ファイルを起動します :
 node server.js
  • forever.js をインストールしてプロダクション環境で実行することもできます :
 sudo npm install forever -g
  • そして、forever を使用してサーバを実行します :
 forever start server.js
  • プロセスの状態を知るには、次のコマンドを実行します :
 forever status

システム管理

PEP Proxy GE は特定のシステム管理を必要としません。

健全性チェック手順

健全性チェック手順は、システム管理者がインストールのテスト準備が整ったことを確認するための手順です。したがって、単体テスト、統合テスト、ユーザ検証に進む前に、明白な、または基本的な誤動作が修正されていることを確認するための予備テストセットです。

エンド・ツー・エンドのテスト

Proxy へのリクエストは特別な HTTP Header: X-Auth-Token で行う必要があります。このヘッダには、FIWARE IDM GE から取得した OAuth アクセストークンが含まれています。

リクエストの例 :

 GET / HTTP/1.1
 Host: proxy_host
 X-Auth-Token:z2zXk...ANOXvZrmvxvSg

プロキシをテストするには、次のコマンドを実行してこのリクエストを生成します :

 curl --header "X-Auth-Token:z2zXk...ANOXvZrmvxvSg" http://proxy_host

認証されると、転送されたリクエストには、ユーザ情報を含む追加の HTTP ヘッダが含まれます :

 X-Nick-Name: nickname of the user in IdM
 X-Display-Name: display name of user in IdM
 X-Roles: roles of the user in IdM
 X-Organizations: organizations in IdM

実行中プロセスのリスト

PEP Proxy を実行するために forever を使用している場合、次のコマンドを使用すると、管理者はそのプロセスを見ることができます。

 forever list 

ネットワーク・インターフェースのアップとオープン

  • TCP ポート 80 は、PEP Proxy へのアクセスをロードするために、Web ブラウザにアクセス可能である必要があります
  • Identity Management と Authorization PDP GEs からアクセス可能でなければなりません

データベース

PEP Proxy は従来のデータベースを使用しません。他の汎用イネーブラーに直接リクエストします。

診断手順

診断手順は、GE のエラーの原因を特定するためにシステム管理者が行う最初の手順です。これらのテストでエラーの性質が特定されると、システム管理者はエラーの正確なポイントと可能な解決方法を特定するために、より具体的で特定のテストに頼らざるを得なくなります。このような特定のテストは、このセクションの範囲外です。

リソースの可用性

  • UNIX コマンド df を使用して 2.5MB のディスク領域が残っていることを確認します

リモートサービスアクセス

ポート 80 にアクセスできることを確認してください。他のすべての GEs のポートにもアクセスできる必要があります。

リソース消費

PEP Proxy GE には、データベースや複雑なアプリケーションロジックがないため、サーバ上のリソースの制約はごくわずかです。

一般的なメモリ消費量は 100MB で、2GHz の CPU コアのほぼ 1% を消費しますが、それはユーザのリクエストに依存します。また、TCP ソケットを消費し、その量はリクエストに応じて増加します。

I/Oフロー

アプリケーションは、REST API を介して、PEP Proxy にアクセスします。これは単純な HTTP トラフィックです。PEP Proxy は、REST リクエストを Identity Management と Authorization PDP GEs に送信します。 Applications access the PEP Proxy through a REST API. This is simple HTTP traffic. PEP Proxy sends REST requests to Identity Management and Authorization PDP GEs.