메인 공지사항 기능소개 매뉴얼     TEST BOARD : [1]  [2]  [3]  [4]  [5]
내용없음9
내용없음10
    고객지원
기술지원 및 상담

기능건의, 버그제보

상용 원본소스

패치,수정소스

무료 설치요청



영역별 보안서버 적용
  patch,reform source
패치,수정 소스
[오류패치] [기능개선] [사용환경 변화에 따른 변경소스] 등에 대한 자료입니다.
무료버전, 상용버전 공통적용 파일입니다.

작성일 2008년 9월 21일
분 류 확장
   
영역별 보안서버 적용

 보안서버란

접속자 pc 의 웹부라우저와 웹서버 사이의 데이터 전송을 암호화하여 정보유출을 차단할 수 있는 서버입니다.
즉 전송 내용을 모두 암호화 시켜서  그 암호화된 내용으로 통신을 하는 서버라고 할 수 있겠습니다.
일반적으로 SSL 웹서버 인증서 방식을 사용하며  다른 응용프로그램 방식들도 사용됩니다. 
자세한 설명  http://www.kisia.or.kr/secureserver/index.php  참조



 보안서버 구축

보안서버 구축 방법에 대해서는 여기서 다루지 않겠습니다.
웹호스팅 서비스를 이용하신다면 해당 호스팅 업체에 직접 요청하시면 됩니다.
자체 서버를 운용하신다면 보안서버 전문업체와 상담을 하시기 바랍니다.



 홈페이지내의 보안서버 적용 영역

1, 회원가입
2, 회원로그인
3, 쇼핑몰- 주문서
4, 기타 개인정보가 전송되는 폼양식

보안서버 적용 페이지는 출력속도가 느리므로 꼭 필요한 영역에만 적용하는 것이 좋습니다.


 

 테크노트에 보안서버 적용
 
보안서버가 구축되면 보안 접속을 위한 별도의 URL 형식이 주어 집니다.
보통  https://abcde.co.kr 와 같이  https://도메인 형태로 이뤄 집니다.

테크노트에서 보안서버를 적용하려면 개인정보가 입력된 페이지를 전송할때
이러한 보안서버 접속 URL 형식으로 전송 되도록 해 주면 되는 것입니다.
 




 
이하 설명은

도메인 주소 : http://abcde.co.kr
테크노트 폴더 : http://abcde.co.kr/technote
보안서버 접속형식 : https://abcde.co.kr 

이라고 가정한 설명입니다. 

아래 내용을 모두 적용해 주어야 하는 것은 아니고,
홈페이지 구성 형태에 따라, 사용되거나 사용되지 않는 영역일 것이니
현재 사용하고 있는 영역인 곳만 적용을 해 주면 되겠습니다.

 



 

영역 : 회원관리 스킨의 회원등록 폼
소스 : technote/skin_member/mem_standard/regist_form.php



▨ regist_form.php 소스에서

<img src='<?=$this_skin?>/button/button_write_ok.gif' style='cursor:pointer' border=0 onclick="RegInput_checking()">

태그를 찾아서 바로 윗줄에

<input type=checkbox name=secure_send value=1>보안접속

을 새로 추가합니다. (전송 버튼 이미지 부분입니다.)



▨ 전송 버튼 클릭시 입력값을 체크하는 자바스크립트 부분입니다. (원본 62번줄)
     녹색으로 표시된 코드만 새로 추가해 주면 됩니다.

function RegInput_checking(){
   var MemBerForm=document.MemberRegForm;

   // ....
   // ....
   //.... 

   if(document.MemberRegForm.secure_send.checked==true){ // 보안접속 에 체크한 경우
      document.MemberRegForm.action="https://abcde.co.kr<?=$_SERVER[PHP_SELF]?>";
   }
   else{
      document.MemberRegForm.action="<?=$_SERVER[PHP_SELF]?>";
   }

   MemBerForm.submit(); // 폼 전송
}






 



영역 : 회원관리 스킨의 회원로그인 폼
소스 : technote/skin_member/mem_standard/login_form.php
 

▨ login_form.php  소스에서

<label for='passRM'>비밀번호 기억</label>

태그를 찾아서(원본 73번줄) 바로 아랫줄에

<input type=checkbox name=secure_send value=1>보안접속

태그를 추가합니다. 



▨ 전송 버튼 클릭시 입력값을 체크하는 자바스크립트 부분입니다.
    녹색으로 표시된 코드만 새로 추가해 주면 됩니다.

function inputcheck(){

   if(myloginform.m_id.value==''){
      alert('아이디를 입력하십시오.');
      myloginform.m_id.focus();
      return false;
   }
   if(myloginform.m_pass.value==''){
      alert('비밀번호를 입력하십시오.');
      myloginform.m_pass.focus();
      return false;
   }

   if(document.myloginform.secure_send.checked==true){ // 보안접속 에 체크한 경우
      document.myloginform.action="https://abcde.co.kr<?=$_SERVER[PHP_SELF]?>";
   }
   else{
      document.myloginform.action="<?=$_SERVER[PHP_SELF]?>";
   }


}







 

영역 : iframe 형태의 회원 로그인폼
소스 : technote/util_iframe_loginform.php 


▨ util_iframe_loginform.php  소스에서

<tr>
   <td align=right><input type=checkbox name=rmb_pass value=1<?=$rmb_check?>> </td>
   <td><img src='<?=$CONFIG[img_url]?>/online/text_pass_rmb.gif' border=0></td>
</tr>


위와 같은 태그를 찾아서

<tr>
   <td align=center colspan=2>
      <input type=checkbox name=rmb_pass value=1<?=$rmb_check?>> <img src='<?=$CONFIG[img_url]?>/online/text_pass_rmb.gif' border=0>
      <input type=checkbox name=secure_send value=1>보안접속
   </td>
</tr>


으로 수정합니다



▨ 전송 버튼 클릭시 입력값을 체크하는 자바스크립트 부분입니다.
    녹색으로 표시된 코드만 새로 추가해 주면 됩니다.

function TnTinput_check(FormName){
   if(FormName.m_pass.value==''){
      alert('비밀번호를 입력하십시오.');
      FormName.m_pass.focus();
      return false;
   }

   if(document.TnTLoginForm.secure_send.checked==true){ // 보안접속 에 체크한 경우
      document.TnTLoginForm.action="https://abcde.co.kr/technote/member.php";
   }
   else{
      document.TnTLoginForm.action="member.php";
   }


}






 

영역 : include 형태의 회원 로그인폼
소스 : technote/util_include_loginform.php


▨ util_include_loginform.php  소스에서

<label for='rmb_passid'>비밀번호 기억</label>

위와 같은 태그를 찾아서 바로 아랫줄에

<input type=checkbox name=secure_send value=1>보안접속

태그를 추가합니다.


▨ 전송 버튼 클릭시 입력값을 체크하는 자바스크립트 부분입니다. 
    녹색으로 표시된 코드만 새로 추가해 주면 됩니다.

function TnTtype_check(FormName){
   if(FormName.m_id.value==''){alert('아이디를 입력하십시오.'); FormName.m_id.focus(); return false;}
   if(FormName.m_pass.value==''){alert('비밀번호를 입력하십시오.'); FormName.m_pass.focus(); return false;}

   if(document.TnTLoginForm.secure_send.checked==true){ // 보안접속 에 체크한 경우
      document.TnTLoginForm.action="https://abcde.co.kr/technote/member.php";
   }
   else{
      document.TnTLoginForm.action="member.php";
   }


}






 


영역 : iwindow 레이어 형태 로그인폼
소스 : skin_board/a_standard/iwindow/iwindow_login.php
 


▨ iwindow_login.php 소스에서

<td>&nbsp;</td>
<td colspan=2><input type=checkbox name=rmb_pass id='r_chk' value=1<?=$rmb_check?>> <label for='r_chk'>비밀번호 기억</label></td>


위와 같은 태그를 찾아서

<td colspan=3>
  <input type=checkbox name=rmb_pass id='r_chk' value=1<?=$rmb_check?>> <label for='r_chk'>비밀번호 기억</label>
  <input type=checkbox name=secure_send value=1>보안접속
</td>

으로 수정합니다. 


▨  전송 버튼 클릭시 입력값을 체크하는 자바스크립트 부분입니다.
    녹색으로 표시된 코드만 새로 추가해 주면 됩니다.

function value_check(m_id,m_pass){

   if(m_id.value==''){alert('아이디를 입력하십시오.'); m_id.focus(); return false;}
   if(m_pass.value==''){alert('비밀번호를 입력하십시오,'); m_pass.focus(); return false;}

   if(document.loginPassform.secure_send.checked==true){ // 보안접속 에 체크한 경우
      document.loginPassform.action="https://abcde.co.kr<?=$_SERVER[PHP_SELF]?>";
   }
   else{
      document.loginPassform.action="<?=$_SERVER[PHP_SELF]?>";
   }


}







 


영역 : 쇼핑몰 주문서
소스1 : skin_shop/standard/2_view_order/order_default.php
 (주문서 입력폼)
소스2 : skin_shop/standard/6_public_paper/order_send_after.php (주문서 전송직후 주문내용 확인 페이지)

 

▨ skin_shop/standard/2_view_order/order_default.php 소스에서

    <a onclick="s_od_form_submit()"><img src="<?=$shop_this_skin?>/s_img/button/squar_confirm.gif" border=0></a>

    위와 같은 태그(전송버튼)를 찾아서 바로 윗줄에

    <input type=checkbox name=secure_send value=1>보안접속

    태그를 삽입합니다. 

    다음

     전송 버튼 클릭시 입력값을 체크하는 자바스크립트 부분입니다. 
     녹색으로 표시된 코드만 새로 추가해 주면 됩니다.

    // 전송전 - 입력값 확인
    function s_od_form_submit(){
       ....
       ....
       ....

       if(document.shop_order_form.secure_send.checked==true){ // 보안접속 에 체크한 경우
          document.shop_order_form.action="https://abcde.co.kr<?=$this_url?>";
       }
       else{
          document.shop_order_form.action="<?=$this_url?>";
       }


       this_form.submit();
    }


 

▨ skin_shop/standard/6_public_paper/order_send_after.php 소스에서

    <form name='shop_order_confirm' method=post action="<?=$this_url?>">
 
     를
 
    <form name='shop_order_confirm' method=post
    action="http://abcde.co.kr/technote/board.php?ard=tnshopmain&command=shop&view=6_public_paper">
    와 같이 일반 url 형태로 지정해 줍니다. 다음단계로 이어지는 결제 과정에 https 가 적용되지 않게
    끊어 주기 위합니다.
 


 

 



 기타 지정

-------------------------------------------------------------------------------

보안모드 URL 끊기

* 회원관리설정 - [7-5] 로그인 후 출력될 페이지 URL 
* 회원관리설정 -[7-6] 로그아웃 후 출력될 페이지 URL 
  을 
   http://technote/board.php?board=........ 
   와 같이 http:// url 형식으로 지정해 줍니다. 

* 홈페이지 내에서 메인홈페이지로 링크되는 메뉴 또한    
   http://abcd.co.kr 
  와 같이 http:// url 형식으로 지정해 줍니다. 
  일반적으로 홈페이지 좌 상단에 위치하는 홈페이지 로고에 연결된 링크를 말합니다. 

* 그 외 홈페이지에서 자주 사용하는 대표적 메뉴의 링크를 
   http://abcd.co.kr 
   와 같이 http:// url 형식으로 지정해 줍니다. 

이렇게 해 주는 이유는 
상대경로 형식으로만 링크가 되어 있는 경우, https://  형태의 보안접속 연결 이후의 
상대경로는 계속 https:// 로 적용되기 때문에 이를 끊기 위함입니다. 
https:// 형식이 계속 유지 되어도 문제될 것은 없지만 속도가 많이 느립니다 

 
----------------------------------------------------------------------------------

선택옵션 없애기

위의 보안서버 적용 방법 설명에는 보안접속 적용 여부를 선택하는 체크박스를 삽입하고
체크 여부에 따라 보안접속이 적용되게 했는데 
만약,  체크박스 필요 없이 곧바로 보안서버 적용되게 하려면 
<form .....    action="보안서버 접속형식 url">
과 같이 폼태그를 작성하면 됩니다. 이 경우 자바스크립트 부분도 수정할 필요가 없습니다.

 
----------------------------------------------------------------------------------


포트번호 포함된 URL

보안서버 적용 URL을 https://abcd.co.kr:1443  과 같이 포트번호를 포함해 주어야만 하는 경우라면
회원등록, 게시판 글등록 과정에서 외부입력폼 차단 기능이 동작해 차단될테니 다음과 같이 조치하십시오.
다음중 한가지 방법만 적용하면 됩니다.

1, technote/lib.php  파일에서
   function from_thishome($phpself=""){
   이 줄을 찾아서(750 라인 부근임) 바로 다음 줄에 
   $_SERVER[HTTP_HOST] = preg_replace('/:[0-9]+/','',$_SERVER[HTTP_HOST]);
   을 추가해 주면 됩니다.

2, 회원관리설정에서 '외부등록폼 차단' 을 해제하면 됩니다.

3, 회원등록 페이지에 대한 링크 URL주소에도 포트번호를 포함시키면 됩니다.



       
38 수정   쇼핑몰 : 히든검색어 필드 활용 2016-01-25
37 개선   게시판 → 확장검색 → 범위검색 → 소숫점 적용 2015-08-12
36 패치   익스플로러11 버전 호환 적용하기 2014-03-13
35 개선   도로명 주소 - 우편번호 조회 기능 업데이트 2014-01-03
34 패치   쇼핑몰 섬네일 투명색이 검은 색으로 채워지는 문제 2013-10-14
33 개선   회원포인트 수동 변경시 포인트내역에 표시 2013-01-20
32 변경   장바구니 목록의 중복상품 묶음단위 배송료 합산처리 2012-04-30
31 추가   파일 검색기능 업데이트 2011-07-25
30 패치   DB관리 '파일탐색기' 출력오류 패치 2011-06-07
29 패치   쪽지 답장 쓰기에서 제목 자동입력 안될때 2011-05-13
28 추가   쇼핑몰 : PayPal(페이팔) 결제폼 2010-07-30
27 패치   크롬, 사파리 부라우저에서 오류 메시지 출력시 문제 2010-07-03
26 패치   쇼핑몰 : 주문접수,매출 통계 2010-06-17
25 추가   쇼핑몰 : KCP 결제연동 모듈 AX-HUB 6.0 ESCROW 2010-06-01
24 추가   쇼핑몰 : 상품보관함, 오늘본상품 목록 출력하기 2010-04-22
23 버전업   포인트충전 - 올더게이트 결제모듈 AGSPay v4.0 버전업 2010-04-13
22 버전업   쇼핑몰 : 올더게이트 결제모듈 AGSPay v4.0 버전업 2010-04-12
21 개선   게시판 글쓰기폼 추가생성 부분 수정가능한 파일 2010-03-04
20 변형   쇼핑몰 상품목록 상단에 카테고리 리스트 표시하기 2010-01-12
19 패치   DB관리의 '파일탐색기' 오류 패치 2009-12-23
18 패치   쇼핑몰 카테고리(상품코너) 출력순서 패치 2009-12-19
17 수정   회원 비밀번호 찾기 - 비번힌트, 주민등록번호 제외(주민번호관련) 2009-09-25
16 개선   접속통계 기록 정리하여 출력속도 올리기 2009-07-30
15 패치   주문자 선택옵션 가격이 실시간 변경되지 않는 경우 2009-07-29
14 패치   쇼핑몰 장바구니 포켓에서 삭제 아이콘 클릭시 오류 2009-04-22
13 패치   IIS + PHP 5.2.3 + MySQL 5.0.45 서버에서 쇼핑몰 생성 실패시 2009-04-22
12 수정   회원등록시 우편번호 형식 검사과정 제거한 소스 2009-03-04
11 패치   본문펼침 출력시 php5x 서버환경에서 오류메시지 2008-11-18
10 추가   댓글에 파일첨부 기능 추가 2008-11-17
9 패치   UTF-8 인코딩버전에서 스팸차단 경고메시지 깨지는 버그수정 2008-10-31
8 개선   회원 탈퇴해도 포인트내역, 쪽지, 스크랩 보존되게 2008-10-22
7 확장   영역별 보안서버 적용 2008-09-21
6 변경   쇼핑몰 결제모듈 -> 올더게이트 -> 이지스에스크로 적용 2008-09-21
5 수정   하위 관리자의 회원레벨 수정권한 제한 2008-09-21
4 변경   쇼핑몰 결제모듈 -> 페이게이트 신용카드 할부옵션 활성화 2008-09-21
3 패치   외부 파일 include 차단 [보안패치] 2008-09-21
2 추가   외부 php 파일에서 테크노트 내부 변수를 사용코자 할때 2008-08-05
1 패치   장바구니 담기에서 에러날때 2008-04-02
1