javascript

우클릭 방지 및 F12 방지 (feat.개발자 도구 막기???!)

hunecenter 2022. 2. 3. 11:20
반응형

[개발자 도구 막기]

고객 요청에 의해 개발자 도구를 막고 싶어하는 곳도 있긴한데 사실상 이게 의미가 있나 싶은 생각이들지만 방법이 있나 찾아는 봤다. 현재 은행권 및 증권쪽에서 사용하는 걸 보면 개발자 도구 차단은 'AhnLab Safe Transaction'이라는 보안 프로그램이 동작하는 상태에서 개발자도구를 실행하게 되면 보안 프로그램이 차단하여 자동으로 꺼지는걸 확인했다.

 

[소스]

//2022-02-03 (F12 및 우클릭 방지)
$(function(){
	//마우스 우클릭을 했을때 브라우저 기본 이벤트 제어 (우클릭 방지)
	if (window.addEventListener) {
		window.addEventListener('contextmenu', function(e) { try { if (typeof e != 'undefined') { e.preventDefault(); return false; } else { return false; }} catch(e) {} } , false);
	} else {
		window.attachEvent('oncontextmenu', function(e) { try { if (typeof e != 'undefined') { e.preventDefault(); return false; } else { return false; }} catch(e) {} } );
	}
	var handlemouseEvent = function(e) {
		try {
			if (typeof e == 'undefined') {
				if (window.event.button && window.event.button == "2") {
					return false;
				}
			} else if ((e.which && e.which == 3) || (e.button && e.button == 2)) {
				e.preventDefault();
				return false;
			} else if (e.keyCode == 123) { //F12방지
				e.preventDefault();
				return false;
			}
		} catch (e) {}
	};
	window.onkeydown = handlemouseEvent;
	window.onkeyup = handlemouseEvent; 
});

[참고]

- 개발자 도구

https://bustar.tistory.com/218

 

크롬 개발자도구 꺼짐현상 해결방법(보안프로그램)

크롬 브라우저에서 제공하는 기능중 유용한 개발자도구가 있습니다. 개발자도구를 통해서 어떤부분에서 에러가 나는지, 코드가 잘 작동하는지, 새로운 css를 적용해보기도 하고 여러가지 재미

bustar.tistory.com

 

- MouseEvent.button

https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button

 

MouseEvent.button - Web APIs | MDN

The MouseEvent.button read-only property indicates which button was pressed on the mouse to trigger the event.

developer.mozilla.org

- Event.preventDefault()

https://developer.mozilla.org/ko/docs/Web/API/Event/preventDefault

 

Event.preventDefault() - Web API | MDN

Event 인터페이스의 preventDefault() 메서드는 어떤 이벤트를 명시적으로 처리하지 않은 경우, 해당 이벤트에 대한 사용자 에이전트의 기본 동작을 실행하지 않도록 지정합니다.

developer.mozilla.org

 

반응형