AWS Glue에서 test-connection 기능 또는 Glue Crawler를 실행해 Amazon Relational Database Service PostgreSQL(Amazon RDS for PostgreSQL) 버전 14 이상과의 연결을 테스트하려고 합니다. 하지만 ‘The Authentication type 10 is not supported’ 오류가 발생합니다.
간략한 설명
이 오류는 다음과 같은 이유로 발생할 수 있습니다.
- Glue 연결이 있는 AWS Glue 크롤러로 데이터베이스를 크롤링했습니다.
- AWS Glue의 test-connection 기능을 사용해 연결을 테스트했습니다.
서버에서 SCRAM 인증 해싱을 사용하는 경우, PostgreSQL JDBC 드라이버 버전이 42.2 이상이어야 합니다. PostgreSQL 13.x 이전 버전은 기본적으로 md5 암호화를 사용하지만, PostgreSQL 14.x 이후 버전은 기본적으로 scram-sha-256 암호화를 사용합니다. AWS Glue의 네이티브 test-connection 및 크롤러에 사용되는 JDBC 드라이버가 scram-sha-256 암호화의 버전 요구 사항과 일치하지 않습니다.
그 결과 다음과 같은 오류가 발생합니다.
‘Authentication type 10 is not supported.’
해결 방법
이 문제는 데이터베이스의 암호화 방법이 scram-sha-256로 설정된 경우 발생할 수 있습니다.
암호화 유형 확인
데이터베이스의 암호화 유형을 확인하려면 소스 데이터베이스에서 다음 명령을 실행하십시오.
show password_encryption
사용 사례를 확인하고, 아래 표시되는 관련 섹션의 단계를 따라 오류를 해결합니다.
옵션 1: 암호화 유형을 변경하지 않고 연결 만들기
데이터베이스의 암호화 유형을 변경하지 않으려면 크롤러에 대하여 자체 사용자 지정 JDBC 드라이버를 사용해 연결합니다.
참고: test-connection 기능은 사용자 지정 드라이버에서는 지원되지 않습니다. 사용자 지정 JDBC 드라이버는 데이터 소스 전체를 크롤링하면서 테스트 연결을 건너뜁니다.
데이터베이스를 크롤링하지 않고 AWS Glue 작업의 연결을 사용하려면 사용자 지정 JDBC 드라이버를 사용하지 마십시오. AWS Glue 3.0 및 4.0은 JDBC 드라이버 42.2 이후 버전을 사용하기 때문입니다. 대신, 올바른 작업 구성을 사용해 AWS Glue 작업을 실행해 데이터베이스에 연결되도록 하십시오.
옵션 2: 암호화 유형을 변경하여 연결 만들기
사용자 지정 JDBC 드라이버를 사용하거나 AWS Glue의 test-connection 기능을 사용하는 방안을 원하지 않을 수 있습니다. 이런 경우, Amazon RDS for PostgreSQL 인스턴스가 scram-sha-256 해시 대신 md5 해시를 사용하도록 업데이트하십시오. 해시를 업데이트하려면 아래 표시되는 단계를 따릅니다.
md5 암호화를 사용해 새 DB 클러스터 파라미터 그룹 만들기
RDS for PostgreSQL 인스턴스에 md5 해시를 포함하도록 업데이트하려면 다음 단계를 완료하십시오.
- Amazon Aurora 및 RDS 콘솔로 이동합니다.
- 왼쪽 탐색 창에서 파라미터 그룹을 선택합니다.
- 파라미터 그룹 만들기를 선택합니다.
- 파라미터 그룹 이름에서 이름을 입력합니다.
- 사용자 지정 파라미터 그룹에 대한 설명을 추가합니다.
- 엔진 유형에서 PostgreSQL을 선택합니다.
- 파라미터 그룹 패밀리에서 해당하는 PostgreSQL 데이터베이스의 버전을 선택합니다. 예를 들어 postgres14를 선택합니다.
- 유형에서 DB 클러스터 파라미터 그룹을 선택합니다.
- 그런 다음, 만들기를 선택합니다.
- 앞서 만든 사용자 지정 파라미터 그룹을 선택합니다.
- 작업을 선택합니다. 그런 다음, 드롭다운 목록에서 편집을 선택합니다.
- 파라미터 password_encryption을 값 md5로 편집합니다. 변경 사항 저장을 선택합니다.
그룹을 DB 클러스터에 추가
다음 단계를 완료하십시오.
- Aurora 및 RDS 콘솔을 엽니다.
- 왼쪽 탐색 창에서 데이터베이스를 선택합니다.
- 해당하는 Postgre 데이터베이스를 선택합니다.
- 그런 다음 수정을 선택합니다.
- 데이터베이스 옵션의 **추가 구성 **드롭다운 목록에서 새로 만든 md5 DB 클러스터 파라미터 그룹을 선택합니다.
- 계속을 선택한 다음, 즉시 적용을 선택합니다.
- 변경 사항을 적용하려면 DB 인스턴스 수정을 선택합니다.
암호 변경
클러스터의 암호화 유형을 변경한 이후에는 암호를 편집하여 새 암호화를 저장해야 합니다.
참고: 암호는 이전과 동일해도 되지만, 업데이트하여 암호가 md5로 암호화되도록 해야 합니다.
마스터 암호가 md5 암호화를 사용하도록 변경하려면 다음 단계를 따르십시오.
- Aurora 및 RDS 콘솔을 엽니다.
- 왼쪽 탐색 창에서 데이터베이스를 선택합니다.
- 해당하는 Postgre 데이터베이스를 선택합니다.
- 그런 다음 수정을 선택합니다.
- 마스터 암호를 업데이트하고 변경 사항을 적용합니다. 이 작업이 완료되려면 몇 분 걸릴 수 있습니다.
- Aurora 및 RDS 콘솔로 이동합니다.
- 탐색 창의 데이터 카탈로그에서 연결을 선택합니다. 같은 창에서 데이터 카탈로그 위에 있는 데이터 연결을 선택할 수도 있습니다.
- 연결에서 원하는 연결 옆에 있는 확인란을 선택합니다. 그런 다음 작업을 선택합니다. 드롭다운 목록에서 연결 테스트를 선택합니다. 연결이 올바로 구성되었으면 연결 테스트가 성공합니다.