AWS Glue의 보안 API - AWS Glue

AWS Glue의 보안 API

보안 API는 보안 데이터 유형 및 AWS Glue의 보안과 관련된 API에 대해 설명합니다.

데이터 유형

DataCatalogEncryptionSettings 구조

데이터 카탈로그 보안을 유지 관리하기 위한 구성 정보가 포함되어 있습니다.

필드
  • EncryptionAtRestEncryptionAtRest 객체입니다.

    데이터 카탈로그에 대한 저장 데이터 암호화 구성을 지정합니다.

  • ConnectionPasswordEncryptionConnectionPasswordEncryption 객체입니다.

    연결 암호 보호가 활성화된 경우 데이터 카탈로그는 고객 제공 키를 사용하여 CreateConnection 또는 UpdateConnection의 일부로 암호를 암호화하고 이를 연결 속성의 ENCRYPTED_PASSWORD 필드에 저장합니다. 카탈로그 암호화를 활성화하거나 암호 암호화만 활성화할 수 있습니다.

EncryptionAtRest 구조

데이터 카탈로그에 대한 저장 데이터 암호화 구성을 지정합니다.

필드
  • CatalogEncryptionMode필수: UTF-8 문자열입니다(유효한 값: DISABLED | SSE-KMS="SSEKMS").

    데이터 카탈로그 데이터를 암호화하기 위한 저장 데이터 암호화 모드입니다.

  • SseAwsKmsKeyIdSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    저장된 데이터 암호화에 사용할 AWS KMS 키의 ID입니다.

ConnectionPasswordEncryption 구조

데이터 카탈로그가 CreateConnection 또는 UpdateConnection의 일부로 암호를 암호화하고 이를 연결 속성의 ENCRYPTED_PASSWORD 필드에 저장하기 위해 사용하는 데이터 구조입니다. 카탈로그 암호화를 활성화하거나 암호 암호화만 활성화할 수 있습니다.

암호를 포함하는 CreationConnection 요청이 도착하면 Data Catalog는 먼저 AWS KMS 키를 사용하여 암호를 암호화합니다. 그런 다음 카탈로그 암호화도 활성화되어 있으면 전체 연결 객체를 다시 암호화합니다.

이 암호화를 사용하려면 보안 요구 사항에 따라 암호 키에 대한 액세스를 사용하거나 제한하도록 AWS KMS 키 권한을 설정해야 합니다. 예를 들어 관리자만 암호 키에 대한 암호화 해제 권한을 갖도록 하고자 할 수 있습니다.

필드
  • ReturnConnectionPasswordEncrypted필수(Required): 부울.

    ReturnConnectionPasswordEncrypted 플래그가 "true"로 설정된 경우, 암호는 GetConnectionGetConnections의 응답에서 암호화된 상태로 유지됩니다. 이 암호화는 카탈로그 암호화와는 독립적으로 적용됩니다.

  • AwsKmsKeyIdSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    연결 암호를 암호화하는 데 사용되는 AWS KMS 키입니다.

    연결 암호 보호가 사용되는 경우 CreateConnectionUpdateConnection의 호출자는 Data Catalog에 암호를 저장하기 전에 암호화하려면 지정된 AWS KMS 키에 대한 최소한 kms:Encrypt 권한이 필요합니다.

    보안 요구 사항에 따라 암호 키에 대한 액세스를 허용하거나 제한하도록 암호화 해제 권한을 설정할 수 있습니다.

EncryptionConfiguration 구조

암호화 구성을 지정합니다.

필드
  • S3EncryptionS3Encryption 객체의 배열입니다.

    Amazon Simple Storage Service(Amazon S3) 데이터에 대한 암호화 구성.

  • CloudWatchEncryptionCloudWatchEncryption 객체입니다.

    Amazon CloudWatch에 대한 암호화 구성.

  • JobBookmarksEncryptionJobBookmarksEncryption 객체입니다.

    작업 북마크에 대한 암호화 구성.

S3Encryption 구조

Amazon Simple Storage Service(Amazon S3) 데이터를 암호화하는 방법을 지정합니다.

필드
  • S3EncryptionMode – UTF-8 문자열입니다(유효한 값: DISABLED | SSE-KMS="SSEKMS" | SSE-S3="SSES3").

    Amazon S3 데이터에 사용할 암호화 모드입니다.

  • KmsKeyArnCustom string pattern #19과(와) 일치하는 UTF-8 문자열입니다.

    데이터를 암호화하는 데 사용되는 KMS 키의 Amazon 리소스 이름(ARN).

CloudWatchEncryption 구조

Amazon CloudWatch 데이터를 암호화하는 방법을 지정합니다.

필드
  • CloudWatchEncryptionMode – UTF-8 문자열입니다(유효한 값: DISABLED | SSE-KMS="SSEKMS").

    CloudWatch 데이터에 사용할 암호화 모드입니다.

  • KmsKeyArnCustom string pattern #19과(와) 일치하는 UTF-8 문자열입니다.

    데이터를 암호화하는 데 사용되는 KMS 키의 Amazon 리소스 이름(ARN).

JobBookmarksEncryption 구조

작업 북마크 데이터를 암호화하는 방법을 지정합니다.

필드
  • JobBookmarksEncryptionMode – UTF-8 문자열입니다(유효한 값: DISABLED | CSE-KMS="CSEKMS").

    작업 북마크 데이터에 사용할 암호화 모드입니다.

  • KmsKeyArnCustom string pattern #19과(와) 일치하는 UTF-8 문자열입니다.

    데이터를 암호화하는 데 사용되는 KMS 키의 Amazon 리소스 이름(ARN).

SecurityConfiguration 구조

보안 구성을 지정합니다.

필드
  • NameSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    보안 구성의 이름입니다.

  • CreatedTimeStamp – 타임스탬프입니다.

    이 보안 구성이 생성된 시간입니다.

  • EncryptionConfigurationEncryptionConfiguration 객체입니다.

    이 보안 구성과 관련된 암호화 구성입니다.

GluePolicy 구조

리소스 정책을 반환하기 위한 구조입니다.

필드
  • PolicyInJson – UTF-8 문자열입니다(최소 2바이트).

    요청된 정책 문서(JSON 형식)가 포함되어 있습니다.

  • PolicyHashSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    이 정책과 연관된 해시 값을 포함하고 있습니다.

  • CreateTime – 타임스탬프입니다.

    정책이 생성된 날짜와 시간입니다.

  • UpdateTime – 타임스탬프입니다.

    정책이 업데이트된 날짜와 시간입니다.

작업

GetDataCatalogEncryptionSettings 작업(Python: get_data_catalog_encryption_settings)

지정된 카탈로그에 대한 보안 구성을 검색합니다.

요청
  • CatalogIdSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.

    보안 구성을 검색할 데이터 카탈로그의 ID입니다. 제공되지 않은 경우 기본적으로 AWS 계정 ID가 사용됩니다.

응답
오류
  • InternalServiceException

  • InvalidInputException

  • OperationTimeoutException

PutDataCatalogEncryptionSettings 작업(Python: put_data_catalog_encryption_settings)

지정된 카탈로그에 대한 보안 구성을 설정합니다. 구성이 설정되면 지정된 암호화가 이후의 모든 카탈로그 쓰기에 적용됩니다.

요청
  • CatalogIdSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.

    보안 구성을 설정할 데이터 카탈로그의 ID입니다. 제공되지 않은 경우 기본적으로 AWS 계정 ID가 사용됩니다.

  • DataCatalogEncryptionSettings필수(Required): DataCatalogEncryptionSettings 객체입니다.

    설정할 보안 구성입니다.

응답
  • 무응답 파라미터.

오류
  • InternalServiceException

  • InvalidInputException

  • OperationTimeoutException

PutResourcePolicy 작업(Python: put_resource_policy)

액세스 제어를 위한 데이터 카탈로그 리소스 정책을 설정합니다.

요청
  • PolicyInJson필수: UTF-8 문자열입니다(최소 2바이트).

    설정할 정책 문서(JSON 형식)가 포함되어 있습니다.

  • ResourceArnCustom string pattern #17과(와) 일치하는 1~10,240바이트 길이의 UTF-8 문자열입니다.

    사용하지 않습니다. 내부용입니다.

  • PolicyHashConditionSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    이전 정책이 PutResourcePolicy를 사용하여 설정된 경우 반환되는 해시 값입니다. 정책의 동시 수정을 방지하기 위해 사용됩니다. 설정된 이전 정책이 없는 경우에는 이 파라미터를 사용하지 마십시오.

  • PolicyExistsCondition – UTF-8 문자열입니다(유효 값: MUST_EXIST | NOT_EXIST | NONE).

    MUST_EXIST의 값은 정책을 업데이트하는 데 사용됩니다. NOT_EXIST의 값은 새 정책을 생성하는 데 사용됩니다. NONE의 값 또는 null 값이 사용되는 경우 호출은 정책의 존재 여부에 종속되지 않습니다.

  • EnableHybrid – UTF-8 문자열입니다(유효한 값: TRUE | FALSE).

    'TRUE'이면 Data Catalog 리소스에 대한 교차 계정 액세스 권한을 부여하기 위해 두 가지 방법을 모두 사용하고 있음을 나타냅니다.

    • PutResourePolicy로 리소스 정책을 직접 업데이트하여

    • AWS Management Console에서 권한 부여 명령을 사용합니다.

    이미 관리 콘솔을 사용하여 교차 계정 액세스 권한을 부여한 경우 'TRUE'로 설정해야 합니다. 그렇지 않으면 호출이 실패합니다. 기본값은 'FALSE'입니다.

응답
  • PolicyHashSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    방금 설정한 정책의 해시입니다. 이 정책을 덮어쓰거나 업데이트하는 후속 호출에 반드시 포함되어 있어야 합니다.

오류
  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • ConditionCheckFailureException

GetResourcePolicy 작업(Python: get_resource_policy)

지정된 리소스 정책을 검색합니다.

요청
  • ResourceArnCustom string pattern #17과(와) 일치하는 1~10,240바이트 길이의 UTF-8 문자열입니다.

    리소스 정책을 검색할 AWS Glue 리소스의 ARN입니다. 제공하지 않으면 Data Catalog 리소스 정책이 반환됩니다. GetResourcePolicies를 사용하여 기존 리소스 정책을 모두 봅니다. 자세한 내용은 AWS Glue 리소스 ARN 지정을 참조하세요.

응답
  • PolicyInJson – UTF-8 문자열입니다(최소 2바이트).

    요청된 정책 문서(JSON 형식)가 포함되어 있습니다.

  • PolicyHashSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    이 정책과 연관된 해시 값을 포함하고 있습니다.

  • CreateTime – 타임스탬프입니다.

    정책이 생성된 날짜와 시간입니다.

  • UpdateTime – 타임스탬프입니다.

    정책이 업데이트된 날짜와 시간입니다.

오류
  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

DeleteResourcePolicy 작업(Python: delete_resource_policy)

지정된 정책을 삭제합니다.

요청
  • PolicyHashConditionSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    이 정책이 설정되었을 때 반환된 해시 값입니다.

  • ResourceArnCustom string pattern #17과(와) 일치하는 1~10,240바이트 길이의 UTF-8 문자열입니다.

    삭제할 리소스 정책에 대한 AWS Glue 리소스의 ARN입니다.

응답
  • 무응답 파라미터.

오류
  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • ConditionCheckFailureException

CreateSecurityConfiguration 작업(Python: create_security_configuration)

새로운 보안 구성을 생성합니다. 보안 구성은 AWS Glue에서 사용할 수 있는 보안 속성 세트입니다. 보안 구성을 사용하여 미사용 데이터를 암호화할 수 있습니다. AWS Glue에서 보안 구성 사용에 대한 자세한 내용은 크롤러, 작업 및 개발 엔드포인트로 기록된 데이터 암호화를 참조하세요.

요청
  • Name필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    새 보안 구성의 이름입니다.

  • EncryptionConfiguration필수(Required): EncryptionConfiguration 객체입니다.

    새 보안 구성을 위한 암호화 구성입니다.

응답
  • NameSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    새 보안 구성에 할당된 이름입니다.

  • CreatedTimestamp – 타임스탬프입니다.

    새 보안 구성이 생성된 시간입니다.

오류
  • AlreadyExistsException

  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

  • ResourceNumberLimitExceededException

DeleteSecurityConfiguration 작업(Python: delete_security_configuration)

지정된 보안 구성을 삭제합니다.

요청
  • Name필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    삭제할 보안 구성의 이름입니다.

응답
  • 무응답 파라미터.

오류
  • EntityNotFoundException

  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

GetSecurityConfiguration 작업(Python: get_security_configuration)

지정된 보안 구성을 검색합니다.

요청
  • Name필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    검색할 보안 구성의 이름입니다.

응답
오류
  • EntityNotFoundException

  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

GetSecurityConfigurations 작업(Python: get_security_configurations)

모든 보안 구성 목록을 검색합니다.

요청
  • MaxResults – 1~1,000의 숫자(정수)입니다.

    반환할 최대 결과 수입니다.

  • NextToken – UTF-8 문자열입니다.

    이것이 지속적으로 호출되면 지속적인 토큰입니다.

응답
  • SecurityConfigurationsSecurityConfiguration 객체의 배열입니다.

    보안 구성의 목록입니다.

  • NextToken – UTF-8 문자열입니다.

    반환할 보안 구성이 더 있는 경우 연속 토큰입니다.

오류
  • EntityNotFoundException

  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

GetResourcePolicies 작업(Python: get_resource_policies)

교차 계정 권한 부여 중에 AWS Resource Access Manager가 개별 리소스에 설정한 리소스 정책을 검색합니다. 또한 Data Catalog 리소스 정책을 검색합니다.

Data Catalog 설정에서 메타데이터 암호화를 사용하고 AWS KMS 키에 대한 권한이 없으면 작업에서 Data Catalog 리소스 정책을 반환할 수 없습니다.

요청
  • NextToken – UTF-8 문자열입니다.

    이것이 지속적인 요청이라면 지속적인 토큰입니다.

  • MaxResults – 1~1,000의 숫자(정수)입니다.

    반환할 목록의 최대 크기.

응답
  • GetResourcePoliciesResponseListGluePolicy 객체의 배열입니다.

    개별 리소스 정책 및 계정 수준 리소스 정책 목록입니다.

  • NextToken – UTF-8 문자열입니다.

    반환된 목록이 사용 가능한 마지막 리소스 정책을 포함하지 경우의 연속 토큰입니다.

오류
  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • GlueEncryptionException