首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >icCube -如何使用Apache服务器对icCube进行身份验证

icCube -如何使用Apache服务器对icCube进行身份验证
EN

Stack Overflow用户
提问于 2015-11-20 10:17:57
回答 1查看 246关注 0票数 1

我目前正在编写一个WebApp来访问我们的ICCube系统的报告。应用程序页托管在与IcCube服务器不同的服务器上。服务器目前是本地Apache服务器(xampp),使用Basic Auth在用户访问我的htdocs之前对他们进行身份验证。我希望Apache在icCube的内部授权管理报表访问时进行身份验证,只需要一个登录名。

我的应用程序基于网络报告的现场演示提供的IcCube;因此它使用显式JavaScript身份验证(它通过ic3.getDemoDataSourceSettings()获取演示用户数据)。

在试图通过IcCube文档解决这个问题后,我和以前一样感到困惑。Apache上的相关页面列出了Apache和icCube的可能配置,但我不明白我应该使用哪些配置(优点和缺点),以及是否所有这些配置都可以用于我们的服务器设置。

  1. 概述:如果我在服务器配置中设置了这些代理参数,那么具体转发给IcCube的是什么?
  2. icCube身份验证Servlet过滤器:这个配置提取是属于IcCube还是Apache?这些过滤器到底是干什么用的?

对于这个问题的任何帮助或指向更深入的文档的指针都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-23 08:39:31

您的Web (即Apache)必须转发与访问icCube中的报告有关的调用。例如,您可以将Apache配置为转发与icCube相关的所有内容,如下所示:

代码语言:javascript
复制
<VirtualHost *:80>
ServerName your.domain.com

ProxyRequests Off

<Proxy *>
Order deny,allow
Allow from all
</Proxy>

ProxyPass        /icCube http://your-ip:8383/icCube
ProxyPassReverse /icCube http://your-ip:8383/icCube

</VirtualHost>

然后,使用作为icCube配置( icCube configuration,icCube.xml)一部分的Servlet过滤器来保护Apache和icCube.xml之间的通信:

代码语言:javascript
复制
IcCubeApacheAuthenticationServletFilter
IcCubeApacheGwtAuthenticationServletFilter

第一个过滤器可以用于除GWT以外的所有服务;对于GWT,您可以使用第二个过滤器。下面是一个可能的icCube.xml的摘录:

代码语言:javascript
复制
<xmlaComponentConfiguration>
    <!--<tcpPortNumber>8484</tcpPortNumber>-->
    <httpUrl>/icCube/xmla</httpUrl>
    <enableHttpCompression>true</enableHttpCompression>
    <filter>XMLA (Apache) Authentication</filter>
</xmlaComponentConfiguration>

<gwtServiceComponentConfiguration>
    <enableFileDownloadCompression>true</enableFileDownloadCompression>
    <filter>GWT (Apache) Authentication</filter>
</gwtServiceComponentConfiguration>

<reportingComponentConfiguration>
    <url>/icCube/doc/*</url>
    <enableCompression>true</enableCompression>
    <filter>Report Authentication</filter>
</reportingComponentConfiguration>

<gviComponentConfiguration>
    <url>/icCube/gvi</url>
    <enableCompression>true</enableCompression>
    <filter>GVI Authentication</filter>
    <filter>GVI Authentication (logout)</filter>
</gviComponentConfiguration>

<filterConfiguration>
    <filter>
        <filter-name>XMLA (Apache) Authentication</filter-name>
        <filter-class>crazydev.iccube.server.authentication.IcCubeApacheAuthenticationServletFilter</filter-class>
    </filter>
    <filter>
        <filter-name>GWT (Apache) Authentication</filter-name>
        <filter-class>crazydev.iccube.server.authentication.IcCubeApacheGwtAuthenticationServletFilter</filter-class>
    </filter>
    <filter>
        <filter-name>Report Authentication</filter-name>
        <filter-class>crazydev.iccube.server.authentication.IcCubeApacheAuthenticationServletFilter</filter-class>
    </filter>
    <filter>
        <filter-name>GVI Authentication</filter-name>
        <filter-class>crazydev.iccube.server.authentication.IcCubeApacheAuthenticationServletFilter</filter-class>
        <init-param>
            <param-name>anonymousLogon</param-name>
            <param-value>false</param-value>
        </init-param>
    </filter>
    <filter>
        <filter-name>GVI Authentication (logout)</filter-name>
        <filter-class>crazydev.iccube.server.authentication.IcCubeGviLogoutAuthenticationServletFilter</filter-class>
    </filter>
</filterConfiguration>

希望这能有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33824150

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档