问题标签 [netscaler]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
241 浏览

citrix - Netscaler 表达函数挑战

尝试检查 SAML 属性是否包含从字符串映射中检索到的角色(该属性包含逗号分隔的角色列表):

HTTP.REQ.USER.ATTRIBUTE(5).CONTAINS(HTTP.REQ.URL.QUERY.VALUE("pageid").MAP_STRING("UrlProtection"))

不幸的是,Netscaler 抱怨:Only constant parameters are allowed for function ["pageid").MAP_STRING, 72]

任何想法如何解决这个问题?

0 投票
1 回答
2585 浏览

python - 适用于 Netscaler 的 Citrix Nitro API - 启用和禁用服务组中的服务器节点

我最近开始使用 Python 使用 Nitro API。为了给 Netscaler 添加一些可扩展性,我需要能够添加启用和禁用服务组中的服务器节点。下面的代码是我实现这一目标的尝试:

但是当我运行这段代码时,它说“这个资源已经存在”。似乎它正在尝试在服务器和服务组之间创建新的绑定,而不是禁用服务器。'delay' 和 'graceful' 属性即使显示在 nitro 库的“servicegroup_servicegroupmember_binding”中也找不到(因此暂时将其注释掉)。

有没有人碰巧知道让这种禁用正常工作的方法?我能想到的唯一解决方法是删除绑定,然后创建一个已经设置了“启用”或“禁用”的新绑定,但这将是一个糟糕的解决方案,因为禁用将无法添加正常关闭。

谢谢大家

0 投票
1 回答
756 浏览

iis-7.5 - NetScaler/IIS:413 实体太大

我面临一个问题,每当我通过 Citrix NetScaler 将 JSON 发布/放入运行 IIS 7.5 的服务器时,我都会收到一个 413 Request Entity Too Large 的问题。

我们尝试将 aspnet:MaxJsonDeserializerMembers 设置为 30000、40000 和 512000,如下所示:

以及设置<jsonSerialization maxJsonLength="xxx"/>

但没有任何解决办法。

在我们没有 Citrix NetScaler 的本地测试环境中设置 aspnet:MaxJsonDeserializerMembers 可以正常工作。

NetScaler 中是否有任何我应该知道的设置?或者是否还有一些我必须注意的 IIS 设置,考虑到这适用于我们的本地测试环境,我倾向于后者,但我不想完全隐蔽。


编辑:经过进一步调查,似乎 NetScaler 是源,因为我们可以从 NetScaler 后面发布到 API。

0 投票
1 回答
1090 浏览

logstash-grok - Netscaler logstash grok 过滤器的时间字段

我尝试使用 Grok 解析 Logstash 的 Netscaler 日志。我在网上找到了以下过滤器

对于时间字段,它是 %{TIME} GMT,我想知道它是什么意思,以及如何在 date() 过滤器中使用这个提取的时间字段?

0 投票
0 回答
1122 浏览

javascript - 通过适当的异常处理防止无限错误循环

我正在使用 Angular 1.3.15,我想通过正确处理异常来防止客户端代码进入无限错误循环。

我正在使用Sentry报告异常,但我没有从客户端代码与 Sentry 通信。相反,我将客户端代码的异常报告给 Web API(使用 XHR),然后将其报告给 Sentry。

几天前发生的事情是,有人在 FireFox 10 上访问了我们的网站,因此由于 JavaScript 支持不佳,客户端代码进入了无限错误循环,因此它实际上向我们的 API 发送了垃圾邮件/拒绝服务攻击,但存在异常。我们的 API 落后于 NetScaler,因此我们决定设置一个速率限制器,如果请求达到速率限制器,我们现在返回 503 HTTP 状态代码(服务不可用)

错误看起来像这样:

([object Object],[object Object],(void 0))@/Static/Scripts/app/vendor/angular-translate/angular-translate.min.js:6 applyDirectivesToNode([object Array],[object HTMLAnchorElement] ,[object Object],(void 0),(void 0),null,[object Array],[object Array],[object Object])@/Static/Scripts/app/vendor/angular/angular.js:7498 compileNodes([object Proxy],(void 0))@/Static/Scripts/app/vendor/angular/angular.js:7040 compileNodes([object Proxy],(void 0))@/Static/Scripts/app/vendor /angular/angular.js:7054 compileNodes([object Proxy],(void 0))@/Static/Scripts/app/vendor/angular/angular.js:7054 compileNodes([object Proxy],(void 0))@ /Static/Scripts/app/vendor/angular/angular.js:7054 compileNodes([object Proxy],(void 0))@/Static/Scripts/app/vendor/angular/angular.js:7054 compileNodes([object Object ],(空白 0),[object Object],(void 0),(void 0),null)@/Static/Scripts/app/vendor/angular/angular.js:7054 ...

现在来解决问题。我想在客户端代码中实现适当的异常处理,因此它会继续向 API/Sentry 报告错误,但如果它收到 HTTP 503 状态代码响应,它应该立即停止脚本执行并暂停。

所以我尝试$exceptionHandler在我的 Angular 模块配置中实现一个装饰器:

captureException()在 SentryServiceProvider 中的函数只是使用 POST 请求调用 API,并将 JSON 对象中的异常消息和堆栈跟踪作为有效负载发送,并返回一个 $http 承诺。

现在的问题是因为它处于无限循环中,它永远不会进入error()回调并永远向 API 发送垃圾邮件。我怎么能这样做来防止我的客户端代码中出现无限错误循环,所以当 API 这么说时它会停止?

0 投票
4 回答
2179 浏览

ssl - 您将如何通过 netscaler 与 weblogic 端到端设置 SSL

weblogic 和 netscaler 新手需要架构方面的帮助

我想将 weblogic 上的服务公开给互联网,以便移动用户可以访问 web 服务。当用户直接访问该站点时,当前内部流量可以正常工作,例如 http://xxx.internal.local:7001

我需要为内部用户和外部用户启用端到端 SSL,并能够在外部和内部访问 web 服务

车流量

  • 外部用户|||| <--HTTPS-->|||| 网标器|||| <--HTTPS--> weblogic 服务器
  • 内部用户直接连接到 weblogic
  • 内部用户会使用https://xxx.internal.local:7002
    • (私有 DNS 和 IP 地址)
  • 外部用户将使用https://xxx.external.com:443
    • (公共 DNS 和 IP 地址)

已安装 SAN 证书(具有本地域和外部域)并将其导入到 weblogic Java 密钥库中。

实现这一目标的最佳方法是什么?

我们尝试过的事情

Netscaler 管理员在 Netscaler 上配置 SSL 直通 - 例如不解密和重新加密并将 443 端口转发到 7002

内部 DNS 中的 CNAME 设置将 xxx.external.com 指向 xxx.internal.local

  • 内部流量https://xxx.internal.local:7002正常且已加密
  • 外部流量失败并向用户显示证书错误

我不清楚这应该如何配置为具有外部域和内部域以及让 netscaler 进行 SSL 桥接 - 有没有更好的方法来完成这个 - 例如让 netscaler 在 VIP 卸载 SSL 并重新加密回 weblogic 并更改匹配内部域名的 HTTP 主机头(反向代理)

提前致谢

0 投票
1 回答
1051 浏览

ansible - Ansible netscaler 模块出现错误“msg”:“'NoneType' 对象没有属性 'read'”

有没有人尝试使用 Ansible (ansible 1.9.4) Netscaler 模块?我尝试使用它但失败并出现错误:

使用 -vvvv 输出:

无法使用的 1.9.5:

注意:localhost 不是 NETSCALER,它是一个管理主机。

我也尝试在剧本中使用该模块但仍然失败。

希望听到你的建议。

谢谢。

0 投票
2 回答
99 浏览

citrix - Citrix Netscaler 和谷歌计算引擎

Citrix Netscaler 负载平衡器是否在 Google 计算环境中运行?是否支持?有替代品吗?

干杯

0 投票
1 回答
621 浏览

nginx - Nginx - 访问 Http 自定义标头

我有一个简单的要求。我有一个 nginx Web 服务器和一个 netscaler 代理。在 netscaler 中,选项 Client_IP 标头被选中,标头名称为 HTTP_CLIENT_IP。

我想在 nginx 日志中访问这个 ip。我已经指定了一个自定义日志格式,所以我可以访问这个值:

我在日志格式中尝试了以下变量,它们只是以“-”返回。

基本上,我想读取 nginx 从 netscaler 收到的整个请求标头/正文。

任何帮助,将不胜感激 !

0 投票
0 回答
4093 浏览

java - Java 没有为相互 SSL 提供客户端证书?

我正在尝试使用相互 SSL 从 Java SpringBoot 应用程序连接到 NetScaler 端点。我可以使用以下命令通过 OpenSSL 在命令行上按预期进行连接:

这给出了以下输出:

为了从 Java 应用程序连接,我使用以下命令将 cert.cer 和 private.key 文件中的密钥和证书组合在一起:

我使用以下参数启动 Spring 应用程序:

我可以清楚地看到我的密钥库在 Java 应用程序尝试连接时被加载,但在尝试向服务器提供客户端证书时似乎失败了。

加载密钥库:

我相信 Java 应用程序没有正确显示证书,如日志的这一部分所示:

这里似乎有一个类似的旧问题:Java not sent client certificate but it has no answers。如何说服 Java 找到发送正确的证书?如果需要,我可以提供额外的日志记录。