mirror of
http://git.mhez-qa.uplus.co.kr/hubez/hubez-admin.git
synced 2025-12-07 01:04:20 +09:00
웹취약점, 모의해킹 조치
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
import Vue from 'vue';
|
||||
import Router from 'vue-router';
|
||||
import store from './store'
|
||||
//import login from '@/modules/login/store/index'
|
||||
import tokenSvc from '@/common/token-service';
|
||||
|
||||
import HubwebLayout from './views/HubwebLayout.vue';
|
||||
@@ -20,8 +19,6 @@ import profileRoutes from './modules/sendNumMgt/router';
|
||||
import mntrngRoutes from './modules/mntrng/router';
|
||||
import riskmgtRoutes from './modules/riskMgt/router';
|
||||
import monthRoutes from './modules/stats/router';
|
||||
// import channelList from './modules/attractMgt/views/ChannelList';
|
||||
|
||||
|
||||
Vue.use(Router)
|
||||
|
||||
@@ -33,18 +30,14 @@ const router = new Router({
|
||||
path: '/',
|
||||
component: HubwebLayout,
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
component: subsList
|
||||
},
|
||||
// {
|
||||
// path: '/attractMgt/views',
|
||||
// component: channelList
|
||||
// },
|
||||
{
|
||||
path: '',
|
||||
component: subsList
|
||||
},
|
||||
{
|
||||
path: '/view/error/404',
|
||||
component: () => import('./views/ErrorPage404.vue'),
|
||||
meta: { public: true }
|
||||
meta: { public: false }
|
||||
},
|
||||
{
|
||||
path: '/view/error/500',
|
||||
@@ -62,46 +55,120 @@ const router = new Router({
|
||||
...mntrngRoutes,
|
||||
...riskmgtRoutes,
|
||||
...monthRoutes,
|
||||
//{path: '*', name: 'error404'}
|
||||
]
|
||||
},
|
||||
{path: '*', redirect: '/view/error/404'}
|
||||
//{path: '*', redirect: '/view/error/404'}
|
||||
|
||||
]
|
||||
});
|
||||
|
||||
|
||||
router.beforeEach((to, from, next) => {
|
||||
const isPublic = to.matched.some(record => record.meta.public);
|
||||
const loggedIn = !!tokenSvc.getToken();
|
||||
|
||||
if (!isPublic && !loggedIn) {
|
||||
return next('/login');
|
||||
}else{
|
||||
var nextUrl = to.fullPath;
|
||||
var fromUrl = from.fullPath;
|
||||
if(nextUrl == '/'){
|
||||
console.log(store.getters);
|
||||
const rootUrl = store.getters['login/getRootUrl'];
|
||||
if(rootUrl == null){
|
||||
return next('/login');
|
||||
}
|
||||
return next(rootUrl);
|
||||
}else if(nextUrl == '/view/login/auth'){
|
||||
if(fromUrl != '/login'){
|
||||
return next('/login');
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
var fromUrl = from.fullPath;
|
||||
var menuUrls = store.getters['login/getMenuUrls'];
|
||||
if(menuUrls.length > 0){
|
||||
|
||||
var moveFlag = false;
|
||||
for(var i=0; i<menuUrls.length; i++){
|
||||
var targetUrl = menuUrls[i];
|
||||
if(nextUrl == targetUrl){
|
||||
moveFlag = true;
|
||||
}
|
||||
}
|
||||
if((nextUrl == '/custMgt/memberList') || (nextUrl == '/custMgt/memberDetail')
|
||||
|| (nextUrl == '/custMgt/subsDetail') || (nextUrl == '/custMgt/memberAdminDetail')){
|
||||
|
||||
for(var i=0; i<menuUrls.length; i++){
|
||||
if(menuUrls[i] == '/custMgt/subsList'){
|
||||
moveFlag = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
// url Check 유치채널
|
||||
if((nextUrl == '/attractMgt/channelDetail')){
|
||||
for(var i=0; i<menuUrls.length; i++){
|
||||
if(menuUrls[i] == '/attractMgt/channelList'){
|
||||
moveFlag = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
// url Check 날짜별 통계
|
||||
if((nextUrl == '/stats/dayList')){
|
||||
for(var i=0; i<menuUrls.length; i++){
|
||||
if(menuUrls[i] == '/stats/monthList'){
|
||||
moveFlag = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
// url Check 사업자별 통계
|
||||
if((nextUrl == '/stats/bsnmDayList')){
|
||||
for(var i=0; i<menuUrls.length; i++){
|
||||
if(menuUrls[i] == '/stats/bsnmMonthList'){
|
||||
moveFlag = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
// url Check 권한 관리
|
||||
if((nextUrl == '/sysMgt/authAdd') || (nextUrl == '/sysMgt/authModify')){
|
||||
for(var i=0; i<menuUrls.length; i++){
|
||||
if(menuUrls[i] == '/sysMgt/authList'){
|
||||
moveFlag = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(!moveFlag){
|
||||
if((fromUrl == '/login') || (fromUrl == '/view/login/auth') || (fromUrl == '/view/login/resetPassword')
|
||||
|| (fromUrl == '/view/login/updatePassword')){
|
||||
return next('/login');
|
||||
}
|
||||
store.commit("login/saveBeforeUrl", fromUrl);
|
||||
return next('/view/error/404');
|
||||
}
|
||||
if((nextUrl == '/view/login/auth') || (nextUrl == '/view/login/resetPassword')
|
||||
|| (nextUrl == '/view/login/updatePassword')
|
||||
){
|
||||
if(fromUrl != '/login'){
|
||||
return next('/login');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(nextUrl == '/'){
|
||||
console.log(store.getters);
|
||||
const rootUrl = store.getters['login/getRootUrl'];
|
||||
console.log('rootUrl ',rootUrl);
|
||||
if(rootUrl == null){
|
||||
return next('/login');
|
||||
}
|
||||
return next(rootUrl);
|
||||
}
|
||||
|
||||
if(nextUrl == '/login' && loggedIn){
|
||||
const rootUrl = store.getters['login/getRootUrl'];
|
||||
if(rootUrl == null){
|
||||
return next('/login');
|
||||
}
|
||||
return next(rootUrl);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
to.matched.some(record => {
|
||||
if (record.meta.usingSearchCondition) {
|
||||
const shareList = record.meta.shareList;
|
||||
if (from.name && shareList && shareList.includes(from.name)) {
|
||||
// shareList에 포함되어 있는 라우터에서 온 경우 검색 조건을 유지한다.
|
||||
// console.log("패밀리");
|
||||
} else {
|
||||
// 그 외의 경우 검색 조건 초기화
|
||||
store.commit("searchcondition/updateSearchCondition", null);
|
||||
// console.log("낫패밀리");
|
||||
}
|
||||
}
|
||||
next();
|
||||
|
||||
Reference in New Issue
Block a user