계정 및 권한
ICE4에서는 다음과 같은 3가지 유형의 사용자 계정과 Role 기반의 권한을 제공한다.
Admin : 내부 관리자를 위한 계정으로 BackOffice를 사용하기 위한 계정
Manager : 3rd Party 사용자를 위한 계정으로 셀러, 공급사, 컨텐츠 제공자를 위한 별도의 BO가 필요한 경우 해당 BO 사용자를 위한 계정
Customer : ICE4로 제작하는 FrontOffice(대고객 서비스) 사이트의 사용자를 위한 계정
여기서, Manager 계정은 별도의 BO(ex: 셀러 오피스 등)이 필요한 경우에 사용하며, 그렇지 않은 경우에는 Admin의 그룹과 권한으로 분리하여 사용한다.
Admin 관리
Admin 계정은 Admin Group과 Admin 계정 관리로 구성된다.
Admin Group
관리자 그룹은 일반적으로 기업의 조직도를 기반으로 권한과 역할에 따라서 구분하여 관리한다.
Admin Group의 주요 속성은 다음과 같다.
관리자 그룹 ID : 관리자 그룹을 정의하기 위한 유니크한 영문아이디
Project : 해당 사용자 그룹이 사용가능한 관련 프로젝트
관리자 그룹명 : 관리자 그룹 명칭
Parent Group : 상위 관리자 그룹 (최상위 root)
ROLE : 해당 관리자 그룹의 권한을 제공하는 ROLE 설정
사용자 : 그룹에 속한 사용자 목록
Admin 계정
관리자 계정은 특정 관리자 그룹 하위로 관리되며, 기본적으로 지정한 상위 관리자 그룹의 권한을 상속 받고, 개별적으로 추가적인 권한을 지정할 수 있다.
관리자는 이름, 이메일과 같은 관리자를 정의하는 속성과 마지막 비밀번호 변경시간과 같은 사용에 관련된 속성으로 구성된다.
관리자 ID : 관리자를 정의하기 위한 유니크한 영문아이디
사용자 그룹 : 소속 관리자 그룹
관리자명 : 관리자 이름
비밀번호 : 관리자의 비밀번호
ROLE : 필요한 권한을 제공하는 ROLE 설정
email : 사용자의 이메일 정보
휴대폰번호 : 사용자의 휴대폰 번호 정보
허용 아이피 : 특정 아이피 대역에서 접속만 가능한 경우 해당 아이피 대역 설정
마지막 비밀번호 변경 시간 : 마지막 비밀번호 변경 시간
최종 로그인 : 마지막 로그인 시간
잠김 여부 : 비밀번호 오류 허용 회수 초과와 같은 경우에 설정되는 잠김 여부 상태
접속 아이피 : 마지막 접속한 아이피
사용여부 : 사용 여부(탈퇴)
로그인실패횟수 : 마지막으로 연속 로그인 실패한 횟수
Manager 관리
Manager 계정은 외부 업체 관리자를 위한 계정이며 Admin과 마찬가지로 Manager Group과 Manager 계정 관리로 구성된다.
Manager Group
Manager 그룹은 일반적으로 셀러, 공급사와 같은 유형 구분과 실제 협력사를 기반으로 구성되며, 세부 속성은 Admin Group과 동일하다.
Manager 계정
Manager계정은 Admin 계정과 유사한 속성으로 구성되어 있으며, 다음과 같은 추가적인 속성으로 구성된다.
시퀀스 ID : Manager는 영문 아이디이외에 내부적으로 시퀀스 ID를 발급하여 사용
회원등급 : 해당 사용자의 등급
국가 : 해당 국가
성별 : 사용자의 해당 성별
프로필이미지 : 해당 사용자의 프로필 이미지
회원 가입 인증 여부/회원 가입 인증 일자 : 인증 동의 정보
사용자 정책
ICE4에서는 허용된 비밀번호 오류 횟수, 비밀번호 변경 주기 등 사용자 계정을 관리하기 위한 정책을 사용자 유형 및 사이트별로 설정할 수 있도록 지원한다.
다음과 같은 정책관련 기능 정의를 지원한다.
사용자타입 : 설정하기 위한 사용자 유형(Admin, Manager, Customer)
사이트 : Customer 사용자의 경우 해당 사이트
로그인 중복 허용 : 동일 계정의 중복 로그인에 대한 허용 여부
허용 된 로그인 실패 횟수 : 비밀번호 오류로 인한 로그인 실패에 대한 허용 횟수 , 초과시 계정 잠김
비밀번호 변경 주기 : 비밀번호에 대한 변경 주기 설정
비밀번호 변경 연정 기간 : 비밀번호 변경 시점에 변경 유예를 연장할 수 있는 기간 설정
미접속 가능 기간 : 휴면 계정으로 전환되는 미접속 기간 지정
사용자 잠금 사용여부 : 로그인 실패 횟수, 비밀번호 변경 주기, 미접속 가능 기간을 초과하는 경우 잠금에 대한 수행 여부 설정
권한 관리
ICE4에서 권한은 ROLE을 만들고 만들어진 ROLE을 이용하여 권한 그룹을 생성하고, 해당 ROLE을 사용자 그룹이나 사용자에 부여함으로써 권한을 제공한다.
ROLE 부여는 계정이나 그룹에 부여하며, 특정 사용자가 로그인하면 해당 시점에 자신의 ROLE과 자신이 속한 그룹과 상위 그룹에 부여된 ROLE들을 모두 취합하여 권한 그룹을 생성한다.
권한 부여는 특정 기능에 ROLE을 지정함으로써 권한 그룹을 생성하게되며, 다음과 같은 항목에 대한 ROLE 설정을 지원한다.
메뉴 : BO 사이트 메뉴에 직접 ROLE을 설정하여 권한 부여
API : 특정 API에 권한 부여
스키마 : ICE4를 데이터 모델을 정의하고 있는 스키마에 대한 권한 부여
NodeType : 스키마의 기본 구성단위인 NodeType에 권한부여, 즉, 특정 데이터 유형에 대한 접근 권한 설정
PropertyType : 특정 노드타입의 특정 속성에 대한 권한 부여
Event : 특정 기능 실행에 대한 권한 부여
컴포넌트 : 빌더로 구성된 BO나 FO의 컴포넌트에 권한을 부여할 수 있다. ex) 버튼 등