2013-03-21 2 views
0

jdbc를 사용하여 외부 sql 데이터베이스에 연결하는 Java 응용 프로그램이 있습니다. 4. 준비된 명령문을 사용하여 데이터베이스에서 데이터를 선택하고 업데이트를 보냅니다. 데이터베이스와 응용 프로그램간에 전송되는 데이터를 암호화 된 것으로 분류 할 수 있습니까? 아니면 응용 프로그램을 암호화해야합니까?Java Prepared Statements를 사용하여 jdbc를 통해 전송 된 데이터를 암호화 된 것으로 분류 할 수 있습니까?

답변

2

아니요, PreparedStatement는 암호화와 동일하지 않습니다. (당신이 그것을 요구할 수 있다면 더 좋지만, 나의 친숙 함은 mysql이 아닌 postgresql을 사용한다) SSL을 서버에 설치하고 인증서와 개인 키를 설정해야한다. 그런 다음 응용 프로그램에 SSL을 사용하고 서버에 속한 인증서를 수락하도록 지시해야합니다.

전송 중 SSL 및 암호화는 유용하지만 데이터베이스에 대한 액세스 권한을 가진 공격자로부터 데이터를 보호하지 않습니다.


ps. 대부분 ServerFault 일 가능성이 높습니다. mysql을 설정하는 방법에 관한 답변을 얻을 수있는 가장 좋은 자료가 될 것입니다. 에서 팔로우


편집 : 초기 연결에서 자격 증명 the documentation에 따르면 확보하고 있습니다.

+0

그래서 응용 프로그램이 데이터베이스에 대한 초기 연결을 생성 할 때 (db name, u/n, p/w) 누군가가 ssl없이 그것들을보고 있다면 쉽게 알아낼 수 있습니다. ? – kbbucks

+0

정보를 주셔서 감사합니다. ServerFault 사이트를 살펴 보겠습니다. – kbbucks

관련 문제