PostgreSQL을 사용하여 Amazon RDS 또는 Aurora DB 인스턴스의 기본 사용자와 권한이 동일한 다른 사용자를 생성하려면 어떻게 해야 하나요?

2분 분량
0

PostgreSQL을 실행하는 Amazon Relational Database Service(RDS) 또는 Amazon Aurora DB 인스턴스를 보유하고 있습니다. 다른 사용자에게 내 DB 인스턴스의 기본(마스터) 사용자와 동일한 권한을 부여하려고 합니다. 기본 사용자의 복제본 또는 클론을 생성하려 합니다.

해결 방법

PostgreSQL을 실행하는 DB 인스턴스의 경우, 인스턴스를 생성할 때 하나의 기본 사용자(마스터 사용자라고도 함)만이 생성됩니다. 단, 기본 사용자와 권한이 동일한 다른 사용자를 생성할 수 있습니다.

중요: PostgreSQL은 암호를 로그 파일에 일반 텍스트로 기록합니다. 이를 방지하려면 Amazon RDS for PostgreSQL에서 암호를 로그 파일에 일반 텍스트로 기록하지 않도록 하려면 어떻게 해야 하나요?를 참조하세요.

참고: rds_superuser 역할은 RDS DB 인스턴스에 대해 가장 많은 권한이 있습니다. 해당 사용자가 RDS DB 인스턴스에 가장 많이 액세스해야 하는 경우를 제외하고 이 역할을 사용자에게 할당하지 마세요.

  1. 새 사용자를 생성하려면 CREATEDB, CREATEROLELOGIN 옵션을 사용하여 CREATE ROLE을 실행합니다. new_master암호를 해당 사용자 이름 및 암호로 바꿉니다.

    postgres=> CREATE ROLE new_master WITH PASSWORD 'password' CREATEDB CREATEROLE LOGIN;
  2. 생성한 역할에 rds_superuser 권한을 부여합니다. new_master를 해당 사용자 이름으로 바꿉니다.

    postgres=> GRANT rds_superuser TO new_master;

이렇게 하면 새 사용자가 기본 사용자와 동일한 권한을 갖게 됩니다.

관련 정보

역할 생성

마스터 사용자 계정 권한

사용자가 AWS Identity and Access Management(IAM) 보안 인증 정보로 Amazon RDS에 연결할 수 있도록 허용하려면 어떻게 해야 하나요?