Netscaler Gateway: Customizing SmartAccess

Nach dem Artikel zum Anpassen der Beschreibungen vom CAG Logon Fenster hier noch ein paar Anpassungen um die Optionen vom SmartAccess zu beschränken.

Hierbei werden einmal Auswahlmöglichkeiten beschränkt, deren Beschreibung geändert und im Clientless VPN der Tab für Dateifreigaben ausgeblendet sowie die eigenen Bookmarks entfernt.
Getestet mit Netscaler 10.5 Build 50.9.nc

Ausblenden der Option für ein vollständiges SSL-VPN:

Aufbau der Action:

add rewrite action rw_act_client_choice_1 replace_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ „\“if(errcookie.indexOf(\’agent\‘)==2)\““ -pattern „if(errcookie.indexOf(\“agent\“)!=-1)“

add rewrite action rw_act_client_choice_2 replace_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ „\“if(errcookie.indexOf(\’java\‘)==2)\““ -pattern „if(errcookie.indexOf(\“java\“)!=-1)“

add rewrite action rw_act_client_choice_3 replace_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ „\“if(errcookie.indexOf(\’plugin\‘)==2)\““ -pattern „if(errcookie.indexOf(\“plugin\“)!=-1)“

add rewrite action rw_act_client_choice_4 replace_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ „\“if(errcookie.indexOf(\’mac\‘)==2)\““ -pattern „if(errcookie.indexOf(\“mac\“)!=-1)“

Aufbau der Policy:

add rewrite policy rw_pol_client_choice_1 „http.req.url.path.endswith(\“vpns/choices.html\“)“ rw_act_client_choice_1

add rewrite policy rw_pol_client_choice_2 „http.req.url.path.endswith(\“vpns/choices.html\“)“ rw_act_client_choice_2

add rewrite policy rw_pol_client_choice_3 „http.req.url.path.endswith(\“vpns/choices.html\“)“ rw_act_client_choice_3

add rewrite policy rw_pol_client_choice_4 „http.req.url.path.endswith(\“vpns/choices.html\“)“ rw_act_client_choice_4

Ausblenden des Dateishare Tabs und dessen rechten Frame und der Application Frame links:

Aufbau der Action:

add rewrite action rw_act_hide_fstab insert_after „http.RES.BODY(0).SET_TEXT_MODE(ignorecase)“ „\“#id_FileTransfer { display: none;}\““

add rewrite action rw_act_hide_fsframe insert_after „http.RES.BODY(0).SET_TEXT_MODE(ignorecase)“ „\“#ctl00_fileShares_mainDiv{ display: none;}\““

add rewrite action rw_act_hide_appframe insert_after „http.RES.BODY(0).SET_TEXT_MODE(ignorecase)“ „\“#ctl00_applicationsContainerCell{display: none;}\““

Aufbau der Policy:

add rewrite policy rw_pol_hide_fstab „http.req.url.path.endswith(\“images/caxtonstyle.css\“)“ rw_act_hide_fstab

add rewrite policy rw_pol_hide_fsframe „http.req.url.path.endswith(\“images/caxtonstyle.css\“)“ rw_act_hide_fsframe

add rewrite policy rw_pol_hide_appframe „http.req.url.path.endswith(\“images/caxtonstyle.css\“)“ rw_act_hide_appframe

Hinweis: Nach dem Entfernen des rechten Frames hatte sich der Website-Frame nicht über die ganze breite gezogen, ggfs hierbei den Share-Frame drin lassen.

Ausblenden der Links zum Hinzufügen von eigenen Bookmarks (Websites und Share):

Aufbau der Action:

add rewrite action rw_act_remove_bookmarks_web_1 delete_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ -pattern „<a id=\“id_Add\“ href=\“/vpns/empty.html\“ onclick=\“javascript:return ns_popupbookmarkoppage(\’newbm.html\‘);\“ target=\“_blank\“></a> |“

add rewrite action rw_act_remove_bookmarks_web_2 delete_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ -pattern „<a id=\“id_Remove\“ href=\“/vpns/empty.html\“ target=\“_blank\“ onclick=\“javascript:return ns_popupbookmarkoppage(\’rmbm.html\‘);\“></a>“

add rewrite action rw_act_remove_bookmarks_web_3 delete_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ -pattern „<B> <span id=id_PersonalWebSites></span> </B>“

add rewrite action rw_act_remove_bookmarks_web_4 delete_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ -pattern „<div class=\“NUI_Icon\“><span id=\“none\“></span></div>“

add rewrite action rw_act_remove_bookmarks_fs_2 delete_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ -pattern „<a id=\“id_Remove\“ href=\“/vpns/empty.html\“ target=\“_blank\“ onclick=\“javascript:return ns_popupbookmarkoppage(\’rmft.html\‘);\“></a>“

add rewrite action rw_act_remove_bookmarks_fs_3 delete_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ -pattern „<B> <span id=id_PersonalFileShares></span> </B>“

add rewrite action rw_act_remove_bookmarks_fs_4 delete_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ -pattern „<div class=\“NUI_Icon\“><span id=\“none\“></span></div>“

add rewrite action rw_act_remove_bookmarks_fs_1 delete_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ -pattern „<a id=\“id_Add\“ href=\“/vpns/empty.html\“ onclick=\“javascript:return ns_popupbookmarkoppage(\’newbm.html\‘);\“ target=\“_blank\“></a> |“

Aufbau der Policy:

add rewrite policy rw_pol_remove_bookmarks_web_1 „http.req.url.path.endswith(\“portal/bookmark.html\“)“ rw_act_remove_bookmarks_web_1

add rewrite policy rw_pol_remove_bookmarks_web_2 „http.req.url.path.endswith(\“portal/bookmark.html\“)“ rw_act_remove_bookmarks_web_2

add rewrite policy rw_pol_remove_bookmarks_web_3 „http.req.url.path.endswith(\“portal/bookmark.html\“)“ rw_act_remove_bookmarks_web_3

add rewrite policy rw_pol_remove_bookmarks_web_4 „http.req.url.path.endswith(\“portal/bookmark.html\“)“ rw_act_remove_bookmarks_web_4

add rewrite policy rw_pol_remove_bookmarks_fs_1 „http.req.url.path.endswith(\“portal/ftlist.html\“)“ rw_act_remove_bookmarks_fs_1

add rewrite policy rw_pol_remove_bookmarks_fs_2 „http.req.url.path.endswith(\“portal/ftlist.html\“)“ rw_act_remove_bookmarks_fs_2

add rewrite policy rw_pol_remove_bookmarks_fs_3 „http.req.url.path.endswith(\“portal/ftlist.html\“)“ rw_act_remove_bookmarks_fs_3

add rewrite policy rw_pol_remove_bookmarks_fs_4 „http.req.url.path.endswith(\“portal/ftlist.html\“)“ rw_act_remove_bookmarks_fs_4

Ersetzen des Textes der übrigen Möglichkeiten bei der Clientauswahl:

Aufbau der Action:

add rewrite action rw_act_client_choice_xenapp_desc replace_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ „\“\’Mit XenApp Anwendungen und dem Desktop verbinden.\’\““ -pattern „_(\’Connect with Citrix XenApp Plug-in for Hosted Apps.\‘)“

add rewrite action rw_act_client_choice_cvpn_desc replace_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ „\“\’Mit internen Webanwendungen und Outlook Web Access verbinden.\’\““ -pattern „_(\’Connect without the Access Gateway Plug-in.\‘)“

add rewrite action rw_act_client_choice_cvpn_title replace_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ „\“\’Interne Webanwendungen\’\““ -pattern „_(\’Clientless Access\‘)“

add rewrite action rw_act_client_choice_xenapp_title replace_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ „\“\’XenApp und Desktop\’\““ -pattern „_(\’Citrix XenApp\‘)“

Aufbau der Policy:

add rewrite policy rw_pol_client_choice_xenapp_desc „http.req.url.path.endswith(\“vpns/choices.html\“)“ rw_act_client_choice_xenapp_desc

add rewrite policy rw_pol_client_choice_xenapp_title „http.req.url.path.endswith(\“vpns/choices.html\“)“ rw_act_client_choice_xenapp_title

add rewrite policy rw_pol_client_choice_cvpn_desc „http.req.url.path.endswith(\“vpns/choices.html\“)“ rw_act_client_choice_cvpn_desc

add rewrite policy rw_pol_client_choice_cvpn_title „http.req.url.path.endswith(\“vpns/choices.html\“)“ rw_act_client_choice_cvpn_title

Aktivieren des „Zurück zum Login“ Links nach der Abmeldung:

Aufbau der Action:

add rewrite action rw_act_return_logon_1 replace_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ „\“<BR><BR>\““ -pattern „<!– <BR><BR>“

add rewrite action rw_act_return_logon_2 replace_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ „\“</p>\““ -pattern „–> </p>“

add rewrite action rw_act_return_logon_3 replace_all „http.RES.BODY(120000).SET_TEXT_MODE(ignorecase)“ „\“Hier klicken um zurück zur Anmeldeseite zu gelangen.\““ -pattern „Click here to return to the logon screen.“

Aufbau der Policy:

add rewrite policy rw_pol_return_logon_1 „http.req.url.path.endswith(\“vpn/logout.html\“)“ rw_act_return_logon_1

add rewrite policy rw_pol_return_logon_2 „http.req.url.path.endswith(\“vpn/logout.html\“)“ rw_act_return_logon_2

add rewrite policy rw_pol_return_logon_3 „http.req.url.path.endswith(\“vpn/logout.html\“)“ rw_act_return_logon_3

 

Die Einträge sind alle auf einem Netscaler 10.5 entstanden, sollten aber so oder ähnlich auf einem 10.0 / 10.1 Release anwendbar sein. Nach Updates bitte prüfen ob noch alles so ist wie es sein soll.

Mit diesen Anpassungen entfällt das händische Umschreiben der html Dateien und es ist Reboot- sowie Upgraderesistent.

Kommentar verfassen