Amazon Relational Database Service
사용 설명서 (API 버전 2014-10-31)

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

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

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

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

  • 데이터베이스를 오가는 네트워크 트래픽은 SSL(Secure Sockets Layer)을 통해 암호화됩니다.

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

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

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

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

  • MySQL 5.6, 마이너 버전 5.6.34 이상. db.m1.small을 제외한 모든 인스턴스 클래스가 지원됩니다.

  • MySQL 5.7, 마이너 버전 5.7.16 이상. db.m1.small을 제외한 모든 인스턴스 클래스가 지원됩니다.

  • PostgreSQL 버전 9.5.14, 9.6.9 이상 및 버전 10.4 이상.

참고

IAM 데이터베이스 인증은 MySQL 5.5 또는 MySQL 8.0에서 지원되지 않습니다.

IAM 데이터베이스 인증에 대한 MySQL 한도

MySQL에 IAM 데이터베이스 인증을 사용할 경우 새로운 연결 수는 초당 최대 20개로 제한됩니다. db.t2.micro 인스턴스 클래스를 사용하는 경우의 연결 한도는 초당 10개입니다.

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

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

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

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

  • 애플리케이션이 초당 20개 이상의 새 연결을 필요로 하는 경우에는 IAM 데이터베이스 인증 방식을 사용하지 마십시오.

참고

MySQL의 최대 총 연결에 대한 자세한 정보는 최대 MySQL 연결 단원을 참조하십시오.

IAM 데이터베이스 인증에 대한 PostgreSQL 한도

PostgreSQL에 IAM 데이터베이스 인증을 사용할 경우, 인스턴스 유형 및 해당 워크로드에 따라 데이터베이스 인스턴스 에 대한 최대 연결 수가 제한될 수 있습니다.