블로그 이미지
윤영식
Full Stacker, Application Architecter, KnowHow Dispenser and Bike Rider

Publication

Category

Recent Post

2012. 10. 25. 15:40 Middleware, Cloud/WAS

JBoss 5.x에 대한 관리화면 폴더는 각 도메인안의 

  • deploy/jmx-console.war : JMX 콘솔
  • deploy/management : 웹 콘솔
두 디렉토리를 삭제하면 JMX 관리가 안됨. 보고 싶다면 보안을 설정한다

  • jmx-console.war/WEB-INF/web.xml에서 하기 security 테그의 주석을 제거한다 
<security-constraint>
     <web-resource-collection>
       <web-resource-name>HtmlAdaptor</web-resource-name>
       <description>An example security config that only allows users with the
         role JBossAdmin to access the HTML JMX console web application
       </description>
       <url-pattern>/*</url-pattern>
     </web-resource-collection>
     <auth-constraint>
       <role-name>JBossAdmin</role-name>
     </auth-constraint>
   </security-constraint>


  • JBossAdmin 권한을 가진 사용자만이 JMX 콘솔 사용이 가능하다 
  • 사전에 WEB-INF/jboss-web.xml 의 보안 도메인 링크가 하기와 같이 설정되어 있어야 한다
<jboss-web>
      <security-domain>java:/jaas/jmx-console</security-domain>
</jboss-web>

  • security domain에 대한 부분은 conf/login-config.xml에 하기와 같이 설정되어 있다
 <application-policy name="jmx-console">
    <authentication>
      <login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule"
        flag="required">
        <module-option name="usersProperties">props/jmx-console-users.properties</module-option>
        <module-option name="rolesProperties">props/jmx-console-roles.properties</module-option>
      </login-module>
    </authentication>
  </application-policy>

  • conf/props 디렉토리 밑에 jmx-console-users.properties에 key=value로 admin을 정의 한다
  • conf/props 디렉토리 밑에 jmx-console-roles.propertiess에 하기와 같이 역할을 정의 한다
admin=JBossAdmin,HttpInvoker

  • management/console-mgr.sar/web-console.war/WEB-INF 디렉토리에서 web.xml 의 security 태그 주석을 제거하고 jboss-web.xml에서 java:/jaas/web-console를 java:/jaas/jmx-console 로 변경하면 똑같은 보안설정을 따르게 된다. 



posted by 윤영식