본문 바로가기
Data & Programming/Oracle

[오라클-오류] ORA-28040: No matching authentication protocol (일치하는 인증 프로토콜이 없습니다)

by 눈부셔™ 2023. 9. 5.
728x90

[Oracle-오류] ORA-28040: No matching authentication protocol (일치하는 인증 프로토콜이 없습니다)

오라클 오류코드인 ORA-28040 오류는 오라클 데이터베이스와 클라이언트 애플리케이션 간의 인증 프로토콜의 호환성 문제로 발생하는 오류입니다. 이 오류는 보안 강화 및 암호화 요구사항을 충족하기 위해 오라클 데이터베이스가 최신 보안 프로토콜을 사용하도록 설정되었지만, 클라이언트 애플리케이션이 이를 지원하지 않거나 설정되지 않은 경우에 이 오류가 나타납니다.

ORA-28040: No matching authentication protocol

오류 원인

ORA-28040 오류가 발생하는 주요 원인은 다음과 같습니다.

  • 클라이언트 버전 문제: 주로 Oracle Server와 Client의 버전 차이 때문에 발생합니다. 특히, Oracle 12c부터 이 오류가 발생하기 시작했습니다.
  • 보안 설정: 데이터베이스가 더 강력한 보안 프로토콜을 요구하고 클라이언트가 이를 지원하지 않는 경우 발생할 수 있습니다.
  • 암호화 설정: 데이터베이스에서 SSL 또는 TLS와 같은 암호화를 요구하고 클라이언트가 이를 사용하지 않는 경우 이 오류가 나타날 수 있습니다.

 

오류 해결

ORA-28040 오류를 해결하기 위해서는 다음과 같은 단계를 따를 수 있습니다.

  • SQLNET 파리미터 변경

       1. SQLNET 파라미터 (SQLNET.ALLOWED_LOGON_VERSION) 값을 수정합니다.

          이를 위해 $ORACLE_HOME/network/admin/sqlnet.ora 파일을 수정하고, 하위 내용을 추가합니다.

1
2
3
--클라이언트 버전에 맞게 수정
SQLNET.ALLOWED_LOGON_VERSION_SERVER=11
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=11

        2. Oracle listener를 재시작합니다.

        3. ojdbc6.jar 또는 ojdbc7.jar로 파일 버전을 변경합니다.

          예를 들어, Oracle Server 버전이 12cR1 이상이고, 개발자의 PC 클라이언트 버전이 11gR2 이하인 경우 (참고로 11.2.0.4.0 버전인 경우는 미해당 사항임) 이 오류가 발생할 수 있습니다. 이 경우, 위에서 설명한 방법으로 해결할 수 있습니다.

  • 클라이언트 업데이트: 클라이언트 애플리케이션을 최신 버전으로 업데이트하십시오. 최신 버전은 더 안전한 보안 프로토콜을 지원할 가능성이 높습니다.
  • 보안 설정 확인: 데이터베이스의 보안 요구 사항을 확인하고, 클라이언트 설정을 이에 맞게 구성하십시오.
  • 암호화 활성화: 데이터베이스가 암호화를 필요로 하는 경우, 클라이언트 애플리케이션에서 SSL 또는 TLS와 같은 암호화를 활성화하십시오.

 

실제 예시

1
2
3
SQL> CONNECT username/password@db_connection
ERROR:
ORA-28040: No matching authentication protocol

이 예제에서는 "username"과 "password"로 데이터베이스에 연결하려고 했지만, 인증 프로토콜이 일치하지 않아 ORA-28040 오류가 발생했습니다.

 

결론

ORA-28040: No matching authentication protocol 오류는 클라이언트 또는 서버에 허용되는 인증 프로토콜이 없을 때 발생하는 오류입니다. 이 오류는 주로 Oracle Server와 Client의 버전 차이 때문에 발생하며, SQLNET 파라미터 값을 수정하거나, 파일 버전을 변경함으로써 해결할 수 있습니다.

 

 

 

#Oracle  #오라클  #오라클 오류코드  #ORA-28040  #인증프로토콜  #SQLNET파라미터  #버전차이  #해결방안  #Troubleshooting  #보안

728x90