Gateway

カスタムプラグインを使用したゲートウェイポータルのカスタマイズ

NetScaler Gateway RFWebIフレームワークは、カスタムプラグインを追加してゲートウェイポータルをカスタマイズする機能を提供します。これらのカスタムプラグインは、ゲートウェイフローに新しいページ全体を追加する場合など、ゲートウェイに大規模な機能を追加するために使用できます。その他のユースケースでは、ゲートウェイテーマ用のカスタムスクリプトファイルに、/var/netscaler/logon/themes/<custom_theme>/script.jsという場所にあるコードを追加できます。

注:

NetScaler Gatewayは、ポータルをカスタマイズするためのカスタムプラグインの作成と使用のみをサポートしています。NetScaler Gatewayは、お客様の要件に基づいてカスタムプラグインを作成または提供しません。

  1. カスタムプラグインを追加するには、その場所/var/netscaler/logon/LogonPoint/plugins/ns-gateway/に JavaScript ファイルを作成します。たとえば、 /var/netscaler/logon/LogonPoint/plugins/ns-gateway/には次のプラグインがあります。

    • ns-nfactor.js

    • nsg-epa.js

    • nsg-setclient.js

    プラグイン名は、<plugin_name>.js の形式で入力することをお勧めします。

    これらのプラグインファイルはすべて、機能に必要な RfWebUI フレームワークによって取得されます。

  2. プラグインファイルを作成したら、次のコードを例として使用して、プラグインを RfWebUI フレームワークに登録します。

            (function ($) {
                        CTXS.ExtensionAPI.addPlugin( {
                                    Name : “plugin name”,
                                    initialize: function() {}
                        });
                })(jQuery);
    <!--NeedCopy-->
    

    各項目の意味は次のとおりです。

    name は、プラグインに付けられた名前です。これは、プラグインの識別子として使用されます。

    initialize は、プラグインの初期化に使用されるパラメータとして関数を取ります。

  3. プラグインを登録するCTXS.ExtensionAPI.addPlugin()関数に、プラグイン名と初期化関数を入力します。 追加したプラグインの名前と場所は、その場所/var/netscaler/logon/themes/<custom_theme>/plugins.xmlの plugins.xml ファイルに登録する必要があります。

  4. プラグインコードを記述したら、新しく追加したプラグインの名前と場所を、その場所/var/netscaler/logon/themes/<custom_theme>/plugins.xmlplugins.xmlファイルに登録する必要があります。プラグインは、 plug-in タグで登録する必要があります。

    <plugins>
    <plugin name="nsg-epa" src="plugins/ns-gateway/nsg-epa.js"/>
    <plugin name="nsg-setclient" src="plugins/ns-gateway/nsg-setclient.js"/>
    <plugin name="ns-nfactorn" src="plugins/ns-gateway/ns-nfactor.js"/>
    </plugins>
    <!--NeedCopy-->
    
  5. RfWebUI がプラグインを識別して取得できるように、プラグインの名前と src を入力します。

設定例

次の構成例を使用して、カスタムプラグインを追加して、NetScaler Gateway ログオンページにフッターを追加できます。

  1. 次の場所に JavaScript プラグインファイルを作成します。 /var/netscaler/logon/LogonPoint/plugins/ns-gateway/.
  2. プラグインに ns-footer.js /var/netscaler/logon/LogonPoint/plugins/ns-gateway/ns-footer.jsという名前を付けます。
  3. 登録されたプラグインに次のコードを RfWebUI に追加し、初期化関数でゲートウェイにフッターを追加します。

    (function ($) {
    CTXS.ExtensionAPI.addPlugin({
        name: "ns-footer", // Name of plugin - must match name sent in configuration
        initialize: function () {
            CTXS.Extensions.beforeLogon = function (callback) {
                $("#customExplicitAuthBottom").append("<div style='text-align:center;color:white;font-size:15px;'><br>Disclaimer<BR><BR>"+
                    " Access to this website is restricted to employees of Login Consultants<BR></div>");
                callback();
            };
        }
    });
    })(jQuery);
    <!--NeedCopy-->
    
  4. ファイルを保存します。
  5. その場所var/netscaler/logon/themes/<custom_theme>/plugins.xmlの plugins.xml にnameと src を追加します。

    <plugins>
    <plugin name="nsg-epa" src="plugins/ns-gateway/nsg-epa.js" />
    <plugin name="nsg-setclient" src="plugins/ns-gateway/nsg-setclient.js" />
    <plugin name="ns-nfactor" src="plugins/ns-gateway/ns-nfactor.js" />
    <plugin name="ns-footer" src="plugins/ns-gateway/ns-footer.js" />
    </plugins>
    <!--NeedCopy-->
    
  6. プラグインを追加するカスタムテーマを設定します。
  7. flush cache contentgroup loginstaticobjectsコマンドを使用してキャッシュをフラッシュします。
  8. ポータル画面をリロードします。 フッターがNetScaler Gateway ログインページに追加されます。 カスタムポータルコード
カスタムプラグインを使用したゲートウェイポータルのカスタマイズ

この記事の概要