MySQL 및 PostgreSQL을 위한 IAM 데이터베이스 인증 - Amazon Relational Database Service

MySQL 및 PostgreSQL을 위한 IAM 데이터베이스 인증

AWS Identity and Access Management(IAM) 데이터베이스 인증을 사용하여 DB 인스턴스에 인증할 수 있습니다. IAM 데이터베이스 인증은 MySQL 및 PostgreSQL과 함께 작동합니다. 이러한 인증 방식은 DB 인스턴스에 연결할 때 암호를 사용할 필요 없습니다. 대신에 인증 토큰을 사용합니다.

인증 토큰이란 요청이 있을 때 Amazon RDS가 생성하는 고유 문자열입니다. 인증 토큰은 AWS 서명 버전 4를 통해 생성됩니다. 각 토큰의 수명은 15분입니다. 인증을 외부에서 IAM을 사용해 관리하기 때문에 사용자 자격 증명을 데이터베이스에 저장할 필요도 없습니다. 또한 표준 데이터베이스 인증 방식도 사용 가능합니다.

IAM 데이터베이스 인증은 다음과 같은 이점이 있습니다.

  • 데이터베이스를 오가는 네트워크 트래픽은 SSL(Secure Sockets Layer) 또는 TLS(Transport Layer Security)를 통해 암호화됩니다. Amazon RDS에서 SSL/TLS를 사용하는 방법에 대한 자세한 내용은 SSL/TLS를 사용하여 DB instance 연결 암호화 단원을 참조하십시오.

  • 데이터베이스 리소스에 대한 액세스는 DB 인스턴스에서 개별적으로 관리할 필요 없이 IAM을 통해 중앙에서 관리할 수 있습니다.

  • Amazon EC2에서 실행되는 애플리케이션의 경우, 암호가 아닌 EC2 인스턴스용 프로파일 자격 증명을 사용해 데이터베이스에 액세스하기 때문에 보안을 더욱 강화하는 효과가 있습니다.

IAM 데이터베이스 인증 방식의 가용성

IAM 데이터베이스 인증 방식은 다음과 같은 데이터베이스 엔진에서 사용할 수 있습니다.

  • MySQL 8.0, 마이너 버전 8.0.16 이상

  • MySQL 5.7, 마이너 버전 5.7.16 이상

  • MySQL 5.6, 마이너 버전 5.6.34 이상

  • PostgreSQL 13, 모든 마이너 버전

  • PostgreSQL 12, 모든 마이너 버전

  • PostgreSQL 11, 모든 마이너 버전

  • PostgreSQL 10, 마이너 버전 10.6 이상

  • PostgreSQL 9.6, 마이너 버전 9.6.11 이상

  • PostgreSQL 9.5, 마이너 버전 9.5.15 이상

IAM 데이터베이스 인증 방식의 제한 사항

IAM 데이터베이스 인증을 사용하는 경우, 다음 한도가 적용됩니다.

  • DB 인스턴스 의 초당 최대 연결 수는 DB 인스턴스 클러스터 및 워크로드에 따라 제한할 수 있습니다.

  • 현재 IAM 데이터베이스 인증은 모든 전역 조건 컨텍스트 키를 지원하지 않습니다.

    전역 조건 컨텍스트 키에 대한 자세한 내용은 IAM 사용 설명서AWS 전역 조건 컨텍스트 키를 참조하세요.

  • 현재 IAM 데이터베이스 인증은 CNAME에서 지원되지 않습니다.

  • PostgreSQL의 경우, IAM 역할(rds_iam)이 마스터 사용자에게 추가되면, IAM 인증이 암호 인증보다 우선하므로 마스터 사용자가 IAM 사용자로 로그인해야 합니다.

IAM 데이터베이스 인증에 대한 MySQL 권장 사항

MySQL DB 엔진을 사용할 경우 다음을 따르십시오.

  • IAM 데이터베이스 인증 방식은 개인이 일시적으로 데이터베이스에 액세스하기 위한 메커니즘으로 사용하십시오.

  • 재시도가 용이한 워크로드에서만 IAM 데이터베이스 인증 방식을 사용하십시오.

  • 애플리케이션에 초당 200개 미만의 새 IAM 데이터베이스 인증 연결이 필요한 경우에는 IAM 데이터베이스 인증 방식을 사용합니다.

    Amazon RDS에서 작동하는 데이터베이스 엔진은 초당 인증 횟수에 제한이 없습니다. 하지만 IAM 데이터베이스 인증 방식을 사용할 때는 애플리케이션이 인증 토큰을 생성해야 합니다. 이렇게 생성된 토큰은 애플리케이션이 DB 인스턴스에 연결하는 데 사용됩니다. 초당 허용되는 새 연결의 최대 수를 초과하면 IAM 데이터베이스 인증에 오버헤드가 추가로 발생하여 연결 병목 현상이 발생할 수 있습니다. 추가 오버헤드로 인해 기존 연결까지 끊어질 수도 있습니다. MySQL의 최대 총 연결 수에 대한 자세한 정보는 최대 MySQL 및 MariaDB 연결 수을(를) 참조하세요.

참고

이러한 권장 사항은 Amazon RDS for PostgreSQL DB 인스턴스에는 적용되지 않습니다.