에디터 로컬호스트의 TLS/SSL 오류가 무시되도록 활성화하는 방법.
페이지 정보
본문
안녕하세요. 엔지엠소프트웨어입니다. 웹업무 자동화를 만들다보면 다양한 환경에서 인증을 처리해야 합니다. 대부분의 경우 문제없이 자동화를 만들 수 있지만, 예민한(?) 사이트의 경우 여러가지 방법으로 접속을 우회해야 합니다. 대표적으로 로컬호스트에서 key 파일과 certificate를 처리할 때 https에서 문제가 됩니다. 로컬호스트에서 API를 테스트할 때도 동일한 문제가 발생합니다. react나 angular를 사용하면 자주 볼 수 있긴 합니다.
- HTTPS: Hypertext Transfer Protocol Secure
- TLS: Transport Layer Security
- SSL: Secure Sockets Layer
간단하게 HTTPS 프로토콜을 사용하면 서버와 클라이언트간 키파일 인증서를 주고 받게됩니다. 이 때 사용되는 프로토콜이 TLS이고, 인증서는 SSL을 사용합니다. SSL은 공인인증기관에서 발급 받을 수 있습니다. 물론, 유료입니다. 엔터프라이즈급 웹앱을 개발할 때 인증서를 미리 살 필요는 없습니다. 환경에 따라 다르지만 로컬에서 key 파일을 생성해서 통과 시키면 됩니다. 아무튼, 자세한 기술적인 내용은 뒤로 하고, 웹앱이나 슬롯 또는 테니스 매크로, 캠핑 매크로등등... 다양한 곳에서 응용할 수 있습니다.
실제 슬롯이나 테니스, 골프와 같은 선착순 매크로에서 Selenium(셀레니움)을 사용하지는 않습니다. 다른 여러가지 기술들이 필요합니다. 하지만, 기본적으로 동작 방식은 비슷하다고 할 수 있습니다. 이 글의 제목과 같이 로컬호스트(localhost)에서 https로 데이타를 요청할 때 TLS/SSL 오류가 발생하는데요. 이 문제를 우회하려면 크롬 웹브라우저를 실행할 때 아래 옵션을 추가해야 합니다.
--allow-insecure-localhost
엔지엠 매크로 에디터를 실행하고, 새로운 스크립트를 하나 추가하세요.
웹 API의 [ 연결 ] 액션을 추가하세요.
웹브라우저 옵션을 클릭하면 크롬 또는 엣지 브라우저에 옵션을 추가할 수 있습니다.
위 방식은 셀레니움을 기반으로 웹앱 자동화를 만들 수 있습니다. 다양한 문제를 해결하기 위한 옵션들이 더 많지만, 기본적인 내용은 위와 같이 처리할 수 있습니다. 참고로, 캐시(Cache)를 모두 삭제하고 깨끗한 상태의 브라우저에서 작업하려면 CMD를 이용해야 합니다. 위에 추가한 연결 액션을 삭제하고 커멘드 액션을 추가하세요.
[ 커멘드 ] 액션에 아래와 같이 설정하세요.
- 프로세스 이름: C:\Program Files\Google\Chrome\Application\chrome.exe
- 파라메터: --allow-insecure-localhost
크롬 웹브라우저가 실행되는데요. 이 상태로는 정상적으로 적용이 되었는지 확인하기가 어렵습니다. 정상적으로 옵션이 추가되었는지 확인하기 위해 [ 커멘드 라인 확인 방법 ]을 참고하셔서 테스트 해보세요. 이 옵션을 사용하면 구글 광고를 비롯해서 차단등등... 몇가지가 표시되지 않습니다.
개발자에게 후원하기
추천, 구독, 홍보 꼭~ 부탁드립니다.
여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~
감사합니다~
- 이전글셀레니움(Selenium)을 사용하지 않고, 웹앱 자동화 하는 방법. (탭 세션 가져오기) 23.10.17
- 다음글원도우 프로그램 커멘드 라인 내용 가져오는 방법. 23.10.16
댓글목록
등록된 댓글이 없습니다.