명명된 리소스 방법을 사용하여 데이터베이스 권한 부여 - AWS Lake Formation

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

명명된 리소스 방법을 사용하여 데이터베이스 권한 부여

다음 단계는 명명된 리소스 방법을 사용하여 데이터베이스 권한을 부여하는 방법을 설명합니다.

Console

Lake Formation 콘솔에서 데이터 레이크 권한 부여 페이지를 사용합니다. 이 페이지는 다음과 같은 섹션으로 구성되어 있습니다.

  • 보안 주체 - 권한을 부여하는 IAM 사용자, 역할, IAM Identity Center 사용자 및 그룹, SAML 사용자 및 그룹, AWS 계정, 조직 또는 조직 단위입니다.

  • LF 태그 또는 카탈로그 리소스 - 권한을 부여할 데이터베이스, 테이블, 뷰 또는 리소스 링크입니다.

  • 권한 - 부여할 Lake Formation 권한.

참고

데이터베이스 리소스 링크에 대한 권한을 부여하려면 리소스 링크 권한 부여 섹션을 참조하세요.

  1. 데이터 레이크 권한 부여 페이지를 엽니다.

    에서 AWS Lake Formation 콘솔을 열고 데이터 레이크 관리자https://console.aws.amazon.com/lakeformation/, 데이터베이스 생성자 또는 데이터베이스에 대한 권한 부여 가능 권한이 있는 IAM 사용자로 로그인합니다.

    다음 중 하나를 수행합니다.

    • 탐색 창의 권한에서 데이터 레이크 권한을 선택합니다. 그런 다음 권한 부여를 선택합니다.

    • 탐색 창의 데이터 카탈로그에서 데이터베이스를 선택합니다. 그런 다음 데이터베이스 페이지에서 데이터베이스를 선택하고 작업 메뉴의 권한에서 권한 부여를 선택합니다.

    참고

    리소스 링크를 통해 데이터베이스에 대한 권한을 부여할 수 있습니다. 이렇게 하려면 데이터베이스 페이지에서 리소스 링크를 선택하고 작업 메뉴에서 대상에 부여를 선택합니다. 자세한 내용은 Lake Formation에서 리소스 링크가 작동하는 방식 단원을 참조하십시오.

  2. 다음으로 보안 주체 섹션에서 보안 주체 유형을 선택한 다음 권한을 부여할 보안 주체를 지정합니다.

    보안 주체 섹션에는 다음 텍스트에 이름이 지정된 네 개의 타일이 있습니다. 각 타일에는 옵션 버튼과 텍스트가 있습니다. IAM Identity Center 사용자 및 그룹 타일이 선택되고 사용자 및 그룹 드롭다운 목록이 다음 텍스트 아래에 있습니다.
    IAM 사용자 및 역할

    사용자 IAM 및 역할 목록에서 사용자 또는 역할을 하나 이상 선택합니다.

    IAM 자격 증명 센터

    사용자 및 그룹 목록에서 하나 이상의 사용자 또는 그룹을 선택합니다. 사용자 또는 그룹을 더 추가하려면 추가를 선택합니다.

    SAML 사용자 및 그룹

    SAML 및 Amazon QuickSight 사용자 및 그룹 에 대해 를 통해 페더레이션된 사용자 또는 그룹에 대해 하나 이상의 Amazon 리소스 이름(ARNs)을 입력하거나 SAMLAmazon QuickSight 사용자 또는 그룹에 ARNs 대해 하나 이상의 Amazon 리소스 이름()을 입력합니다. 각 후에 Enter 키를 누릅니다ARN.

    를 구성하는 방법에 대한 자세한 내용은 섹션을 ARNs참조하세요Lake Formation 권한 부여 및 취소 명령 AWS CLI.

    참고

    Amazon과의 Lake Formation 통합 QuickSight 은 Amazon QuickSight Enterprise Edition에서만 지원됩니다.

    외부 계정

    AWS 계정, AWS organization 또는 IAM Principal에 IAM 사용자 또는 역할에 ARN 대해 하나 이상의 유효한 AWS 계정IDs, 조직IDs, IDs조직 단위 또는 를 입력합니다. 각 ID를 입력한 후에 Enter 키를 누릅니다.

    조직 ID는 'o-'와 10~32개의 소문자 또는 숫자로 구성됩니다.

    조직 단위 ID는 'ou-'로 시작하고 뒤에 4~32개의 소문자 또는 숫자가 옵니다(OU가 포함된 루트의 ID). 이 문자열 뒤에는 두 번째 '-' 대시와 8~32개의 추가 소문자 또는 숫자가 옵니다.

  3. LF 태그 또는 카탈로그 리소스 섹션에서 명명된 데이터 카탈로그 리소스를 선택합니다.

    LF 태그 또는 카탈로그 리소스 섹션에는 가로로 배열된 두 개의 타일이 있으며, 각 타일에는 옵션 버튼과 설명 텍스트가 있습니다. 옵션은 LF 태그와 일치하는 리소스 및 명명된 데이터 카탈로그 리소스입니다. 타일 아래에는 데이터베이스와 테이블이라는 두 개의 드롭다운 목록이 있습니다. 데이터베이스 드롭다운 목록 아래에는 선택한 데이터베이스 이름이 포함된 타일이 있습니다.
  4. 데이터베이스 목록에서 데이터베이스를 하나 이상 선택합니다. 하나 이상의 테이블 및/또는 데이터 필터를 선택할 수도 있습니다.

  5. 권한 섹션에서 권한 및 부여 가능한 권한을 선택합니다. 데이터베이스 권한에서 부여할 권한을 하나 이상 선택합니다.

    권한 섹션에는 가로로 배열된 두 개의 타일이 있습니다. 각 타일에는 옵션 버튼과 텍스트가 있습니다. 데이터베이스 권한 타일이 선택됩니다. 다른 타일인 열 기반 권한은 테이블 권한과 관련이 있으므로 비활성화됩니다. 타일 아래에는 부여할 데이터베이스 권한에 대한 확인란 그룹이 있습니다. 확인란에는 테이블 생성, 변경, 삭제, 설명 및 슈퍼가 포함됩니다. 해당 그룹 아래에는 부여 가능한 권한을 위한 동일한 확인란으로 구성된 또 다른 그룹이 있습니다.
    참고

    등록된 위치를 가리키는 위치 속성이 있는 데이터베이스에 대해 Create Table 또는 Alter를 부여한 후에는 해당 위치에 대한 데이터 위치 권한도 보안 주체에 부여해야 합니다. 자세한 내용은 데이터 위치 권한 부여 단원을 참조하십시오.

  6. (선택 사항) 부여 가능한 권한에서 권한 부여 수신자가 AWS 계정의 다른 보안 주체에 부여할 수 있는 권한을 선택합니다. 외부 계정에서 IAM 보안 주체에게 권한을 부여할 때는 이 옵션이 지원되지 않습니다.

  7. 권한 부여를 선택합니다.

AWS CLI

명명된 리소스 방법과 AWS Command Line Interface (AWS CLI)를 사용하여 데이터베이스 권한을 부여할 수 있습니다.

를 사용하여 데이터베이스 권한을 부여하려면 AWS CLI
  • grant-permissions 명령을 실행하고 부여할 권한에 따라 데이터베이스 또는 데이터 카탈로그를 리소스로 지정합니다.

    다음 예에서는 를 바꿉니다.<account-id> 유효한 AWS 계정 ID가 있어야 합니다.

    예 - 데이터베이스를 생성할 수 있는 권한 부여

    이 예제는 사용자 datalake_user1에게 CREATE_DATABASE 권한을 부여합니다. 이 권한이 부여되는 리소스가 데이터 카탈로그이기 때문에 명령은 빈 CatalogResource 구조를 resource 파라미터로 지정합니다.

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:user/datalake_user1 --permissions "CREATE_DATABASE" --resource '{ "Catalog": {}}'
    예 - 지정된 데이터베이스에 테이블을 생성할 수 있는 권한 부여

    다음 예제는 데이터베이스 retail에 대해 CREATE_TABLE 권한을 사용자 datalake_user1에게 부여합니다.

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:user/datalake_user1 --permissions "CREATE_TABLE" --resource '{ "Database": {"Name":"retail"}}'
    예 – 권한 부여 옵션을 사용하여 외부 AWS 계정에 권한 부여

    다음 예제는 데이터베이스 retail에 대해 권한 부여 옵션을 사용하여 외부 계정 1111-2222-3333에 CREATE_TABLE 권한을 부여합니다.

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=111122223333 --permissions "CREATE_TABLE" --permissions-with-grant-option "CREATE_TABLE" --resource '{ "Database": {"Name":"retail"}}'
    예 - 조직에 권한 부여

    다음 예제는 데이터베이스 issues에 대해 권한 부여 옵션을 사용하여 조직 o-abcdefghijklALTER 권한을 부여합니다.

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:organizations::111122223333:organization/o-abcdefghijkl --permissions "ALTER" --permissions-with-grant-option "ALTER" --resource '{ "Database": {"Name":"issues"}}'
    예 - 동일한 계정의 ALLIAMPrincipals에 권한 부여

    다음 예제는 동일한 계정의 모든 보안 주체에게 데이터베이스 retail에 대한 CREATE_TABLE 권한을 부여합니다. 이 옵션을 사용하면 계정의 모든 보안 주체가 데이터베이스에 테이블을 생성하고 통합 쿼리 엔진이 공유 데이터베이스 및 테이블에 액세스할 수 있도록 테이블 리소스 링크를 생성할 수 있습니다. 이 옵션은 보안 주체가 교차 계정 권한 부여를 받았지만 리소스 링크를 생성할 권한이 없는 경우에 특히 유용합니다. 이 시나리오에서 데이터 레이크 관리자는 자리 표시자 데이터베이스를 생성하고 ALLIAMPrincipal 그룹에 CREATE_TABLE 권한을 부여하여 계정의 모든 IAM 보안 주체가 자리 표시자 데이터베이스에 리소스 링크를 생성할 수 있도록 합니다.

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=111122223333:IAMPrincipals --permissions "CREATE_TABLE" --resource '{ "Database": {"Name":"temp","CatalogId":"111122223333"}}'
    예 - 외부 계정의 ALLIAMPrincipals에 권한 부여

    다음 예제는 외부 계정의 모든 보안 주체에게 데이터베이스 retail에 대한 CREATE_TABLE 권한을 부여합니다. 이 옵션을 사용하면 계정의 모든 보안 주체가 데이터베이스에 테이블을 생성할 수 있습니다.

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=111122223333:IAMPrincipals --permissions "CREATE_TABLE" --resource '{ "Database": {"Name":"retail","CatalogId":"123456789012"}}'
참고

등록된 위치를 가리키는 위치 속성이 있는 데이터베이스에 대해 CREATE_TABLE 또는 ALTER를 부여한 후에는 해당 위치에 대한 데이터 위치 권한도 보안 주체에 부여해야 합니다. 자세한 내용은 데이터 위치 권한 부여 단원을 참조하십시오.