본문으로 바로가기
반응형

■ Oracle 12C 이상 접속 시도시 에러

 오류 코드 : ORA-28040 / ORA-01071

 

 

ERROR CODE ERROR 내용 한글
ORA-28040 No matching authentication
protocol erro
 일치하는 인증 프로토콜 없음
ORA-01017 Invalid username/password;
logon denie
USERNAME , PASSWORD
부적함, 로그인 불가

 

Oracle 12C 버전 이후 알파벳의 대소문자 구별 및 오라클 접속 인증 프로토콜 버전(암호화 포함) 에  따라서,

Client 에서 Oracle 서버로 접속시 해당 오류와 함께 접속이 되지 않는 경우가 있습니다.

 

접속 인증 프로토콜 : authentication protocol 

 

프로토콜 버전에 따라 접속이 안되는 현상은 아래, SQLNET.ORA 의 호환성 설정을 통해 접속이 가능합니다.

 

■ SQLNET.ORA 파일에 구문을 추가하여, 암호화 버전 호환성을 늘리는 방법

■ Oracle 12C 이상의 암호화 API를 사용하여, 암호화를 다시 진행하는 방법

 

 

호환성 설정을 추가하여, 사용이 가능하나, 강제로 Oracle의 정책을 낮춰버리는 설정이라서,

각 맡고 계신 DB서버 마다, 정책을 확인 하시고 진행 하시기 바랍니다.

 

 

■ SQLNET.ORA 환경 파일 수정

 

PATH : $ORACLE_HOME/network/admin/sqlnet.ora

 

vi $ORACLE_HOME/network/admin/sqlnet.ora

 NAME.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME, EZCONNECT)
 SQLNET.ALLOWED_LOGON_VERSION_SERVER=11
 SQLNET.ALLOWED_LOGON_VERSION_CLIENT=11

 

저의 경우에도 회사의 제품이 11g 기반으로 구성되어 있어, 위와 같이 설정 하였습니다.

사용하시는 분의 각 상황에 맞춰 버전의 호환성을 조절할 수 있습니다.

 

위의 설정 이후에도,  ORA-01017 invalid username/password; logon denie 오류가 발생 할수 있으며,

이 오류는 기존에 생성된 계정의 패스워드가 아직 수정이 안된 상태로 남아 있기 때문입니다.

 

아래와 같이 계정의 패스워드를 재설정하고 접속을 시도하면 정상적으로 접속이 되는 것을 확인 하실 수 있습니다.

 

 

 

계정 패스워드 변경

 

SQLPLUS
SQL> ALTER USER 계정명 IDENTIFIED BY 패스워드;

 

 

많은 도움 되시길 바랍니다.