롤 관리

개요

롤관리는 시스템을 사용하는 사용자 혹은 사용자 그룹별로 부여된 권한정보에 준하여 시스템에 접근할 수 있는 권한을 제어하는 기능을 제공하고, 그와 관련한 롤 정보를 관리할 수 있는 기능을 제공한다.

설명

롤관리는 사용자 권한별 롤 정보를 관리하기 위한 목적으로 롤의 등록, 수정, 삭제, 조회, 목록조회의 기능을 수반한다.

  ① 롤등록 : 시스템 메뉴 및 기능화면에 따른 접근권한, 데이터 입력, 수정, 삭제의 접근 정보를 등록한다.
  ② 롤수정 : 시스템 메뉴 및 기능화면에 따른 접근권한, 데이터 입력, 수정, 삭제의 접근 정보를 수정한다.
  ③ 롤삭제 : 시스템 메뉴 및 기능화면에 따른 접근권한, 데이터 입력, 수정, 삭제의 접근 정보를 삭제한다.
  ④ 롤조회 : 시스템 메뉴 및 기능화면에 따른 접근권한, 데이터 입력, 수정, 삭제의 접근 정보를 조회한다.
  ⑤ 롤목록 : 시스템 메뉴 및 기능화면에 따른 접근권한, 데이터 입력, 수정, 삭제의 접근 정보 목록을 조회한다.

설명

패키지 참조 관계

롤관리 패키지는 요소기술의 공통 패키지(cmm)와 권한관리 패키지에 대해서 직접적인 함수적 참조 관계를 가진다. 하지만, 컴포넌트 배포 시 오류 없이 실행되기 위하여 패키지 간의 참조관계에 따라 부서권한관리, 권한그룹관리, 그룹관리, 스프링시큐리티, 사용자통합인증, 요소기술(유틸리티) 시스템, 웹에디터, 메일연동 인터페이스 패키지와 함께 배포 파일을 구성한다.

관련소스

유형대상소스명비고
Controlleregovframework.com.sec.rmt.web.EgovRoleManageController.java롤 관리를 위한 컨트롤러 클래스
Serviceegovframework.com.sec.rmt.service.EgovRoleManageService.java롤 관리를 위한 서비스 인터페이스
ServiceImplegovframework.com.sec.rmt.service.impl.EgovRoleManageServiceImpl.java롤 관리를 위한 서비스 구현 클래스
VOegovframework.com.sec.rmt.service.RoleManageVO.java롤 관리를 위한 VO 클래스
DAOegovframework.com.sec.rmt.service.impl.RoleManageDAO.java롤 관리를 위한 데이터처리 클래스
Modelegovframework.com.sec.rmt.service.RoleManage.java롤 관리를 위한 Model 클래스
JSP/WEB-INF/jsp/egovframework/com/sec/rmt/EgovRoleManage.jsp롤 관리를 위한 jsp페이지
JSP/WEB-INF/jsp/egovframework/com/sec/rmt/EgovRoleInsert.jsp롤 등록를 위한 jsp페이지
JSP/WEB-INF/jsp/egovframework/com/sec/rmt/EgovRoleUpdate.jsp롤 수정를 위한 jsp페이지
QUERY XMLresources/egovframework/mapper/com/sec/rmt/EgovRoleManage_SQL_mysql.xml롤 관리를 위한 MySQL용 QUERY XML
QUERY XMLresources/egovframework/mapper/com/sec/rmt/EgovRoleManage_SQL_cubrid.xml롤 관리를 위한 Cubrid용 QUERY XML
QUERY XMLresources/egovframework/mapper/com/sec/rmt/EgovRoleManage_SQL_oracle.xml롤 관리를 위한 Oracle용 QUERY XML
QUERY XMLresources/egovframework/mapper/com/sec/rmt/EgovRoleManage_SQL_tibero.xml롤 관리를 위한 Tibero용 QUERY XML
QUERY XMLresources/egovframework/mapper/com/sec/rmt/EgovRoleManage_SQL_altibase.xml롤 관리를 위한 Altibase용 QUERY XML
QUERY XMLresources/egovframework/mapper/com/sec/rmt/EgovRoleManage_SQL_maria.xml롤 관리를 위한 Maria용 QUERY XML
QUERY XMLresources/egovframework/mapper/com/sec/rmt/EgovRoleManage_SQL_postgres.xml롤 관리를 위한 Postgres용 QUERY XML
QUERY XMLresources/egovframework/mapper/com/sec/rmt/EgovRoleManage_SQL_goldilocks.xml롤 관리를 위한 Goldilocks용 QUERY XML
Message propertiesresources/egovframework/message/com/sec/rmt/message_ko.properties롤 관리 Message properties(한글)
Message propertiesresources/egovframework/message/com/sec/rmt/message_en.properties롤 관리 Message properties(영문)
Idgen XMLresources/egovframework/spring/com/idgn/context-idgn-Role.xml롤 관리 Id생성 Idgen XML

클래스 다이어그램

XML 설정 파일

스프링 시큐리티를 사용하는 경우 (globals.properties 에서 Globals.Auth=security 로 설정한 경우)

파일명위치비고
context-securitysrc/main/resources/egovframework/spring/com/context-security.xml스프링 시큐리티와 관련된 설정이 적용된 파일

세션방식을 사용하는 경우 (globals.properties 에서 Globals.Auth=session 으로 설정한 경우)

파일명위치비고
egov-com-accesssrc/main/webapp/WEB-INF/config/egovframework/springmvc/egov-com-access.xml세션방식의 접근제어가 적용된 파일

ID Generation

ID Generation 관련 DDL 및 DML

  • ID Generation Service를 활용하기 위해서 Sequence 저장테이블인 COMTECOPSEQ에 ROLE_ID 항목을 추가한다.
  CREATE TABLE COMTECOPSEQ
  (
	TABLE_NAME            VARCHAR(20) NOT NULL,
	NEXT_ID               NUMERIC(30) NULL,
	 PRIMARY KEY (TABLE_NAME)
  );
 
  INSERT INTO COMTECOPSEQ VALUES('ROLE_ID','1');
 

ID Generation 환경설정(context-idgn-Role.xml)

    <bean name="egovRoleIdGnrService" class="egovframework.rte.fdl.idgnr.impl.EgovTableIdGnrServiceImpl" destroy-method="destroy">
        <property name="dataSource" ref="egov.dataSource" />
        <property name="strategy"   ref="roleIdStrategy" />
        <property name="blockSize"  value="10"/>
        <property name="table"      value="COMTECOPSEQ"/>
        <property name="tableName"  value="ROLE_ID"/>
    </bean>
    <bean name="roleIdStrategy" class="egovframework.rte.fdl.idgnr.impl.strategy.EgovIdGnrStrategyImpl">
        <property name="prefix"   value="" />
        <property name="cipers"   value="6" />
        <property name="fillChar" value="0" />
    </bean>

테이블

테이블명테이블명(영문)비고
롤정보COMTNROLEINFO권한에 종속되는 보안요소로써 사이트 접근 권한 이하 등록 롤, 수정 롤, 삭제 롤을 부여할 수 있다.

관련코드

롤관리의 속성 중 롤타입에 대한 공통코드를 정의한다.

코드분류코드분류명코드ID코드명
COM029롤유형코드urlURL
COM029롤유형코드methodMETHOD
COM029롤유형코드pointcutPOINTCUT

관련기능

롤관리기능은 크게 롤 목록조회, 롤 등록, 롤 수정, 롤 삭제 기능으로 구성되어 있다.

롤목록 조회

비즈니스 규칙

롤 목록은 페이지 당 10건씩 조회되며, 페이징은 10페이지씩 이루어진다. 검색조건은 롤명 대해서 수행된다.

관련코드

N/A

관련화면 및 수행메뉴얼

ActionURLController methodSQL NamespaceSQL QueryID
조회/sec/rmt/EgovRoleList.doselectRoleList“roleManageDAO”“selectRoleList”
“roleManageDAO”“selectAuthorListTotCnt”

롤목록 조회

조회조건 : 조회조건으로 롤 명을 입력 후 조회한다.
조회 : 등록된 롤 정보 목록을 조회한다.
등록 : 롤 정보를 등록할 경우 등록버튼을 선택하면 롤을 등록할 수 있는 화면으로 이동한다.

롤 등록

비즈니스 규칙

롤 정보를 등록하기 위해서 롤 등록 화면의 각 입력항목에 롤 정보를 입력한 뒤 등록버튼을 선택한다.

관련코드

N/A

관련화면 및 수행메뉴얼

ActionURLController methodSQL NamespaceSQL QueryID
등록화면/sec/rmt/EgovRoleInsertView.doinsertRoleView
등록/sec/rmt/EgovRoleInsert.doinsertRole“roleManageDAO”“insertRole”

롤목록 등록

목록 : 롤 목록 화면으로 이동한다.
등록 : 롤 정보를 신규로 등록할 경우 각 속성정보를 입력 후 등록버튼을 선택한다.

롤 수정

비즈니스 규칙

롤 수정 화면은 상세조회 화면과 동일하고, 기 등록된 롤 정보를 수정한 뒤 저장버튼을 선택한다.

관련코드

N/A

관련화면 및 수행메뉴얼

ActionURLController methodSQL NamespaceSQL QueryID
수정화면/sec/rmt/EgovRole.doselectRole“roleManageDAO”“selectRoleList”
수정/sec/rmt/EgovRoleUpdate.doupdateRole“roleManageDAO”“updateRole”
삭제/sec/rmt/EgovRoleDelete.dodeleteRole“roleManageDAO”“deleteRole”

롤 수정

목록 : 롤 목록 화면으로 이동한다.
삭제 : 삭제버튼을 선택하여 롤 정보를 삭제한다.
저장 : 롤 정보를 수정할 경우 각 속성정보를 변경 후 저장버튼을 선택한다.

롤 삭제

비즈니스 규칙

롤 정보를 삭제하기 위해서 롤 목록 조회 화면의 삭제대상 롤 정보를 선택한 뒤 삭제버튼을 선택한다.

관련코드

N/A

관련화면 및 수행메뉴얼

ActionURLController methodSQL NamespaceSQL QueryID
삭제/sec/rmt/EgovRoleListDelete.dodeleteRoleList“roleManageDAO”“deleteRole”

롤 삭제

선택 : 삭제하기 위한 롤 정보를 선택한다. 멀티선택이 가능하다.
삭제 : 삭제버튼을 선택하여 롤 정보를 삭제한다.

 
egovframework/com/v4.2/sec/롤관리.txt · 마지막 수정: 2023/12/21 05:21 (외부 편집기)
 
이 위키의 내용은 다음의 라이센스에 따릅니다 :CC Attribution-Noncommercial-Share Alike 3.0 Unported
전자정부 표준프레임워크 라이센스(바로가기)

전자정부 표준프레임워크 활용의 안정성 보장을 위해 위험성을 지속적으로 모니터링하고 있으나, 오픈소스의 특성상 문제가 발생할 수 있습니다.
전자정부 표준프레임워크는 Apache 2.0 라이선스를 따르고 있는 오픈소스 프로그램입니다. Apache 2.0 라이선스에 따라 표준프레임워크를 활용하여 발생된 업무중단, 컴퓨터 고장 또는 오동작으로 인한 손해 등에 대해서 책임이 없습니다.
Recent changes RSS feed CC Attribution-Noncommercial-Share Alike 3.0 Unported Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki