데이터베이스 역할 및 IAM 인증 사용 - Amazon Aurora DSQL

데이터베이스 역할 및 IAM 인증 사용

Aurora DSQL은 IAM 역할과 IAM 사용자를 사용한 인증을 둘 다 지원합니다. 두 방법 중 하나를 사용하여 Aurora DSQL 데이터베이스를 인증하고 액세스할 수 있습니다.

IAM 역할

IAM 역할은 특정 권한이 있지만 특정 사용자와 연결되지 않은 AWS 계정 내의 ID입니다. IAM 역할을 사용하면 임시 보안 자격 증명이 제공됩니다. 다음과 같은 여러 가지 방법으로 IAM 역할을 일시적으로 수임할 수 있습니다.

  • AWS Management Console에서 역할 전환

  • AWS CLI 또는 AWS API 작업 직접 호출

  • 사용자 지정 URL 사용

역할을 수임한 후 역할의 임시 자격 증명을 사용하여 Aurora DSQL에 액세스할 수 있습니다. 역할 사용 방법에 대한 자세한 정보는 IAM 사용 설명서IAM 자격 증명을 참조하세요.

IAM 사용자

IAM 사용자는 특정 권한을 가졌으며 한 명의 개인 또는 하나의 애플리케이션과 연결된 AWS 계정 내 ID입니다. IAM 사용자에게는 Aurora DSQL에 액세스하는 데 사용할 수 있는 암호 및 액세스 키와 같은 장기 자격 증명이 있습니다.

참고

IAM 인증으로 SQL 명령을 실행하려면 아래 예시에서 IAM 역할 ARN 또는 IAM 사용자 ARN을 사용할 수 있습니다.

클러스터에 연결할 데이터베이스 역할 권한 부여

IAM 역할을 생성하고 IAM 정책 작업 dsql:DbConnect를 사용하여 연결 권한을 부여합니다.

IAM 정책은 클러스터 리소스에 액세스할 수 있는 권한도 부여해야 합니다. 와일드카드(*)를 사용하거나 Amazon Aurora DSQL에서 IAM 조건 키 사용의 지침을 따릅니다.

데이터베이스 역할이 데이터베이스에서 SQL을 사용하도록 권한 부여

클러스터에 연결할 권한이 있는 IAM 역할을 사용해야 합니다.

  1. SQL 유틸리티를 사용하여 Aurora DSQL 클러스터에 연결합니다.

    IAM 작업 dsql:DbConnectAdmin이 클러스터에 연결할 수 있도록 권한이 부여된 IAM ID와 함께 admin 데이터베이스 역할을 사용합니다.

  2. WITH LOGIN 옵션을 지정하여 새 데이터베이스 역할을 생성합니다.

    CREATE ROLE example WITH LOGIN;
  3. 데이터베이스 역할을 IAM 역할 ARN과 연결합니다.

    AWS IAM GRANT example TO 'arn:aws:iam::012345678912:role/example';
  4. 데이터베이스 역할에 데이터베이스 수준 권한 부여

    다음 예시에서는 GRANT 명령을 사용하여 데이터베이스 내에서 권한 부여를 제공합니다.

    GRANT USAGE ON SCHEMA myschema TO example; GRANT SELECT, INSERT, UPDATE ON ALL TABLES IN SCHEMA myschema TO example;

자세한 내용은 PostgreSQL 설명서에서 PostgreSQL GRANTPostgreSQL Privileges를 참조하세요.

IAM 역할에서 데이터베이스 권한 부여 취소

데이터베이스 권한 부여를 취소하려면 AWS IAM REVOKE 작업을 사용합니다.

AWS IAM REVOKE example FROM 'arn:aws:iam::012345678912:role/example';

권한 부여 취소에 대한 자세한 내용은 IAM 및 PostgreSQL을 사용하여 권한 부여 취소 섹션을 참조하세요.