티스토리 뷰
본 포스팅은 JEUS 중복로그인 방지기능 대해 알아보겠습니다.
보통 중복 로그인 방지를 위해서는 application에서 로그인한 ID를 DB나 memory에 저장한 후 동일한 ID가 로그인 하였을 때 이를 체크하여 중복 로그인을 방지합니다. 이러한 기능을 WAS에서 처리할 수 있도록 기능이 추가되었습니다.
JEUS7의 중복로그인 방지는 다른 세션에 대해 동일한 아이디로 로그인을 수행한 경우 기존의 로그인을 수행하였던 세션을 세션서버에서 제거하여 근본적으로 중복 로그인을 방지합니다.
[사용방법]
사용방법은 아래의 3단계로 요약할 수 있습니다.
1. JEUS 환경 설정
중복 로그인 방지 기능을 위해 Login Manager는 기존의 중앙 세션 서버와 유사하게 구성됩니다. 중복방지할 사용자 ID를 저장히고 있는 primary/backup서버를 지정해야 합니다.
http-session-config 방식 또는 cluster 방식에서 모두 사용가능하며 각 메뉴의 session-config 설정 메뉴를 들어가면 [JEUS Login Manager]->[primary/backup] 서버를 지정할 수 있습니다. 여러 ms중 primary/backup서버로 구성할 ms 이름을 입력하시면 됩니다.
2. Application 환경설정
jeus-web-dd.xml에 중복로그인 방지 기능을 활성화 해야 합니다.
|
3. Application 코딩
로그인은 애플리케이션에서 이벤트이므로 Jeus Login Manager에서 로그인 이벤트를 전달하는 방법에는 제약 사항이 존재한다. Jeus Login Manager에서는 기본적으로 “JEUS_LOGIN_KEY“로 setAttribute를 수행하였을 경우 로그인으로 판단한다. 이 값은 jeus-web-dd.xml의 Properties에 “jeus.application.login.key”로 변경 가능하다. 동일한 약속된 key로 removeAttribute를 수행하였을 경우 로그아웃을 수행하며 invalidate된 세션은 자동으로 로그아웃이 수행된다. |
로그인을 수행하는 source에서 세션을 생성 시 아래의 코드를 추가적으로 삽입해야 합니다.
session.setAttribute(“JEUS_LOGIN_KEY”,”사용자ID”);
이 때 JEUS 서버에서는 기존에 로그인하였던 사용자 ID의 세션을 세션서버에서 invalidate를 수행하게 됩니다
<?xml version="1.0"?>
<jeus-web-dd xmlns="http://www.tmaxsoft.com/xml/ns/jeus">
<!-- the URL path of the context. -->
<context-path>/examples</context-path>
<use-jeus-login-manager>true</use-jeus-login-manager>
<properties>
<property>
<key>myKey</key>
<value>jeus.application.login.key</value>
</property>
</properties>
</jeus-web-dd>
중복 로그인 방지 기능은 일반적을 외부 환경에서 사용하던 로그인 환경을 강제로 끊어 버릴수 있도록 하는 기능입니다.
보안상 매우 중요한 기능이라고 할 수 있습니다.
사이트 도입을 검토하시는 분들께 유용한 글이 되었으면합니다.
'④ 미들웨어 > ⓙ JEUS' 카테고리의 다른 글
[JEUS] DBPool 동작 방식 (0) | 2018.07.18 |
---|---|
[JEUS] JSP Compile 시 code too large 에러 발생하는 경우 (0) | 2018.07.17 |
[JEUS] ClassLoader(Classloading) 및 Class 동적반영 (2) | 2018.07.09 |
[JEUS] Oracle/Tibero 접속세션 구분 방법 (0) | 2018.07.04 |
[JEUS] Encoding 설정에 따른 출력 Test (2) | 2018.07.03 |
- Total
- Today
- Yesterday
- SWA
- TA
- Architecture
- jeus
- webtob
- SA
- node.js
- k8s
- openstack tenant
- 아키텍처
- apache
- kubernetes
- git
- JEUS7
- 마이크로서비스
- Da
- aws
- JEUS6
- MSA
- nodejs
- 오픈스택
- openstack token issue
- 쿠버네티스
- API Gateway
- JBoss
- 마이크로서비스 아키텍처
- aa
- wildfly
- Docker
- OpenStack
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |