더북(TheBook)

메일 전송을 위한 사전준비 사항

오라클 11g2 버전 이전에서는 UTL_SMTP, UTL_MAIL 패키지를 사용하는데 있어 아무런 문제가 없었다. 하지만 11g2 버전부터는 보안이 강화돼 UTL_SMTP, UTL_MAIL, UTL_TCP, UTL_HTTP 등 네트워크 통신과 관련된 시스템 패키지를 사용하려면 별도로 ACL(Access Control List)이란 것을 만들어 놔야 한다. ACL을 만드는 이유는 악의적인 해커가 오라클 DB에 침투해 이런 시스템 패키지를 이용해 외부로 이메일 전송, 외부 사이트 접속 및 공격을 할 수 있으므로 사전에 ACL에 등록된 사용자만 이런 시스템 패키지를 이용할 수 있게 하기 위해서다. 만약 ACL에 등록되지 않은 사용자가 UTL_SMPT 등의 패키지를 이용해 메일 전송을 시도하면 “ORA-24247: 네트워크 액세스가 ACL(액세스 제어 목록)에 의해 거부되었습니다.” 오류가 발생한다.

그럼 ACL 등록은 어떻게 하는 것일까? 이 역시 DBMS_NETWORK_ACL_ADMIN이라는 시스템 패키지를 이용해 등록할 수 있다. 먼저 이 패키지의 주요 서브 프로그램에 대해 알아보도록 하자.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.