現在地

Asial トップページ > ionCube ホーム > ionCube PHP Encoder GUI for Windows 日本語マニュアル

アシアル株式会社 事業紹介 ionCube

暗号化ソフト

ionCube PHP Encoder GUI for Windows 日本語マニュアル

目次 | 前ページ | 次ページ

4.3  制限

【サーバー制限】

[Project Setting]以下の[Restrictions]タブ内の説明に入ります。ionCube PHP Encoder では、IPアドレス、MACアドレス、そしてサーバー名に基づいた制限を行うことができます。同一行内の制限はAND演算子で結合されます。すなわち、記述されたすべての条件が満たされる場合にのみ実行されます。

制限グリッドの行はOR演算子で結合されます。すなわち、最低でも1行の条件を満たせば、サーバーはファイルを実行することができます。

[Domain name] や [IP address] には、コンマで区分することで(スペースはいれないでください)複数の値を入力できます。これらの値はOR演算子で結合されます。 [MAC address] は、1行に入力できる値は最大で1つです。

【ファイル有効期限】

エンコードしたファイルには有効期限を設定することができます。有効期限は、特定の日時を設定することもできますし、期間で設定することもできます。期間で指定した場合は、ファイルをエンコードした時間が、開始基準時間となります。

【インクルード制限】

権限が与えられていないファイルがエンコード済みのファイルをインクルードする場合、セキュリティの問題に発展することがあります。また、エンコード済みのファイル内に、エンコード済みのファイルをインクルードすることは望ましくありません。実際、悪意のあるクラッカーは特定のファイルを自身のファイルと置き換えようと攻撃をしてくるケースがあります。

この様なケースに対応するために [include key] オプションを指定できます([Restrictions] タブ内にあるinclude file protection項目)。このオプションを設定すると、include keyが設定されたエンコード済みファイルだけが他のファイルをインクルードすることができるようになります。また、エンコード済みのファイルは、同じinclude keyをもつファイルにのみインクルードされることができます。

PHPでは、他の全てのスクリプトが実行される前に特定のスクリプトを実行する、他の全てのスクリプトが実行された後に特定のスクリプトを実行するように設定できます。これらの設定は、php.ini設定のauto_prepend_file や auto_append_fileで操作します。インクルードファイルと同様に、これらはセキュリティ上の問題となる可能性がありますので、これらのphp.ini設定が有効の場合、PHPを実行せず終了させるオプションを用意しています。とはいうものの、正当な理由によりこのphp.ini設定が必要になる場合もあるため、デフォルトではこのオプションは無効になっています。

【ライセンスファイル】

エンコードしたファイルがライセンスファイルを要求する場合があります。そのとき適切なライセンスファイルが見つからない場合、ローダーはファイルを読み込む前に実行を終了します。

[Restrictions] タブ内の [license file] の項目の説明に入ります。ライセンスを認証する方法は2つあります。最も単純な方法はローダーに自動的にライセンスを認証させる方法です。これを有効にするには [Automatic checking of license restrictions] にチェックを入れてください。ライセンスが無効の場合、ローダーは実行を停止します。

もう一つの方法は、PHPスクリプト内でライセンスを認証するためにローダーAPI (ユーザーズマニュアル参照) を使う方法です。これは複雑なライセンスシステムを実装する場合や、ライセンスが無効なでも何らかの機能を必要とする場合に役立ちます。[Automatic checking of license restrictions] をオフにすることで、スクリプトを選択できるようになります。

[Name of license file] フィールドは、通常、PHPアプリケーションの最上位のディレクトリからの相対パスで記述します。スクリプトを開くと、ローダーは各ディレクトリを回ってライセンスファイルを探し、それぞれの階層においてディレクトリにライセンスファイルからの相対パスを付与します。安全な方法として、ライセンスファイルにアプリケーション毎に特有の名前をつけ、ライセンスファイルをPHPアプリケーションの最上位のディレクトリに置くことをお勧めします。このような場合、ライセンスファイル名のみ [Name of license file] に入力してください。

[License passphrase] はエンコードされたPHPアプリケーション固有のパスフレーズを設定します。たとえば、アプリケーションの名前などを設定します。セキュリティ強化のためにあるエンコーダで作成されたライセンスファイルでは、同じパスフレーズでも他のエンコーダでエンコードされたファイルを開くことができなくなっています。同じエンコーダで同じパスフレーズで作成されたライセンスはデフォルトで交換可能ですので、エンコードする各製品に使用するパスフレーズは固有のパスフレーズを使用することを推奨しています。


目次 | 前ページ | 次ページ