2015-06-24 237 views
10

WildFly中安全領域和安全領域之間的主要區別是什麼?WildFly中安全領域和安全領域之間的區別

standalone.xml

   <security-domain name="foo">    
        <authentication> 
         <login-module code="..." flag="...">       
         </login-module>           
        </authentication> 
       </security-domain> 

 <security-realm name="foo"> 
      <authentication> 
       <local default-user="..." allowed-users="..." 
skip-group-loading="..."/> 
       <properties path="..." relative-to="..."/> 
      </authentication> 
      <authorization> 
       <properties path="..." relative-to="..."/> 
      </authorization> 
     </security-realm> 

回答

15

安全域主要用於定義部署應用程序的安全性。 安全域中的標準身份驗證基於JAASjavax.security.auth.spi.LoginModule實現。應用程序可以提供自定義登錄模塊。

安全領域主要用於配置服務器管理接口和遠程處理的安全性。 領域認證是基於提供的實現javax.security.auth.callback.CallbackHandler。 AFAIK不可能提供自己的CallbackHandler實現。

安全域可以使用「RealmDirect」登錄模塊將身份驗證委託給安全域。

安全域可以通過使用「JAAS」認證配置

參見this response通過JBoss的安全顯影劑Darran Lofthouse委託認證到的安全域。

+0

在應用程序的web.xml中,您可以爲login-config定義領域名稱。但是,如果我的應用程序使用安全域,那麼web.xml中指定的領域名稱是做什麼的? – user1884155

+1

web.xml中的領域名稱只是一個呈現給客戶端的名稱,可以向您的應用程序進行身份驗證。在BASIC認證期間,您可以在瀏覽器認證對話框中看到該名稱。 – kwart