2016-01-07 71 views
0

使用WAS 8558和其中一種URL模式,需要調用JAAS模塊。WAS Liberty - 如何觸發JAAS模塊?

條目在web.xml

<security-constraint> 
<display-name>SampleConstraint</display-name> 
<web-resource-collection> 
    <web-resource-name>Sample</web-resource-name> 
    <url-pattern>/wasauth</url-pattern> 
    <http-method>GET</http-method> 
    <http-method>POST</http-method> 
</web-resource-collection> 
<auth-constraint> 
    <description> 
     Users allowed access to spoke Identity Provider</description> 
    <role-name>FIMAnyAuthenticated</role-name> 
    <role-name>FIMUserSelfCareAnyAuthenticated</role-name> 
</auth-constraint> 

條目server.xml中

<jaasLoginContextEntry id="system.FIM_OUTBOUND" name="system.FIM_OUTBOUND" loginModuleRef="myCustom, hashtable, userNameAndPassword, certificate, token"/> 
       <jaasLoginModule id="myCustom" className="com.*.SampleLoginModule" controlFlag="REQUIRED" libraryRef="customLoginLib"> 
</jaasLoginModule> 

       <library id="customLoginLib" apiTypeVisibility="spec, ibm-api, api"> 
    <fileset dir="/" includes="com.**_8.0.0.jar"/> 

此流程使用聯合存儲庫功能(自由)進行認證。 上面提到的設置允許用戶通過存儲庫進行身份驗證,但是JAAS模塊沒有被調用。

如果我使用WSLoginModuleProxy將JAAS條目轉換爲system.WEB_INBOUND - 將調用JAAS模塊。

Liberty確實啓用了appSecurity-2.0功能。

是否還有其他配置需要完成?

回答

2

當Liberty概要文件對受保護的Web資源執行身份驗證時,它使用system.WEB_INBOUND JAAS登錄配置條目。因此,將調用您在其中配置的任何自定義登錄模塊。

如果您已將自定義登錄模塊配置爲您自己的或不同的JAAS配置,則在Web身份驗證期間服務器將不會調用它。你的申請。但是,可以直接調用它。

+0

好的,你能分享一下應用程序如何直接調用JAAS?它是否被稱爲程序化登錄? server.xml中的條目是什麼? –

相關問題