2023년 9월 13일

출처:

https://github.com/313DEVGRP/Java-Service-Tree-Framework-Backend-Core

npm install grunt-cli --save-dev --force
npm install grunt --save-dev npm install grunt-contrib-concat --save-dev --force
npm install grunt-serve --save-dev --force
npm install grunt-contrib-less --save-dev  --force
npm install grunt-contrib-watch --save-dev  --force
npm install grunt-contrib-uglify --save-dev  --force
npm install grunt-includes --save-dev  --force
npm install grunt-image --save-dev --force
npm install grunt-contrib-jshint --save-dev  --force
npm install grunt-jscs --save-dev  --force
npm install grunt-contrib-clean --save-dev  --force
npm install grunt-contrib-csslint --save-dev  --force
npm install grunt-bootlint --save-dev  --force
npm install grunt-notify --save-dev  --force
npm install grunt-text-replace --save-dev  --force
npm install grunt-contrib-connect --save-dev  --force
npm install grunt-connect-proxy --save-dev  --force
npm install serve-static --save-dev  --force
npm install grunt-contrib-compass --save-dev --force
npm install --save-dev --save-exact prettier --force

pdService 제품서비스 등록 관리 페이지 접속 순서(reference 제외)

number Method URL
1 GET http://localhost:9999/arms/template.html?page=pdService
2 GET http://localhost:9999/arms/css/override.css
http://localhost:9999/arms/js/common.js
http://localhost:9999/arms/js/common/dwrChat.js
http://localhost:9999/arms/img/topicon.gif
http://localhost:9999/arms/dwr/engine.js
http://localhost:9999/arms/dwr/interface/Chat.js
http://localhost:9999/arms/dwr/util.js
3 GET http://localhost:9999/auth-user/me
4 GET http://localhost:9999/oauth2/authorization/middle-proxy
5 GET http://www.313.co.kr/auth/realms/master/protocol/openid-connect/auth?response_type=code&client_id={클라이언트 아이디}&scope=openid&state={state 값}&redirect_uri=http://localhost:9999/login/oauth2/code/middle-proxy&nonce={nonce 값}
6 POST http://www.313.co.kr/auth/realms/master/login-actions/authenticate?session_code={sesssion code 값}&execution={excution}&client_id={클라이언트 아이디}&tab_id={tab 아이디}
7 GET http://localhost:9999/login/oauth2/code/middle-proxy?state={state 값}&session_state={session_state 값}&code={oauth2 code}
8 GET http://localhost:9999/arms/template.html?page=pdService
http://localhost:9999/arms/css/override.css
http://localhost:9999/arms/js/common.js
http://localhost:9999/arms/js/common/dwrChat.js
http://localhost:9999/arms/img/topicon.gif
9 GET http://localhost:9999/auth-user/me
10 GET http://localhost:9999/arms/html/template/page-logo.html
http://localhost:9999/arms/html/template/page-sidebar.html
http://localhost:9999/arms/html/template/page-header.html
http://localhost:9999/arms/html/pdServiceJira/content-header.html
http://localhost:9999/arms/html/pdServiceJira/content-container.html
http://localhost:9999/arms/html/template/content-footer.html
http://localhost:9999/arms/js/pdServiceJira.js?_=1694572274829
http://localhost:9999/arms/img/313_logo.png
11 POST http://localhost:9999/dwr/call/plaincall/__System.generateId.dwr
http://localhost:9999/dwr/call/plainpoll/ReverseAjax.dwr
http://localhost:9999/dwr/call/plaincall/Chat.login.dwr
12 GET http://localhost:9999/arms/img/jira/mark-gradient-neutral-jira.svg
http://localhost:9999/arms/img/jira/mark-gradient-white-jira.svg
http://localhost:9999/arms/img/loading.gif
13 GET http://localhost:9999/auth-user/api/arms/pdServicePure/getPdServiceMonitor.do?_=1694586233799
  1. front에서 template.html로 이동하며 page=pdService를 통해 지라 연결 관리 페이지를 로드

  2. css, js, img 로드

  3. common.js에서 미들 프록시로 /auth-user/me 호출(모든 api 호출 전 공통 호출 예상)

  4. 미들 프록시 SecurityWebFilterChain 설정에 의해서 인증되지 않아 401로 돌아올 시 호출

  5. 위에 의해서 리다이렌션된 Keycloak 로그인 페이지 - 로그인 과정 진행

  6. 로그인 정보를 가지고 키클락에 인증 요청

  7. 키클락 로그인 후 인증 코드 교환을 위한 엔드 포인트로 리다이렉션

  8. 1번~2번에서 최초에 접근할려고 했던 페이지로 다시 호출하며 걸쳤던 과정 다시 진행

  9. 3번 과정을 통해 다시 /auth-user/me 접근