0

我根据 Worklight 指南保护了我的一些资源,以保护静态 url、控制台等。

http://pic.dhe.ibm.com/infocenter/wrklight/v5r0m5/index.jsp?topic=%2Fcom.ibm.worklight.help.doc%2Fadmin%2Fr_protecting_ibm_worklight_console.html

我为它定义的领域是按照 Custom_Authenticator_and_Login_Module.pdf 指南完成的。

我有以下配置设置:

<staticResources>
        <resource id="worklightConsole" securityTest="PushApplication-custom-securityTest">
             <urlPatterns>/console*</urlPatterns> 
            <urlPatterns>/apps/services/preview*</urlPatterns>           
        </resource>
</staticResources>

当我申请那个时候两个 URL 都受到保护时,现在两天后我再次检查它,这次只有一个受到保护(预览受到保护)。

请建议,这是 WL v5.0.5 中的已知问题吗?因为目前我正在运行这个。

对于这个安全漏洞,我有一个解决方法,即实现 Java EE 安全过滤器——作为所有请求的守望者。

我的authenticationConfig.xml

<securityTests>
      <mobileSecurityTest name="myMobileSecurity">
            <testUser realm="myAppRealm"/>
            <testDeviceId provisioningType="none"/>
        </mobileSecurityTest>
        <customSecurityTest name="PushApplication-custom-securityTest">                             
                <test isInternalUserID="true" realm="PushAppRealm"/>   
            </customSecurityTest> 
        <customSecurityTest name="myAppSecurityTestCustom">                             
                <test isInternalUserID="true" realm="myAppRealm"/>   
            </customSecurityTest> 
    </securityTests>

    <realms>

        <realm loginModule="Strongmy" name="myAppRealm">
            <className>com.worklight.core.auth.ext.FormBasedAuthenticator</className>
            <parameter name="login-page" value="login.html"/>
        </realm>
        <realm loginModule="PushAppLoginModule" name="PushAppRealm">                                                
            <className>com.worklight.core.auth.ext.BasicAuthenticator</className>   
                <parameter name="basic-realm-name" value="PushAppRealm"/>                                                  
        </realm>
        <realm loginModule="requireLogin" name="WorklightConsole">
            <className>com.worklight.core.auth.ext.FormBasedAuthenticator</className>
            <onLoginUrl>/console</onLoginUrl>
        </realm>
    </realms>

    <loginModules>
         <loginModule name="PushAppLoginModule">
            <className>com.my.services.myAuthModule</className>
        </loginModule>
        <loginModule name="Strongmy">
            <className>com.worklight.core.auth.ext.NonValidatingLoginModule</className>
        </loginModule>

        <loginModule name="requireLogin">
            <className>com.worklight.core.auth.ext.SingleIdentityLoginModule</className>
        </loginModule>

    </loginModules>

任何其他建议都受到高度欢迎。

谢谢

4

1 回答 1

0

您可以在 customSecurityTest 中进行的安全测试旨在保护移动环境,而不是保护 Worklight Console。从您的 securityTest 的名称来看,听起来您确实将其应用于移动环境......

  1. 您的 authenticationConfig.xml 看起来如何?
  2. 使用预定义的 Worklight Console 安全测试有什么问题?(您也可以将其扩展为使用 LDAP)。
于 2013-06-08T12:29:23.257 回答