Amazon RDS for PostgreSQL과 함께 Kerberos 인증 사용 - Amazon Relational Database Service

Amazon RDS for PostgreSQL과 함께 Kerberos 인증 사용

사용자가 PostgreSQL이 실행되는 DB 인스턴스에 연결할 때 Kerberos를 사용하여 사용자를 인증할 수 있습니다. 이를 위해서는 Kerberos 인증을 위한 AWS Directory Service for Microsoft Active Directory를 사용하도록 인스턴스를 구성해야 합니다. AWS Directory Service for Microsoft Active Directory는 AWS Managed Microsoft AD라고도 불립니다. AWS Directory Service에서 사용할 수 있는 기능입니다. 자세한 내용은 AWS Directory Service 관리 가이드AWS Directory Service란 무엇입니까?를 참조하세요.

시작하려면 사용자 자격 증명을 저장할 AWS Managed Microsoft AD 디렉터리를 만듭니다. 그런 다음 PostgreSQL DB 인스턴스에 Active Directory의 도메인 및 기타 정보를 제공합니다. PostgreSQL DB 인스턴스에 대해 사용자가 인증될 때 AWS Managed Microsoft AD 디렉터리에 인증 요청이 전달됩니다.

모든 자격 증명을 동일한 디렉터리에 보관하면 시간과 노력을 절약할 수 있습니다. 여러 DB 인스턴스에 대한 자격 증명을 보관하고 관리할 수 있는 중앙 집중식 공간이 있습니다. 디렉터리를 사용하면 전체 보안 프로필을 향상할 수도 있습니다.

자체 온프레미스 Microsoft Active Directory에서 자격 증명에 액세스할 수도 있습니다. 이렇게 하려면 AWS Managed Microsoft AD 디렉터리가 온프레미스 Microsoft Active Directory를 신뢰하도록 신뢰 도메인 관계를 만듭니다. 그러면 사용자가 온프레미스 네트워크에서 워크로드에 액세스할 때와 동일한 Windows SSO(Single Sign-On) 환경을 사용하여 PostgreSQL 인스턴스에 액세스할 수 있습니다.

데이터베이스는 Kerberos 또는 AWS Identity and Access Management(IAM) 인증을 통한 암호 인증을 사용할 수 있습니다. IAM 인증에 관한 자세한 내용은 MariaDB, MySQL 및 PostgreSQL IAM 데이터베이스 인증 단원을 참조하십시오.

리전 및 버전 사용 가능 여부

기능 가용성 및 해당 지원은 각 데이터베이스 엔진의 특정 버전 및 AWS 리전에 따라 다릅니다. Kerberos 인증을 사용하는 PostgreSQL용 RDS의 버전 및 리전 가용성에 대한 자세한 내용은 Kerberos 인증 단원을 참조하십시오.

PostgreSQL DB 인스턴스에 대한 Kerberos 인증 개요

PostgreSQL DB 인스턴스에 대해 Kerberos 인증을 설정하려면 다음 단계(나중에 자세히 설명함)를 수행하십시오.

  1. AWS Managed Microsoft AD를 사용하여 AWS Managed Microsoft AD 디렉터리를 생성합니다. AWS Management Console, AWS CLI 또는 AWS Directory Service API를 사용하여 디렉터리를 생성할 수 있습니다. 디렉터리가 인스턴스와 통신할 수 있도록 디렉터리 보안 그룹에서 관련 아웃바운드 포트를 열어야 합니다.

  2. AWS Managed Microsoft AD 디렉터리에 호출할 수 있는 Amazon RDS 액세스를 제공하는 역할을 생성합니다. 이를 위해 관리형 IAM 정책 AmazonRDSDirectoryServiceAccess를 사용하는 AWS Identity and Access Management(IAM) 역할을 생성합니다.

    IAM 역할이 액세스를 허용하게 하려면 올바른 AWS Security Token Service 리전에서 AWS STS 계정의 AWS(AWS) 엔드포인트를 활성화해야 합니다. AWS STS 엔드포인트는 기본적으로 모든 AWS 리전에서 활성화되어 있으므로 추가 작업 없이 사용할 수 있습니다. 자세한 내용은 IAM 사용 설명서AWS STS 리전에서 AWS 활성화 및 비활성화를 참조하세요.

  3. Microsoft Active Directory 도구를 사용하여 AWS Managed Microsoft AD 디렉터리에서 사용자를 만들고 구성합니다. Active Directory에서 사용자를 생성하는 방법에 대한 자세한 내용은 AWS 관리 안내서AWS Directory Service 관리형 Microsoft AD에서 사용자 및 그룹 관리를 참조하세요.

  4. 디렉터리와 DB 인스턴스를 다른 AWS 계정 또는 Virtual Private Cloud(VPC)에 배치하려면 VPC 피어링을 구성합니다. 자세한 내용은 Amazon VPC Peering GuideVPC 피어링이란?을 참조하십시오.

  5. 콘솔, CLI 또는 RDS API에서 다음 메서드 중 하나를 사용하여 PostgreSQL DB 인스턴스를 생성하거나 수정합니다.

    디렉터리와 동일한 Amazon Virtual Private Cloud(VPC) 또는 다른 AWS 계정이나 VPC에 인스턴스를 배치할 수 있습니다. PostgreSQL DB 인스턴스를 생성하거나 수정할 때는 다음을 수행합니다.

    • 디렉터리를 만들 때 생성된 도메인 식별자(d-* 식별자)를 제공합니다.

    • 생성한 IAM 역할의 이름을 제공합니다.

    • DB 인스턴스의 보안 그룹이 디렉터리의 보안 그룹에서 인바운드 트래픽을 수신할 수 있는지 확인합니다.

  6. RDS 마스터 사용자 자격 증명을 사용하여 PostgreSQL DB 인스턴스에 연결합니다. 외부에서 식별할 사용자를 PostgreSQL에서 생성합니다. 외부에서 식별되는 사용자는 Kerberos 인증을 사용하여 PostgreSQL DB 인스턴스에 로그인할 수 있습니다.