Citrix ADC

Définir un cookie à l 'aide de NFactor

Vous pouvez appliquer les étiquettes personnalisées nFactor et définir un cookie en tant que facteur du flux d ' authentication。Grâce aux étiquettes personnalisées, vous pouvez utiliser JavaScript倒操纵le schéma de连接。

倒définir uncookie即时查询信息à l 'utilisateur, ce qui est effectué san connection de schéma。在塞拉,你的导航之间,你的导航,利用和需求的联系schéma货物连接données souhaitées。Un schéma de connexion est nécessaire pour définir le cookie lorsque la page est chargée。Le cookie est défini avec une étiquette personnalisée et un code JavaScript。

Pour implémenter un facteur qui définit un cookie, créez un fichier XML appelé cookie. XML Pour stocker le schéma dans le répertoire /nsconfig/loginschema/ avec le contenu suivant:

<?xml version="1.0" encoding="UTF-8"?>< authenticaterresponse xmlns="//m.giftsix.com/authentication/response/1"> success more-info   /nf/auth/doAuthentication. >< StateContext>  /nf/auth/doAuthentication. 0< /回发> < CancelPostBack > / nf /认证/ doLogoff。do Cancel <要求><要求><凭据>nsg_cookiensg_cookie Plain <要求><凭据>loginBtnnone<标签>none<输入><按钮>< !——NeedCopy >

Dans ce代码XML;

  • L ' étiquette personnalisée nsg_cookie est utilisée pour créer le cookie et envoy le formulaire, ainsi que le bouton du formulaire。
  • Le RFWebUI_Custom est Le nouveau thème du portail basé sur Le thème RFWebUI。
  1. Créez un thème de portail basé sur le thème RFWebUI。

    add vpn portaltheme rfweb i_custom -basetheme rfweb 

    Cette命令crée un dossier pour ce thème dans /var/netscaler/logon/themes/RFWEBUI_CUSTOM

  2. 修改脚本/var/netscaler/logon/themes/ rfwebui_custom /script.js等

    CTXS.ExtensionAPI。addCustomCredentialHandler({//证书的名称,必须与服务器返回的类型匹配getCredentialTypeName: function () {return "nsg_cookie";}, //生成自定义证书的HTML getCredentialTypeMarkup: function (requirements) {var div = $("
    ");$(document).ready(function(){//设置cookie有效期1000天var exdays = 1000;var d = new Date();d.setTime (d.getTime () + (exdays \ * 24 \ * 60 * 60 \ \ * 1000));var expires=" expires="+ d.toUTCString();文档。cookie = "NSC_COOKIE_NAME=CookieValue;"+ expires + ";path=/"; //Submit form document.getElementById('loginBtn').click(); }); return div; } });

    Ce代码生效les opérations suivantes:

    • 参加que le navigateur ait fini de charger la page
    • Définit un cookie appelé NSC_COOKIE_NAME avec la valeur CookieValue, valide pendant 1000小时
    • Soumet自动公式。

    Le cookie est créé et l 'utilisateur n 'a pas besoin d 'interagir avec la page。

  3. Créez un schéma de connexion à lier à l ' étiquette de stratégie qui représente le facteur de cookie défini。

    add authentication loginSchema Cookie_LS -authenticationSchema "/nsconfig/ loginSchema /cookie.xml" 
  4. Créez une stratégie d ' authentication NO_AUTHN à lier à l ' étiquette de stratégie qui représente le facteur de cookie défini。

    add认证策略NO_AUTHN_POL -rule TRUE -action NO_AUTHN 

    Cette stratégie est toujours évaluée comme vrae, en déplaçant l 'utilisateur vers le facteur suivant ou en complétant le flux d '认证。

  5. Liez le thème de portail RFWEbui_Custom au server virtuel Citrix Gateway ou au server virtuel Citrix ADC AAA。

Définir un cookie à l 'aide de NFactor