

# AWS Glue のセキュリティ API
<a name="aws-glue-api-jobs-security"></a>

Security API では、セキュリティのデータ型と、AWS Glue のセキュリティに関する API について説明しています。

## データタイプ
<a name="aws-glue-api-jobs-security-objects"></a>
+ [DataCatalogEncryptionSettings 構造](#aws-glue-api-jobs-security-DataCatalogEncryptionSettings)
+ [EncryptionAtRest 構造](#aws-glue-api-jobs-security-EncryptionAtRest)
+ [ConnectionPasswordEncryption 構造](#aws-glue-api-jobs-security-ConnectionPasswordEncryption)
+ [EncryptionConfiguration 構造](#aws-glue-api-jobs-security-EncryptionConfiguration)
+ [S3Encryption 構造](#aws-glue-api-jobs-security-S3Encryption)
+ [CloudWatchEncryption 構造](#aws-glue-api-jobs-security-CloudWatchEncryption)
+ [JobBookmarksEncryption 構造](#aws-glue-api-jobs-security-JobBookmarksEncryption)
+ [SecurityConfiguration 構造](#aws-glue-api-jobs-security-SecurityConfiguration)
+ [GluePolicy の構造](#aws-glue-api-jobs-security-GluePolicy)
+ [DataQualityEncryption 構造](#aws-glue-api-jobs-security-DataQualityEncryption)

## DataCatalogEncryptionSettings 構造
<a name="aws-glue-api-jobs-security-DataCatalogEncryptionSettings"></a>

データカタログのセキュリティを維持するための構成情報が含まれています。

**フィールド**
+ `EncryptionAtRest` – [EncryptionAtRest](#aws-glue-api-jobs-security-EncryptionAtRest) オブジェクト。

  データカタログの保管時の暗号化の構成を指定します。
+ `ConnectionPasswordEncryption` – [ConnectionPasswordEncryption](#aws-glue-api-jobs-security-ConnectionPasswordEncryption) オブジェクト。

  接続パスワードが有効になっている場合、データカタログでは、お客様が用意したキーを使用して、`CreateConnection` または `UpdateConnection` の一部としてパスワードを暗号化するか、接続プロパティの `ENCRYPTED_PASSWORD` フィールドに保存します。カタログの暗号化、またはパスワードの暗号化のみ有効にすることができます。

## EncryptionAtRest 構造
<a name="aws-glue-api-jobs-security-EncryptionAtRest"></a>

データカタログの保管時の暗号化の構成を指定します。

**フィールド**
+ `CatalogEncryptionMode` – *必須:* UTF-8 文字列 (有効な値: `DISABLED` \$1 `SSE-KMS="SSEKMS"` \$1 `SSE-KMS-WITH-SERVICE-ROLE="SSEKMSWITHSERVICEROLE"`)。

  データカタログを暗号化するための保管時の暗号化モード。
+ `SseAwsKmsKeyId` – UTF-8 文字列。1～255 バイト長。[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine) に一致。

  保管時の暗号化に使用する、AWS KMS キーの ID。
+ `CatalogEncryptionServiceRole` – UTF-8 文字列。[Custom string pattern #53](aws-glue-api-common.md#regex_53) に一致。

  呼び出し元に代わり、AWS Glue が Data Catalog オブジェクトを暗号化および復号するために引き受けるロール。

## ConnectionPasswordEncryption 構造
<a name="aws-glue-api-jobs-security-ConnectionPasswordEncryption"></a>

`CreateConnection` または `UpdateConnection` の一部としてパスワードを暗号化し、接続プロパティの `ENCRYPTED_PASSWORD` フィールドに保存するために、データカタログで使用されるデータ構造。カタログの暗号化、またはパスワードの暗号化のみ有効にすることができます。

パスワードを含む `CreationConnection` リクエストが到着すると、Data Catalog ではまず AWS KMS キーを使用してパスワードを暗号化します。​カタログの暗号化が有効になっている場合は、続いて全体の接続オブジェクトも暗号化します。

この暗号化では、セキュリティ要件に従ってパスワードキーへのアクセスを有効にしたり制限したりするように AWS KMS キーのアクセス許可を設定する必要があります。たとえば、管理者にのみ、パスワードキーの復号のアクセス許可を付与する場合などです。

**フィールド**
+ `ReturnConnectionPasswordEncrypted` – *必須:* Boolean。

  `ReturnConnectionPasswordEncrypted` フラグが「true」に設定されている場合は、`GetConnection` および `GetConnections` の応答でパスワードは暗号化された状態のままになります。この暗号化は、カタログの暗号化とは関係なく、有効になります。
+ `AwsKmsKeyId` – UTF-8 文字列。1～255 バイト長。[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine) に一致。

  接続パスワードの暗号化に使用する AWS KMS キー。

  接続パスワードの保護が有効になっている場合、`CreateConnection` および `UpdateConnection` の呼び出し元には少なくとも、指定された AWS KMS キーの `kms:Encrypt` アクセス許可が必要です。このアクセス許可は、Data Catalog に保存する前にパスワードを暗号化するために必要です。

  復号のアクセス許可を設定することで、セキュリティ要件に従ってパスワードキーへのアクセスを有効または制限することができます。

## EncryptionConfiguration 構造
<a name="aws-glue-api-jobs-security-EncryptionConfiguration"></a>

暗号化構成を指定します。

**フィールド**
+ `S3Encryption` – [S3Encryption](#aws-glue-api-jobs-security-S3Encryption) オブジェクトの配列。

  Amazon Simple Storage Service (Amazon S3) データの暗号化設定。
+ `CloudWatchEncryption` – [CloudWatchEncryption](#aws-glue-api-jobs-security-CloudWatchEncryption) オブジェクト。

  Amazon CloudWatch の暗号化構成。
+ `JobBookmarksEncryption` – [JobBookmarksEncryption](#aws-glue-api-jobs-security-JobBookmarksEncryption) オブジェクト。

  ジョブブックマークの暗号化構成。
+ `DataQualityEncryption` – [DataQualityEncryption](#aws-glue-api-jobs-security-DataQualityEncryption) オブジェクト。

  AWS Glue Data Quality アセットの暗号化設定。

## S3Encryption 構造
<a name="aws-glue-api-jobs-security-S3Encryption"></a>

Amazon Simple Storage Service (Amazon S3) データを暗号化する方法を指定します。

**フィールド**
+ `S3EncryptionMode` – UTF-8 文字列 (有効な値: `DISABLED` \$1 `SSE-KMS="SSEKMS"` \$1 `SSE-S3="SSES3"`)。

  Simple Storage Service (Amazon S3) データに使用する暗号化モード。
+ `KmsKeyArn` – UTF-8 文字列。[Custom string pattern #42](aws-glue-api-common.md#regex_42) に一致。

  データの暗号化に使用する KMS キーの Amazon リソースネーム (ARN)。

## CloudWatchEncryption 構造
<a name="aws-glue-api-jobs-security-CloudWatchEncryption"></a>

Amazon CloudWatch データを暗号化する方法を指定します。

**フィールド**
+ `CloudWatchEncryptionMode` – UTF-8 文字列 (有効な値: `DISABLED` \$1 `SSE-KMS="SSEKMS"`)。

  CloudWatch データに使用する暗号化モード。
+ `KmsKeyArn` – UTF-8 文字列。[Custom string pattern #42](aws-glue-api-common.md#regex_42) に一致。

  データの暗号化に使用する KMS キーの Amazon リソースネーム (ARN)。

## JobBookmarksEncryption 構造
<a name="aws-glue-api-jobs-security-JobBookmarksEncryption"></a>

ジョブブックマークデータを暗号化する方法を指定します。

**フィールド**
+ `JobBookmarksEncryptionMode` – UTF-8 文字列 (有効な値: `DISABLED` \$1 `CSE-KMS="CSEKMS"`)。

  ジョブブックマークデータに使用する暗号化モード。
+ `KmsKeyArn` – UTF-8 文字列。[Custom string pattern #42](aws-glue-api-common.md#regex_42) に一致。

  データの暗号化に使用する KMS キーの Amazon リソースネーム (ARN)。

## SecurityConfiguration 構造
<a name="aws-glue-api-jobs-security-SecurityConfiguration"></a>

セキュリティ設定を指定します。

**フィールド**
+ `Name` – UTF-8 文字列。1～255 バイト長。[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine) に一致。

  セキュリティ構成の名前。
+ `CreatedTimeStamp` – タイムスタンプ。

  このセキュリティ設定が作成された時刻。
+ `EncryptionConfiguration` – [EncryptionConfiguration](#aws-glue-api-jobs-security-EncryptionConfiguration) オブジェクト。

  このセキュリティ構成に関連する暗号化構成。

## GluePolicy の構造
<a name="aws-glue-api-jobs-security-GluePolicy"></a>

リソースポリシーを返すための構造。

**フィールド**
+ `PolicyInJson` – UTF-8 文字列、少なくとも 2 バイト長。

  リクエストされたポリシードキュメントを JSON 形式で含んでいます。
+ `PolicyHash` – UTF-8 文字列。1～255 バイト長。[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine) に一致。

  このポリシーに関連付けられたハッシュ値を含んでいます。
+ `CreateTime` – タイムスタンプ。

  ポリシーの作成日時。
+ `UpdateTime` – タイムスタンプ。

  ポリシーの前回更新日時。

## DataQualityEncryption 構造
<a name="aws-glue-api-jobs-security-DataQualityEncryption"></a>

アカウント内の Data Quality アセットを暗号化する方法を規定します。

**フィールド**
+ `DataQualityEncryptionMode` – UTF-8 文字列 (有効な値: `DISABLED` \$1 `SSE-KMS="SSEKMS"`)。

  Data Quality アセットの暗号化に使用する暗号化モード。これらのアセットには、データ品質ルールセット、結果、統計、異常検出モデル、観測値が含まれます。

  有効な値は、カスタマーマネージド KMS キー を使用した暗号化の場合は `SSEKMS`、もしくは `DISABLED` です。
+ `KmsKeyArn` – UTF-8 文字列。[Custom string pattern #42](aws-glue-api-common.md#regex_42) に一致。

  データの暗号化に使用する KMS キーの Amazon リソースネーム (ARN)。

## 操作
<a name="aws-glue-api-jobs-security-actions"></a>
+ [GetDataCatalogEncryptionSettings アクション (Python: get\$1data\$1catalog\$1encryption\$1settings)](#aws-glue-api-jobs-security-GetDataCatalogEncryptionSettings)
+ [PutDataCatalogEncryptionSettings アクション (Python: put\$1data\$1catalog\$1encryption\$1settings)](#aws-glue-api-jobs-security-PutDataCatalogEncryptionSettings)
+ [PutResourcePolicy アクション (Python: put\$1resource\$1policy)](#aws-glue-api-jobs-security-PutResourcePolicy)
+ [GetResourcePolicy アクション (Python: get\$1resource\$1policy)](#aws-glue-api-jobs-security-GetResourcePolicy)
+ [DeleteResourcePolicy アクション (Python: delete\$1resource\$1policy)](#aws-glue-api-jobs-security-DeleteResourcePolicy)
+ [CreateSecurityConfiguration アクション (Python: create\$1security\$1configuration)](#aws-glue-api-jobs-security-CreateSecurityConfiguration)
+ [DeleteSecurityConfiguration アクション (Python: delete\$1security\$1configuration)](#aws-glue-api-jobs-security-DeleteSecurityConfiguration)
+ [GetSecurityConfiguration アクション (Python: get\$1security\$1configuration)](#aws-glue-api-jobs-security-GetSecurityConfiguration)
+ [GetSecurityConfigurations アクション (Python: get\$1security\$1configurations)](#aws-glue-api-jobs-security-GetSecurityConfigurations)
+ [GetResourcePolicies アクション (Python: get\$1resource\$1policies)](#aws-glue-api-jobs-security-GetResourcePolicies)

## GetDataCatalogEncryptionSettings アクション (Python: get\$1data\$1catalog\$1encryption\$1settings)
<a name="aws-glue-api-jobs-security-GetDataCatalogEncryptionSettings"></a>

指定されたカタログのセキュリティ設定を取得します。

**リクエスト**
+ `CatalogId` – カタログ ID 文字列、1～255 バイト長、「[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)」に一致。

  セキュリティ設定を取得するデータカタログの ID。設定しない場合は、AWS アカウント ID がデフォルトで使用されます。

**応答**
+ `DataCatalogEncryptionSettings` – [DataCatalogEncryptionSettings](#aws-glue-api-jobs-security-DataCatalogEncryptionSettings) オブジェクト。

  リクエストされたセキュリティ設定。

**エラー**
+ `InternalServiceException`
+ `InvalidInputException`
+ `OperationTimeoutException`

## PutDataCatalogEncryptionSettings アクション (Python: put\$1data\$1catalog\$1encryption\$1settings)
<a name="aws-glue-api-jobs-security-PutDataCatalogEncryptionSettings"></a>

指定したカタログのセキュリティ構成を設定します。構成が完了すると、以後、指定した暗号化がすべてのカタログ書き込みに適用されます。

**リクエスト**
+ `CatalogId` – カタログ ID 文字列、1～255 バイト長、「[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)」に一致。

  セキュリティ設定を行うデータカタログの ID。設定しない場合は、AWS アカウント ID がデフォルトで使用されます。
+ `DataCatalogEncryptionSettings` – *必須:* [DataCatalogEncryptionSettings](#aws-glue-api-jobs-security-DataCatalogEncryptionSettings) オブジェクト。

  設定するセキュリティ設定。

**応答**
+ *応答パラメータはありません。*

**エラー**
+ `InternalServiceException`
+ `InvalidInputException`
+ `OperationTimeoutException`

## PutResourcePolicy アクション (Python: put\$1resource\$1policy)
<a name="aws-glue-api-jobs-security-PutResourcePolicy"></a>

アクセスコントロールのためにデータカタログのリソースポリシーを設定します。

**リクエスト**
+ `PolicyInJson` – *必須:* UTF-8 文字列、少なくとも 2 バイト長。

  設定する、JSON 形式のポリシードキュメントを含んでいます。
+ `ResourceArn` – UTF-8 文字列。1～10240 バイト長。[Custom string pattern #50](aws-glue-api-common.md#regex_50) に一致。

  使用しません。内部使用のみ。
+ `PolicyHashCondition` – UTF-8 文字列。1～255 バイト長。[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine) に一致。

  前のポリシーが `PutResourcePolicy` を使用して設定された時に返るハッシュ値。その目的は、ポリシーの同時変更を防ぐことです。以前に設定されたポリシーがない場合は、このパラメータは使用しないでください。
+ `PolicyExistsCondition` – UTF-8 文字列 (有効な値: `MUST_EXIST` \$1 `NOT_EXIST` \$1 `NONE`)。

  ポリシーの値を更新するために値 `MUST_EXIST` が使用されます。新しいポリシーを作成するために値 `NOT_EXIST` が使用されます。値 `NONE` または null 値を使用すると、呼び出しはポリシーが存在するかどうかに依存しなくなります。
+ `EnableHybrid` – UTF-8 文字列 (有効な値: `TRUE` \$1 `FALSE`)。

  `'TRUE'` の場合、Data Catalog のリソースへのクロスアカウントアクセスを許可するために次の両方の方法を使用していることを示しています。
  + リソースポリシーを `PutResourePolicy` で直接更新
  + AWS マネジメントコンソール で **Grant permissions** コマンドを使用

  マネジメントコンソールを使用してクロスアカウントアクセスを既に許可している場合、`'TRUE'` に設定する必要があります。そうしないと、呼び出しは失敗します。デフォルトは FALSE です。

**応答**
+ `PolicyHash` – UTF-8 文字列。1～255 バイト長。[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine) に一致。

  設定されたばかりのポリシーのハッシュです。このポリシーを上書きまたは更新するこれ以降の呼び出しには、これを含める必要があります。

**エラー**
+ `EntityNotFoundException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `ConditionCheckFailureException`

## GetResourcePolicy アクション (Python: get\$1resource\$1policy)
<a name="aws-glue-api-jobs-security-GetResourcePolicy"></a>

指定されたリソースポリシーを取得します。

**リクエスト**
+ `ResourceArn` – UTF-8 文字列。1～10240 バイト長。[Custom string pattern #50](aws-glue-api-common.md#regex_50) に一致。

  リソースポリシーを取得する対象の AWS Glue リソースの ARN です。指定しない場合は、Data Catalog のリソースポリシーが返されます。`GetResourcePolicies` を使用して、既存のリソースポリシーをすべて表示します。詳細については、「[AWS Glue リソース ARN を特定する](https://docs.aws.amazon.com/glue/latest/dg/glue-specifying-resource-arns.html)」を参照してください。

**応答**
+ `PolicyInJson` – UTF-8 文字列、少なくとも 2 バイト長。

  リクエストされたポリシードキュメントを JSON 形式で含んでいます。
+ `PolicyHash` – UTF-8 文字列。1～255 バイト長。[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine) に一致。

  このポリシーに関連付けられたハッシュ値を含んでいます。
+ `CreateTime` – タイムスタンプ。

  ポリシーの作成日時。
+ `UpdateTime` – タイムスタンプ。

  ポリシーの前回更新日時。

**エラー**
+ `EntityNotFoundException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `InvalidInputException`

## DeleteResourcePolicy アクション (Python: delete\$1resource\$1policy)
<a name="aws-glue-api-jobs-security-DeleteResourcePolicy"></a>

指定されたポリシーを削除します。

**リクエスト**
+ `PolicyHashCondition` – UTF-8 文字列。1～255 バイト長。[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine) に一致。

  このポリシーが設定されたときに返されたハッシュ値です。
+ `ResourceArn` – UTF-8 文字列。1～10240 バイト長。[Custom string pattern #50](aws-glue-api-common.md#regex_50) に一致。

  削除されるリソースポリシーの AWS Glue リソースの ARNです。

**応答**
+ *応答パラメータはありません。*

**エラー**
+ `EntityNotFoundException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `ConditionCheckFailureException`

## CreateSecurityConfiguration アクション (Python: create\$1security\$1configuration)
<a name="aws-glue-api-jobs-security-CreateSecurityConfiguration"></a>

新しいセキュリティ構成を作成します。セキュリティ構成は、AWS Glue が使用できるセキュリティプロパティのセットです。セキュリティ構成を使用して、保管時にデータを暗号化できます。AWS Glue のセキュリティ設定を使用する方法については、「[クローラ、ジョブ、および開発エンドポイントによって書き込まれたデータの暗号化](https://docs.aws.amazon.com/glue/latest/dg/encryption-security-configuration.html)」を参照してください。

**リクエスト**
+ `Name` – *必須:* UTF-8 文字列。1～255 バイト長。[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine) に一致。

  新しいセキュリティ設定の名前。
+ `EncryptionConfiguration` – *必須:* [EncryptionConfiguration](#aws-glue-api-jobs-security-EncryptionConfiguration) オブジェクト。

  新しいセキュリティ設定に関連する暗号化設定。

**応答**
+ `Name` – UTF-8 文字列。1～255 バイト長。[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine) に一致。

  新しいセキュリティ設定に割り当てられた名前。
+ `CreatedTimestamp` – タイムスタンプ。

  新しいセキュリティ設定が作成された時刻。

**エラー**
+ `AlreadyExistsException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `ResourceNumberLimitExceededException`

## DeleteSecurityConfiguration アクション (Python: delete\$1security\$1configuration)
<a name="aws-glue-api-jobs-security-DeleteSecurityConfiguration"></a>

指定したセキュリティ設定を削除します。

**リクエスト**
+ `Name` – *必須:* UTF-8 文字列。1～255 バイト長。[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine) に一致。

  削除するセキュリティ設定の名前。

**応答**
+ *応答パラメータはありません。*

**エラー**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`

## GetSecurityConfiguration アクション (Python: get\$1security\$1configuration)
<a name="aws-glue-api-jobs-security-GetSecurityConfiguration"></a>

指定したセキュリティ設定を取得します。

**リクエスト**
+ `Name` – *必須:* UTF-8 文字列。1～255 バイト長。[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine) に一致。

  取得するセキュリティ設定の名前。

**応答**
+ `SecurityConfiguration` – [SecurityConfiguration](#aws-glue-api-jobs-security-SecurityConfiguration) オブジェクト。

  リクエストされたセキュリティ設定。

**エラー**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`

## GetSecurityConfigurations アクション (Python: get\$1security\$1configurations)
<a name="aws-glue-api-jobs-security-GetSecurityConfigurations"></a>

すべてのセキュリティ設定のリストを取得します。

**リクエスト**
+ `MaxResults` – 1～1000 の数値 (整数)。

  返される結果の最大数。
+ `NextToken` – UTF-8 文字列。

  継続トークン (これが継続呼び出しの場合)。

**応答**
+ `SecurityConfigurations` – [SecurityConfiguration](#aws-glue-api-jobs-security-SecurityConfiguration) オブジェクトの配列。

  セキュリティ設定のリスト。
+ `NextToken` – UTF–8 文字列。

  返されるセキュリティ設定がさらにある場合は、継続トークンを返します。

**エラー**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`

## GetResourcePolicies アクション (Python: get\$1resource\$1policies)
<a name="aws-glue-api-jobs-security-GetResourcePolicies"></a>

クロスアカウントのアクセス許可の付与中に AWS Resource Access Manager によって個々のリソースに設定されたリソースポリシーを取得します。Data Catalog のリソースポリシーも取得します。

Data Catalog 設定でメタデータの暗号化を有効にしていて、AWS KMS キーへのアクセス許可がない場合、オペレーションで Data Catalog のリソースポリシーを返すことはできません。

**リクエスト**
+ `NextToken` – UTF-8 文字列。

  継続トークン (これが継続リクエストの場合)。
+ `MaxResults` – 1～1000 の数値 (整数)。

  返されるリストの最大サイズ。

**応答**
+ `GetResourcePoliciesResponseList` – [GluePolicy](#aws-glue-api-jobs-security-GluePolicy) オブジェクトの配列。

  個々のリソースポリシーとアカウントレベルのリソースポリシーのリスト。
+ `NextToken` – UTF–8 文字列。

  継続トークン (戻されたリストに使用可能な最後のリソースポリシーが含まれていない場合)。

**エラー**
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `GlueEncryptionException`