2017-02-21 2 views
0

나는 을 사용하여 MySQL 오류 번호를 보내고 사용자에게 의 '이 코드가 계속되면이 오류가 발생하면이 코드를 [email protected]으로 보내주십시오.'라는 메시지를 보냈습니다.mysqli_errno가 안전하다고 여겨지는 일반 사용자를 표시합니까?

mysqli_error() 메시지를 오류 페이지에 던지는 방법을 보여주는 교훈을 보았지만 사용자가 설명 텍스트 (코드) 만 보지 못하도록하고 싶습니다.

안전한가요?

은 내 사이트의 보안을 위협하지 않는 MySQL 오류 코드를 표시합니까?

문제를 해결하기 위해 오류 코드의 이점을 얻고 싶습니다. 다른 기술을 제안합니까?

+0

안전하지 않거나 전혀 사용하지 않습니다. 귀하의 사용자가 귀하의 코드베이스를 디버그하거나 서버를 수정할 수 없습니다 :) –

+0

@ ÁlvaroGonzález 감사합니다, 그들은,하지만 난 도움이 될 줄 알았는데 :) – malozaibi

답변

0

하지 마십시오. 서버의 인프라 세부 정보를 공개하는 것은 보안 결함입니다. 침입자가 여러분이 mysql을 사용하고 있음을 알고 있다면 그들은 mysql 공격을 시도 할 수 있습니다. 이 정보를 비공개로 유지하는 것이 가장 좋습니다.

오류 로그를 읽으려면 로그온 할 수있는 클라이언트 용 서비스 인터페이스를 만들어야합니다. 각 오류 (guid)에 대해 고유 한 ID를 생성하고 동일한 GUID를 사용하여 데이터베이스에 오류를 저장할 수 있습니다. 그런 다음 guid를 클라이언트 (예 : 헤더)에 반환 할 수 있습니다. 귀하의 고객은 이것을 잡아 당겨 귀하의 관리/오류 서비스를 사용하여 해당 ID와 관련된 오류를 데이터베이스에 문의 할 수 있습니다.

나는이 소리가 복잡하다는 것을 알고 있지만, 보안은 복잡하다. 이를 단순화하는 방법이 있습니다. 예를 들어 COTS 도구는 기본적으로이 패턴을 따릅니다.

+0

경고 주셔서 감사합니다. 나는 그것을하지 않을 것이다. 더 나은 해결책을 모르는가? – malozaibi

+0

답변의 일부로 응답했습니다. 더 좋을 것이라고 제안 해 주셔서 감사합니다. –

+0

고맙습니다. 저는 초보자 인 분이 십니다. 그러나 앞으로 내 기술을 향상 시키려고합니다. – malozaibi