Liberty 프로파일에서 애플리케이션에 대한 권한 구성

애플리케이션 권한을 구성하면 사용자 또는 그룹이 지정된 역할에 속하는지 여부와 이 역할에 자원에 액세스할 수 있는 권한이 있는지 여부를 확인할 수 있습니다.

이 태스크 정보

Liberty 프로파일 서버는 사용자 레지스트리에서 사용자와 그룹 맵핑 정보를 추출한 다음, 애플리케이션의 권한 구성을 확인하여 필수 역할 중 하나가 사용자나 그룹에 지정되었는지 판별합니다. 그런 다음, 서버는 애플리케이션의 배치 디스크립터를 읽고 나서 자원에 액세스할 수 있는 권한이 사용자 또는 그룹에 있는지를 판별합니다.

프로시저

  1. server.xml 파일에서 appSecurity-2.0 Liberty 기능을 사용 가능하게 설정하십시오.
    예:
        <featureManager>
            <feature>appSecurity-2.0</feature>
        </featureManager>
  2. Liberty 프로파일 서버에서 인증을 위한 사용자 레지스트리를 구성하십시오.

    Liberty 프로파일에서 사용자 인증을 확인하십시오.

  3. 애플리케이션의 배치 디스크립터가 보안 제한조건 및 기타 보안 관련 정보를 포함하는지 확인하십시오.
    참고: Rational® Application Developer와 같은 도구를 사용하여 배치 디스크립터를 작성할 수도 있습니다.
  4. 권한 정보(예: 역할 맵핑을 위한 사용자와 그룹)를 구성하십시오.
    다음 방법을 사용하여 권한 테이블을 구성할 수 있습니다.
    • EAR 파일이 있을 경우에는 권한 구성 정의를 ibm-application-bnd.xml 또는 ibm-application-bnd.xmi 파일에 추가할 수 있습니다.
    • 독립형 WAR 파일이 있을 경우에는 권한 테이블 정의를 해당 애플리케이션 요소 아래의 server.xml 파일에 추가할 수 있습니다. WebSphere® Application Server Developer Tools for Eclipse를 사용하여 이를 수행할 수 있습니다.
    참고:
    • EAR 파일이 있는 경우 권한 구성이 이미 존재할 수 있습니다. 현재 스펙에 기록된 EAR 파일에서 이 정보는 ibm-application-bnd.xml 파일에 저장되어 있습니다. 이전 EAR 파일에서는 ibm-application-bnd.xmi 파일에 저장되어 있습니다.
    • EAR 파일에 아직 ibm-application-bnd.xm* 파일이 포함되어 있지 않을 경우, 이 파일을 작성하는 것이 간단한 태스크가 아니므로 권한 구성을 server.xml 파일에 추가하는 편이 더 쉬울 수 있습니다.
    • EAR 파일의 권한 구성이 ibm-application-bnd.xm* 파일에 정의되어 있고 server.xml 파일에도 정의되어 있는 경우에는 두 테이블이 병합됩니다. 충돌이 발생하면 server.xml 파일의 정보가 사용됩니다.
    • 사용자 레지스트리를 수정하면 필요한 변경을 위해 권한 부여 테이블을 검토하십시오. 예를 들어, access-id 요소를 지정하고 레지스트리의 영역 이름을 변경하면 access-id 요소에서 영역 이름도 변경해야 합니다.
    • server.xml 파일에 application-bnd 요소를 지정하는 경우 애플리케이션이 dropins 폴더에 있으면 안 됩니다. dropins 폴더에 애플리케이션을 그대로 둘 경우에는 server.xml 파일에서 다음을 설정하여 애플리케이션 모니터링을 사용 불가능하게 해야 합니다.
      <applicationMonitor dropinsEnabled="false" />

    역할은 사용자, 그룹 및 특수 대상에 맵핑할 수 있습니다. 특수 대상의 두 가지 유형은 EVERYONEALL_AUTHENTICATED_USERS입니다. EVERYONE 특수 대상에 역할이 맵핑된 경우에는 누구에게나 액세스가 허용되며 신임 정보 입력을 요구하지 않으므로 보안이 되지 않습니다. ALL_AUTHENTICATED_USERS 특수 대상에 역할이 맵핑된 경우 애플리케이션 서버에 의해 인증된 사용자는 모두 보호된 자원에 액세스할 수 있습니다.

    아래 내용은 server.xml 파일 내의 역할 맵핑을 위해 사용자 및 그룹을 구성하는 예제 코드입니다.
    <application type="war" id="myapp" name="myapp" location="${server.config.dir}/apps/myapp.war">
    	<application-bnd>
    				<security-role name="user">
    						<group name="students" />
    		</security-role>
    				<security-role name="admin">
    						<user name="gjones" />
                <group name="administrators" />
    		</security-role>
    		<security-role name="AllAuthenticated">
    			<special-subject type="ALL_AUTHENTICATED_USERS"/>
    		</security-role>
    	</application-bnd>
    </application>

    이 예제에서 admin 역할은 사용자 ID gjones 및 그룹 administrators의 모든 사용자에게 맵핑되었습니다. AllAuthenticatedRole은 특수 대상 ALL_AUTHENTICATED_USERS에 맵핑되었으며, 이는 모든 사용자가 인증에 유효한 신임 정보를 제공하는 한 액세스 권한을 갖게 됨을 의미합니다.


주제의 유형을 표시하는 아이콘 태스크 주제

Information Center 이용 약관 | 피드백


시간소인 아이콘 마지막 업데이트 날짜: Wednesday, 2 September 2015
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_sec_rolebased
파일 이름: twlp_sec_rolebased.html