Amazon RDS을 사용한 데이터베이스 인증 - Amazon Relational Database Service

Amazon RDS을 사용한 데이터베이스 인증

Amazon RDS은 데이터베이스 사용자를 인증하는 여러 가지 방법을 지원합니다.

암호, Kerberos 및 IAM 데이터베이스 인증은 데이터베이스에 대해 서로 다른 인증 방법을 사용합니다. 따라서 특정 사용자는 하나의 인증 방법만 사용하여 데이터베이스에 로그인할 수 있습니다.

PostgreSQL의 경우, 특정 데이터베이스 사용자에 대해 다음 역할 설정 중 하나만 사용하세요.

  • IAM 데이터베이스 인증을 사용하려면 rds_iam 역할을 사용자에게 할당합니다.

  • Kerberos 인증을 사용하려면 rds_ad 역할을 사용자에게 할당합니다.

  • 암호 인증을 사용하려면 rds_iam 또는 rds_ad 역할을 사용자에게 할당하지 않습니다.

rds_iamrds_ad 역할을 직접적으로 또는 중첩된 액세스 권한 부여를 통해 간접적으로 PostgreSQL 데이터베이스 사용자에게 둘 다 할당하지 않도록 합니다. rds_iam 역할이 마스터 사용자에게 추가되면, IAM 인증이 암호 인증보다 우선하므로 마스터 사용자가 IAM 사용자로 로그인해야 합니다.

중요

애플리케이션에서 직접 마스터 사용자를 사용하지 않는 것이 좋습니다. 대신에 애플리케이션에 필요한 최소 권한으로 생성한 데이터베이스 사용자를 사용하는 모범 사례를 준수하십시오.

암호 인증

암호 인증을 통해 데이터베이스는 모든 사용자 계정 관리를 수행합니다. CREATE USER와 같은 DB 엔진에서 암호를 지정하는 데 필요한 적절한 절이 있는 SQL 문을 사용하여 사용자를 생성합니다. 예를 들어 MySQL에서 명령문은 CREATE USER 이름 IDENTIFIED BY 암호이지만 PostgreSQL에서 명령문은 CREATE USER 이름 WITH PASSWORD 암호입니다.

암호 인증을 통해 데이터베이스는 사용자 계정을 제어하고 인증합니다. DB 엔진에 강력한 암호 관리 기능이 있는 경우 보안을 강화할 수 있습니다. 소규모 사용자 커뮤니티가 있는 경우 암호 인증을 사용하여 데이터베이스 인증을 쉽게 관리할 수 있습니다. 이 경우 일반 텍스트 암호가 생성되므로 AWS Secrets Manager과 통합하면 보안이 강화될 수 있습니다.

Secrets Manager를 Amazon RDS와 함께 사용하는 방법에 대한 자세한 내용은 AWS Secrets Manager 사용 설명서에서 기본 비밀 만들기지원되는 Amazon RDS 데이터베이스의 비밀 교체를 참조하세요. 사용자 지정 애플리케이션에서 프로그래밍 방식으로 비밀을 검색하는 방법에 대한 자세한 내용은 AWS Secrets Manager 사용 설명서비밀 값 검색을 참조하세요.

IAM 데이터베이스 인증

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

특정 DB 엔진의 가용성에 대한 정보를 포함하여 IAM 데이터베이스 인증에 대한 자세한 내용은 MariaDB, MySQL 및 PostgreSQL IAM 데이터베이스 인증 단원을 참조하십시오.

Kerberos 인증

Amazon RDS에서는 Kerberos 및 Microsoft Active Directory를 사용하여 데이터베이스 사용자의 외부 인증을 지원합니다. Kerberos는 티켓과 대칭 키 암호화를 사용하여 네트워크를 통해 암호를 전송할 필요가 없는 네트워크 인증 프로토콜입니다. Kerberos는 Active Directory에 내장되어 있으며 데이터베이스와 같은 네트워크 리소스에 대해 사용자를 인증하도록 설계되었습니다.

Kerberos 및 Active Directory에 대한 Amazon RDS의 지원은 데이터베이스 사용자에게 SSO(Single Sign-On) 및 중앙 집중식 인증의 이점을 제공합니다. 사용자 자격 증명을 Active Directory에 보관할 수 있습니다. Active Directory는 여러 DB 인스턴스에 대한 자격 증명을 보관하고 관리할 수 있는 중앙 집중식 공간을 제공합니다.

데이터베이스 사용자가 두 가지 방법으로 DB 인스턴스에 대해 인증하도록 할 수 있습니다. AWS Directory Service for Microsoft Active Directory 또는 온프레미스 Active Directory에 저장된 자격 증명을 사용할 수 있습니다.

Microsoft SQL Server 및 PostgreSQL DB 인스턴스는 단방향 및 양방향 포리스트 신뢰 관계를 지원합니다. Oracle DB 인스턴스는 단방향 및 양방향 외부 및 포리스트 신뢰 관계를 지원합니다. 자세한 내용은 AWS Directory Service 관리 안내서신뢰 관계를 생성해야 하는 경우를 참조하십시오.

특정 DB 엔진의 Kerberos 인증에 대한 자세한 내용은 다음을 참조하십시오.

참고

현재 MariaDB DB 인스턴스에 대해서는 Kerberos 인증이 지원되지 않습니다.