本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Amazon EMR主控台或使用 建立安全組態 AWS CLI
本主題涵蓋使用 Amazon EMR主控台和 建立安全組態的一般程序 AWS CLI,後面接著包含 加密、身分驗證和IAM角色的參數參考EMRFS。如需這些功能的詳細資訊,請參閱下列主題:
使用主控台建立安全組態
在 https://console.aws.amazon.com/emr
開啟 Amazon EMR主控台。 -
在導覽窗格中,選擇 Security Configurations (安全組態)、Create security configuration (建立安全組態)。
-
輸入安全組態的 Name (名稱)。
-
選擇以下區段中所述的加密和身分驗證,然後選擇建立。
使用 建立安全組態 AWS CLI
-
請使用
create-security-configuration
指令,如下列範例所示。-
用於
SecConfigName
,指定安全組態的名稱。這是您在建立使用此安全組態的叢集時所指定的名稱。 -
對於
,指定內嵌JSON結構或本機JSON檔案的路徑,例如SecConfigDef
。這些JSON參數定義加密 、IAMEMRFS存取 Amazon S3 的角色和身分驗證的選項,如以下各節所述。file://MySecConfig.json
aws emr create-security-configuration --name "
SecConfigName
" --security-configurationSecConfigDef
-
設定資料加密
在安全組態中設定加密前,請建立用於加密的金鑰和憑證。如需詳細資訊,請參閱 提供用於加密靜態資料的金鑰 和 提供使用 Amazon 加密來EMR加密傳輸中資料的憑證。
您在建立安全組態時指定兩組加密選項:靜態資料加密和傳輸中資料加密。靜態資料加密的選項包括具有 EMRFS和本機磁碟加密的 Amazon S3。傳輸中加密選項可為支援 Transport Layer Security () 的特定應用程式啟用開放原始碼加密功能TLS。靜態和傳輸中的選項可同時啟用或分別啟用。如需詳細資訊,請參閱使用 Amazon 加密靜態和傳輸中的資料 EMR。
注意
當您使用 時 AWS KMS,儲存和使用加密金鑰會收取費用。如需詳細資訊,請參閱 AWS KMS 定價
使用主控台指定加密選項
在 Encryption (加密) 中,根據下列的準則來選擇選項。
-
選擇 At rest encryption (靜態加密) 下的選項來加密存放於檔案系統中的資料。
您可以選擇加密 Amazon S3、本機磁碟或兩者的資料。
-
在 S3 資料加密 下,針對加密模式 ,選擇一個值來判斷 Amazon 如何使用 EMR加密 Amazon S3 資料EMRFS。
您接下來要執行的動作取決於您選擇的加密模式:
-
SSE-S3
指定 Amazon S3 受管加密金鑰的伺服器端加密。您不必再進行任何操作,因為 Amazon S3 會為您處理金鑰。
-
SSE-KMS 或 CSE-KMS
使用 AWS KMS受管金鑰 (SSE-KMS) 指定伺服器端加密,或使用 AWS KMS受管金鑰 (CSE-KMS) 指定用戶端加密。針對 AWS KMS key,選取一個金鑰。金鑰必須與EMR叢集位於相同的區域中。如需金鑰需求,請參閱「使用 AWS KMS keys 進行加密」。
-
CSE-自訂
使用自訂用戶端根金鑰 (CSE-custom) 指定用戶端加密。對於 S3 物件 ,輸入自訂金鑰提供者JAR檔案ARN的 Amazon S3 或 Amazon S3 中的位置。然後,針對金鑰提供者類別 ,輸入在實作EncryptionMaterialsProvider 介面的應用程式中宣告之類別的完整類別名稱。
-
-
在 Local disk encryption (本機磁碟加密) 下,選擇 Key provider type (金鑰提供者類型) 的值。
-
AWS KMS key
選取此選項以指定 AWS KMS key。針對 AWS KMS key,選取一個金鑰。金鑰必須與EMR叢集位於相同的區域中。如需金鑰需求的詳細資訊,請參閱「使用 AWS KMS keys 進行加密」。
EBS 加密
當您指定 AWS KMS 做為金鑰提供者時,您可以啟用EBS加密,以加密EBS根裝置和儲存磁碟區。若要啟用此類選項,您必須授予
EMR_DefaultRole
具有許可的 Amazon EMR服務角色,才能使用您指定的 AWS KMS key 。如需金鑰需求的詳細資訊,請參閱「為KMS金鑰提供額外的許可以啟用EBS加密」。 -
Custom (自訂)
選擇此選項來指定自訂金鑰提供者。針對 S3 物件 ,輸入自訂金鑰提供者JAR檔案ARN的 Amazon S3 或 Amazon S3 中的位置。針對金鑰提供者類別 ,輸入在實作 EncryptionMaterialsProvider 介面的應用程式中宣告之類別的完整類別名稱。您在此提供的類別名稱必須與 CSE-Custom 提供的類別名稱不同。
-
-
選擇傳輸中加密,以啟用傳輸中資料的開放原始碼TLS加密功能。根據下列的準則來選擇 Certificate provider type (憑證提供者類型):
-
PEM
選取此選項可使用您在 zip PEM 檔案中提供的檔案。zip 檔案中需要兩個成品:privateKey.pem 和 certificateChain.pem。第三個檔案 trustedCertificates.pem 是選用的。如需詳細資訊,請參閱 提供使用 Amazon 加密來EMR加密傳輸中資料的憑證。對於 S3 物件 ,指定 zip 檔案欄位的 Amazon S3 或 Amazon S3 ARN中的位置。
-
Custom (自訂)
選取此選項以指定自訂憑證提供者,然後在 S3 物件 中輸入自訂憑證提供者JAR檔案ARN的 Amazon S3 或 Amazon S3 中的位置。針對金鑰提供者類別 ,輸入在實作TLSArtifactsProvider介面的應用程式中宣告之類別的完整類別名稱。
-
使用 指定加密選項 AWS CLI
以下各節使用範例案例來說明不同組態和金鑰提供者--security-configurationJSON的格式良好,然後是JSON參數和適當值的參考。
傳輸中資料加密選項範例
以下範例說明以下案例:
-
傳輸中資料加密啟用而靜態資料加密停用。
-
Amazon S3 中包含憑證的 zip 檔案用作金鑰提供者 (如需憑證需求,請參閱 提供使用 Amazon 加密來EMR加密傳輸中資料的憑證)。
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{ "EncryptionConfiguration": { "EnableInTransitEncryption": true, "EnableAtRestEncryption": false, "InTransitEncryptionConfiguration": { "TLSCertificateConfiguration": { "CertificateProviderType": "PEM", "S3Object": "s3://MyConfigStore/artifacts/MyCerts.zip" } } } }'
以下範例說明以下案例:
-
傳輸中資料加密啟用而靜態資料加密停用。
-
使用自訂金鑰提供者 (如需憑證需求,請參閱「提供使用 Amazon 加密來EMR加密傳輸中資料的憑證」)。
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{ "EncryptionConfiguration": { "EnableInTransitEncryption": true, "EnableAtRestEncryption": false, "InTransitEncryptionConfiguration": { "TLSCertificateConfiguration": { "CertificateProviderType": "Custom", "S3Object": "s3://MyConfig/artifacts/MyCerts.jar", "CertificateProviderClass": "com.mycompany.MyCertProvider" } } } }'
靜態資料加密選項範例
以下範例說明以下案例:
-
傳輸中資料加密停用而靜態資料加密啟用。
-
SSE-S3 用於 Amazon S3 加密。
-
本機磁碟加密使用 AWS KMS 作為金鑰提供者。
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{ "EncryptionConfiguration": { "EnableInTransitEncryption": false, "EnableAtRestEncryption": true, "AtRestEncryptionConfiguration": { "S3EncryptionConfiguration": { "EncryptionMode": "SSE-S3" }, "LocalDiskEncryptionConfiguration": { "EncryptionKeyProviderType": "AwsKms", "AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012" } } } }'
以下範例說明以下案例:
-
啟用傳輸中資料加密,並使用 參考 Amazon S3 中具有PEM憑證的 zip 檔案ARN。
-
SSE-KMS 用於 Amazon S3 加密。
-
本機磁碟加密使用 AWS KMS 作為金鑰提供者。
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{ "EncryptionConfiguration": { "EnableInTransitEncryption": true, "EnableAtRestEncryption": true, "InTransitEncryptionConfiguration": { "TLSCertificateConfiguration": { "CertificateProviderType": "PEM", "S3Object": "arn:aws:s3:::MyConfigStore/artifacts/MyCerts.zip" } }, "AtRestEncryptionConfiguration": { "S3EncryptionConfiguration": { "EncryptionMode": "SSE-KMS", "AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012" }, "LocalDiskEncryptionConfiguration": { "EncryptionKeyProviderType": "AwsKms", "AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012" } } } }'
以下範例說明以下案例:
-
啟用傳輸中資料加密,並參考 Amazon S3 中具有PEM憑證的 zip 檔案。
-
CSE-KMS 用於 Amazon S3 加密。
-
本機磁碟加密使用其 參考的自訂金鑰提供者ARN。
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{ "EncryptionConfiguration": { "EnableInTransitEncryption": true, "EnableAtRestEncryption": true, "InTransitEncryptionConfiguration": { "TLSCertificateConfiguration": { "CertificateProviderType": "PEM", "S3Object": "s3://MyConfigStore/artifacts/MyCerts.zip" } }, "AtRestEncryptionConfiguration": { "S3EncryptionConfiguration": { "EncryptionMode": "CSE-KMS", "AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012" }, "LocalDiskEncryptionConfiguration": { "EncryptionKeyProviderType": "Custom", "S3Object": "arn:aws:s3:::artifacts/MyKeyProvider.jar", "EncryptionKeyProviderClass": "com.mycompany.MyKeyProvider" } } } }'
以下範例說明以下案例:
-
傳輸中資料加密以自訂金鑰提供者啟用。
-
CSE-自訂用於 Amazon S3 資料。
-
本機磁碟加密使用自訂金鑰提供者。
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{ "EncryptionConfiguration": { "EnableInTransitEncryption": "true", "EnableAtRestEncryption": "true", "InTransitEncryptionConfiguration": { "TLSCertificateConfiguration": { "CertificateProviderType": "Custom", "S3Object": "s3://MyConfig/artifacts/MyCerts.jar", "CertificateProviderClass": "com.mycompany.MyCertProvider" } }, "AtRestEncryptionConfiguration": { "S3EncryptionConfiguration": { "EncryptionMode": "CSE-Custom", "S3Object": "s3://MyConfig/artifacts/MyCerts.jar", "EncryptionKeyProviderClass": "com.mycompany.MyKeyProvider" }, "LocalDiskEncryptionConfiguration": { "EncryptionKeyProviderType": "Custom", "S3Object": "s3://MyConfig/artifacts/MyCerts.jar", "EncryptionKeyProviderClass": "com.mycompany.MyKeyProvider" } } } }'
以下範例說明以下案例:
-
傳輸中資料加密停用而靜態資料加密啟用。
-
Amazon S3 加密使用 SSE- 啟用KMS。
-
使用多個 AWS KMS 金鑰,每個 S3 儲存貯體一個,加密例外狀況會套用至這些個別 S3 儲存貯體。
-
停用本機磁碟加密。
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{ "EncryptionConfiguration": { "AtRestEncryptionConfiguration": { "S3EncryptionConfiguration": { "EncryptionMode": "SSE-KMS", "AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012", "Overrides": [ { "BucketName": "sse-s3-bucket-name", "EncryptionMode": "SSE-S3" }, { "BucketName": "cse-kms-bucket-name", "EncryptionMode": "CSE-KMS", "AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012" }, { "BucketName": "sse-kms-bucket-name", "EncryptionMode": "SSE-KMS", "AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012" } ] } }, "EnableInTransitEncryption": false, "EnableAtRestEncryption": true } }'
以下範例說明以下案例:
-
傳輸中資料加密停用而靜態資料加密啟用。
-
Amazon S3 加密會使用 SSE-S3 啟用,並停用本機磁碟加密。
aws emr create-security-configuration --name "MyS3EncryptionConfig" --security-configuration '{ "EncryptionConfiguration": { "EnableInTransitEncryption": false, "EnableAtRestEncryption": true, "AtRestEncryptionConfiguration": { "S3EncryptionConfiguration": { "EncryptionMode": "SSE-S3" } } } }'
以下範例說明以下案例:
-
傳輸中資料加密停用而靜態資料加密啟用。
-
使用 啟用本機磁碟加密 AWS KMS 作為金鑰提供者,並停用 Amazon S3 加密。
aws emr create-security-configuration --name "MyLocalDiskEncryptionConfig" --security-configuration '{ "EncryptionConfiguration": { "EnableInTransitEncryption": false, "EnableAtRestEncryption": true, "AtRestEncryptionConfiguration": { "LocalDiskEncryptionConfiguration": { "EncryptionKeyProviderType": "AwsKms", "AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012" } } } }'
以下範例說明以下案例:
-
傳輸中資料加密停用而靜態資料加密啟用。
-
使用 啟用本機磁碟加密 AWS KMS 作為金鑰提供者,並停用 Amazon S3 加密。
-
EBS 加密已啟用。
aws emr create-security-configuration --name "MyLocalDiskEncryptionConfig" --security-configuration '{ "EncryptionConfiguration": { "EnableInTransitEncryption": false, "EnableAtRestEncryption": true, "AtRestEncryptionConfiguration": { "LocalDiskEncryptionConfiguration": { "EnableEbsEncryption": true, "EncryptionKeyProviderType": "AwsKms", "AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012" } } } }'
以下範例說明以下案例:
SSE-EMR-WAL 用於EMRWAL加密
aws emr create-security-configuration --name "MySecConfig" \ --security-configuration '{ "EncryptionConfiguration": { "EMRWALEncryptionConfiguration":{ }, "EnableInTransitEncryption":false, "EnableAtRestEncryption":false } }'
EnableInTransitEncryption
如果想要啟用相關加密, EnableAtRestEncryption
仍然可能是 true。
以下範例說明以下案例:
SSE-KMS-WAL 用於EMRWAL加密
伺服器端加密使用 AWS Key Management Service 作為金鑰提供者
aws emr create-security-configuration --name "MySecConfig" \ --security-configuration '{ "EncryptionConfiguration": { "EMRWALEncryptionConfiguration":{ "AwsKmsKey":"arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012" }, "EnableInTransitEncryption":false, "EnableAtRestEncryption":false } }'
EnableInTransitEncryption
如果想要啟用相關加密, EnableAtRestEncryption
仍然可能是 true。
JSON 加密設定的參考
下表列出加密設定的JSON參數,並提供每個參數可接受值的說明。
參數 | 描述 |
---|---|
"EnableInTransitEncryption" :
true | false |
指定 true 以啟用傳輸中加密,指定 false 以停用。若省略,則會採用 false ,並停用傳輸中加密。 |
"EnableAtRestEncryption": true |
false |
指定 true 以啟用靜態加密,指定 false 以停用。若省略,則會採用 false ,並停用靜態加密。 |
傳輸中加密參數 | |
"InTransitEncryptionConfiguration" : |
當 EnableInTransitEncryption 為 true 時,指定用於設定傳輸中加密的值集合。 |
"CertificateProviderType": "PEM" |
"Custom" |
指定是否要使用參考壓縮檔案的 PEM 憑證或 Custom 憑證提供者。如果指定 PEM ,則 S3Object 必須是包含憑證之 zip 檔案的 Amazon S3 中位置的參考。如果指定自訂, S3Object 必須是JAR檔案 Amazon S3 中位置的參考,後面接著CertificateProviderClass 項目。 |
"S3Object" :
" |
" |
PEM 指定時,將 Amazon S3 中的位置提供給 zip 檔案,或Custom 指定時提供給JAR檔案。格式可以是路徑 (例如 s3://MyConfig/artifacts/CertFiles.zip ) 或 ARN(例如 arn:aws:s3:::Code/MyCertProvider.jar) )。如果指定 zip 檔案,其必須包含命名方式與 privateKey.pem 和 certificateChain.pem 完全相同的檔案。命名為 trustedCertificates.pem 的檔案為選用。 |
"CertificateProviderClass" :
" |
只有在為 指定 Custom 時才需要CertificateProviderType 。 指定在 JAR 檔案中宣告的完整類別名稱,以實作 TLSArtifactsProvider 介面。例如:com.mycompany.MyCertProvider 。 |
靜態加密參數 | |
"AtRestEncryptionConfiguration" : |
指定當 EnableAtRestEncryption 為 時的靜態加密值集合true ,包括 Amazon S3 加密和本機磁碟加密。 |
Amazon S3 加密參數 | |
"S3EncryptionConfiguration" : |
指定使用 Amazon File System () 進行 Amazon S3 加密時所使用的值集合EMRFS。 EMR |
"EncryptionMode" : "SSE-S3" |
"SSE-KMS" | "CSE-KMS" |
"CSE-Custom" |
指定要使用的 Amazon S3 加密類型。如果已指定 SSE-S3 ,則不需要其他 Amazon S3 加密值。如果指定 SSE-KMS 或 CSE-KMS ,則必須指定 AWS KMS key ARN作為 AwsKmsKey 值。如果指定 CSE-Custom ,則必須指定 S3Object 和 EncryptionKeyProviderClass 的值。 |
"AwsKmsKey" :
" |
只有在為 CSE-KMS 指定 SSE-KMS 或 時才需要EncryptionMode 。 必須是完全指定ARN給金鑰 (例如 arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 )。 |
"S3Object" :
" |
只有在 CSE-Custom 指定 時才需要CertificateProviderType 。 會將 Amazon S3 中的位置 提供給 JAR 檔案。格式可以是路徑 (例如 s3://MyConfig/artifacts/MyKeyProvider.jar ) 或 ARN(例如 arn:aws:s3:::Code/MyKeyProvider.jar) )。 |
"EncryptionKeyProviderClass" :
" |
只有在 CSE-Custom 指定 時才需要EncryptionMode 。 指定在實作 EncryptionMaterialsProvider介面的應用程式中宣告之類別的完整類別名稱;例如 。 |
本機磁碟加密參數 | |
"LocalDiskEncryptionConfiguration" |
指定用於本機磁碟加密的金鑰提供者和對應的值。 |
"EnableEbsEncryption": |
指定 true 以啟用EBS加密。EBS 加密會加密EBS根裝置磁碟區和連接的儲存磁碟區。若要使用EBS加密,您必須指定 AwsKms 為 EncryptionKeyProviderType 。 |
"EncryptionKeyProviderType": "AwsKms" |
"Custom" |
指定金鑰提供者。如果AwsKms 已指定 ,ARN則必須將KMS金鑰指定為 AwsKmsKey 值。如果指定 Custom ,則必須指定 S3Object 和 EncryptionKeyProviderClass 的值。 |
"AwsKmsKey :
" |
只有在為 指定 AwsKms 時才需要Type 。 必須是完全指定ARN給金鑰 (例如 arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-456789012123 )。 |
"S3Object" :
" |
只有在 CSE-Custom 指定 時才需要CertificateProviderType 。 會將 Amazon S3 中的位置 提供給 JAR 檔案。格式可以是路徑 (例如 s3://MyConfig/artifacts/MyKeyProvider.jar ) 或 ARN(例如 arn:aws:s3:::Code/MyKeyProvider.jar) )。 |
|
只有在 Custom 指定 時才需要Type 。 指定在實作 EncryptionMaterialsProvider介面的應用程式中宣告之類別的完整類別名稱;例如 。 |
EMR WAL 加密參數 | |
"EMRWALEncryptionConfiguration"
|
指定EMRWAL加密的值。 |
"AwsKmsKey"
|
指定CMK金鑰 ID Arn。 |
設定 Kerberos 身分驗證
Kerberos 設定的安全組態只能由以 Kerberos 屬性建立的叢集使用,否則會發生錯誤。如需詳細資訊,請參閱使用 Kerberos 與 Amazon 進行身分驗證 EMR。Kerberos 僅適用於 Amazon EMR5.10.0 版及更新版本。
使用主控台指定 Kerberos 設定
根據下列的準則,在 Kerberos authentication (Kerberos 身分驗證) 中選擇選項。
參數 | 描述 | ||
---|---|---|---|
Kerberos |
指定已為使用此安全組態的叢集啟用 Kerberos。如果叢集使用此安全組態,叢集也必須指定 Kerberos 設定,否則會發生錯誤。 |
||
供應商 |
叢集專用 KDC |
指定 Amazon 在使用此安全組態的任何叢集的主要節點KDC上EMR建立 。您可以在建立叢集時指定領域名稱和KDC管理員密碼。 如有需要,您可以從KDC其他叢集參考。使用不同的安全組態建立這些叢集、指定外部 KDC,並使用您為叢集專用 指定的領域名稱和KDC管理員密碼KDC。 |
|
外部 KDC |
僅適用於 Amazon EMR 5.20.0 及更新版本。指定使用此安全組態的叢集使用叢集外部的KDC伺服器來驗證 Kerberos 主體。KDC 未在叢集上建立 。建立叢集時,您可以指定外部 的領域名稱和KDC管理員密碼KDC。 |
||
票證生命週期 |
選用。指定 發行的 Kerberos 票證在使用此安全組態的叢集上KDC有效的期間。 出於安全原因,票證生命週期是有限的。叢集應用程式和服務會在到期後自動續約票證。SSH 使用 Kerberos 憑證連線至叢集的使用者,需要在票證過期後 |
||
跨領域信任 |
指定叢集KDC專用於使用此安全組態的叢集與不同 Kerberos 領域KDC中的 之間的跨領域信任。 來自其他領域的主體 (通常是使用者) 會對使用此組態的叢集進行身分驗證。需要其他 Kerberos 領域中的其他組態。如需詳細資訊,請參閱教學課程:使用 Active Directory 域設定跨領域信任。 |
||
跨領域信任屬性 |
領域 |
指定信任關係中另一個領域的 Kerberos 領域名稱。根據慣例,Kerberos 領域名稱與域名稱相同,但都是大寫字母。 |
|
網域 |
指定信任關係中另一個領域的域名稱。 |
||
管理伺服器 |
指定信任關係另一個領域中管理伺服器的完整網域名稱 (FQDN) 或 IP 地址。管理伺服器和KDC伺服器通常在具有相同 的同一部電腦上執行FQDN,但在不同的連接埠上進行通訊。 如果未指定連接埠,則會使用連接埠 749 (Kerberos 預設值)。或者,您可以指定連接埠 (例如 |
||
KDC 伺服器 |
指定信任關係另一個領域中KDC伺服器的完整網域名稱 (FQDN) 或 IP 地址。KDC 伺服器和管理員伺服器通常在具有相同 的相同電腦上執行FQDN,但使用不同的連接埠。 如果未指定連接埠,則會使用連接埠 88,這是 Kerberos 預設值。或者,您可以指定連接埠 (例如 |
||
外部 KDC |
指定叢集KDC使用外部叢集。 |
||
外部KDC屬性 |
管理伺服器 |
指定外部管理員伺服器的完整網域名稱 (FQDN) 或 IP 地址。管理伺服器和KDC伺服器通常在具有相同 的同一部電腦上執行FQDN,但在不同的連接埠上進行通訊。 如果未指定連接埠,則會使用連接埠 749 (Kerberos 預設值)。或者,您可以指定連接埠 (例如 |
|
KDC 伺服器 |
指定外部KDC伺服器的完整網域名稱 (FQDN)。KDC 伺服器和管理員伺服器通常在具有相同 的相同電腦上執行FQDN,但使用不同的連接埠。 如果未指定連接埠,則會使用連接埠 88,這是 Kerberos 預設值。或者,您可以指定連接埠 (例如 |
||
Active Directory 整合 |
指定 Kerberos 主體驗證與 Microsoft Active Directory 域整合。 |
||
Active Directory 整合屬性 |
Active Directory 領域 |
指定 Active Directory 網域的 Kerberos 領域名稱。根據慣例,Kerberos 領域名稱通常與網域名稱相同,但都是大寫字母。 |
|
Active Directory 網域 |
指定 Active Directory 域名稱。 |
||
Active Directory 伺服器 |
指定 Microsoft Active Directory 網域控制器的完整網域名稱 (FQDN)。 |
使用 指定 Kerberos 設定 AWS CLI
下列參考資料表顯示安全組態中 Kerberos 設定的JSON參數。如需組態範例,請參閱組態範例。
參數 | 描述 | |||||
---|---|---|---|---|---|---|
|
針對 Kerberos 為必要。指定驗證組態是此安全組態的一部分。 |
|||||
|
|
針對 Kerberos 為必要。指定 Kerberos 組態屬性。 |
||||
|
|
|
||||
"ClusterDedicatedKdcConfiguration": { |
指定 |
|||||
|
選用。指定 發行的 Kerberos 票證在使用此安全組態的叢集上KDC有效的期間。 出於安全原因,票證生命週期是有限的。叢集應用程式和服務會在到期後自動續約票證。SSH 使用 Kerberos 憑證連線至叢集的使用者,需要在票證過期後 |
|||||
|
指定叢集KDC專用於使用此安全組態的叢集與不同 Kerberos 領域KDC中的 之間的跨領域信任。 來自其他領域的主體 (通常是使用者) 會對使用此組態的叢集進行身分驗證。需要其他 Kerberos 領域中的其他組態。如需詳細資訊,請參閱教學課程:使用 Active Directory 域設定跨領域信任。 |
|||||
|
指定信任關係中另一個領域的 Kerberos 領域名稱。根據慣例,Kerberos 領域名稱與域名稱相同,但都是大寫字母。 |
|||||
|
指定信任關係中另一個領域的域名稱。 |
|||||
|
在信任關係的另一個領域中指定管理伺服器的完整網域名稱 (FQDN) 或 IP 地址。管理伺服器和KDC伺服器通常在具有相同 的同一部電腦上執行FQDN,但在不同的連接埠上進行通訊。 如果未指定連接埠,則會使用連接埠 749 (Kerberos 預設值)。或者,您可以指定連接埠 (例如 |
|||||
|
指定信任關係另一個領域中KDC伺服器的完整網域名稱 (FQDN) 或 IP 地址。KDC 伺服器和管理員伺服器通常在具有相同 的相同電腦上執行FQDN,但使用不同的連接埠。 如果未指定連接埠,則會使用連接埠 88,這是 Kerberos 預設值。或者,您可以指定連接埠 (例如 |
|||||
|
||||||
|
||||||
"ExternalKdcConfiguration": { |
指定 |
|||||
|
選用。指定 發行的 Kerberos 票證在使用此安全組態的叢集上KDC有效的期間。 出於安全原因,票證生命週期是有限的。叢集應用程式和服務會在到期後自動續約票證。SSH 使用 Kerberos 憑證連線至叢集的使用者,需要在票證過期後 |
|||||
|
指定參考單一KDC伺服器。 |
|||||
"AdminServer": " |
指定外部管理員伺服器的完整網域名稱 (FQDN) 或 IP 地址。管理伺服器和KDC伺服器通常在具有相同 的同一部電腦上執行FQDN,但在不同的連接埠上進行通訊。 如果未指定連接埠,則會使用連接埠 749 (Kerberos 預設值)。或者,您可以指定連接埠 (例如 |
|||||
"KdcServer": " |
指定外部KDC伺服器的完整網域名稱 (FQDN)。KDC 伺服器和管理員伺服器通常在具有相同 的相同電腦上執行FQDN,但使用不同的連接埠。 如果未指定連接埠,則會使用連接埠 88,這是 Kerberos 預設值。或者,您可以指定連接埠 (例如 |
|||||
|
指定 Kerberos 主體驗證與 Microsoft Active Directory 域整合。 |
|||||
|
|
指定 Active Directory 網域的 Kerberos 領域名稱。根據慣例,Kerberos 領域名稱通常與網域名稱相同,但都是大寫字母。 |
||||
|
指定 Active Directory 域名稱。 |
|||||
|
指定 Microsoft Active Directory 網域控制器的完整網域名稱 (FQDN)。 |
|||||
|
||||||
|
||||||
|
||||||
|
設定 Amazon S3 EMRFS請求IAM的角色
IAM 角色EMRFS可讓您為 Amazon S3 中的EMRFS資料提供不同的許可。您可以建立對應,指定當存取請求包含您指定的識別符時,用於許可IAM的角色。識別符可以是 Hadoop 使用者或角色,或 Amazon S3 字首。
如需詳細資訊,請參閱設定 Amazon S3 EMRFS請求IAM的角色。
使用 指定IAM角色 EMRFS AWS CLI
以下是在安全組態EMRFS中指定 自訂IAM角色的範例程式碼JSON片段。它示範了三種不同標識符類型的角色映射,後接參數參考。
{ "AuthorizationConfiguration": { "EmrFsConfiguration": { "RoleMappings": [{ "Role": "
arn:aws:iam::123456789101:role/allow_EMRFS_access_for_user1
", "IdentifierType": "User", "Identifiers": [ "user1
" ] },{ "Role": "arn:aws:iam::123456789101:role/allow_EMRFS_access_to_MyBuckets
", "IdentifierType": "Prefix", "Identifiers": [ "s3://MyBucket/","s3://MyOtherBucket/
" ] },{ "Role": "arn:aws:iam::123456789101:role/allow_EMRFS_access_for_AdminGroup
", "IdentifierType": "Group", "Identifiers": [ "AdminGroup
" ] }] } } }
參數 | 描述 |
---|---|
|
必要。 |
|
必要。包含角色映射。 |
|
必要。包含一或多個角色映射定義。角色映射以顯示的由上而下順序進行評估。如果角色映射評估 Amazon S3 中資料的EMRFS呼叫為 true,則不會評估其他角色映射,並針對請求EMRFS使用指定的IAM角色。角色映射包含下列必要參數: |
|
以 格式指定IAM角色的ARN識別符 |
|
可為下列其中之一:
|
|
指定適當識別符類型的一或多個識別符。以逗號分隔多個識別符,不含空格。 |
設定 Amazon EC2執行個體的中繼資料服務請求
執行個體中繼資料 是關於您執行個體的資料,您可以用來設定或管理執行中的執行個體。您可以使用以下其中一個方法,從執行中的執行個體存取執行個體中繼資料:
-
執行個體中繼資料服務第 1 版 (IMDSv1) - 請求/回應方法
-
Instance Metadata Service 第 2 版 (IMDSv2) - 工作階段導向方法
雖然 Amazon 同時EC2支援 IMDSv1和 IMDSv2,但 Amazon EMRIMDSv2支援 Amazon EMR 5.23.1、5.27.1、5.32 或更新版本,以及 6.2 或更新版本。在這些版本中,Amazon EMR元件會IMDSv2用於所有IMDS通話。對於應用程式程式碼中的IMDS呼叫,您可以使用 IMDSv1和 IMDSv2,或IMDS將 設定為僅用於IMDSv2提高安全性。當您指定IMDSv2必須使用 時, IMDSv1 將不再運作。
如需詳細資訊,請參閱 Amazon EC2使用者指南 中的設定執行個體中繼資料服務。
注意
在舊版 Amazon EMR 5.x 或 6.x 版本中,當 Amazon EMR元件IMDSv1用於所有IMDS呼叫時,關閉IMDSv1會導致叢集啟動失敗。關閉 時IMDSv1,請確保使用的任何自訂軟體IMDSv1都更新為 IMDSv2。
使用 AWS CLI指定執行個體中繼資料服務組態
以下是在安全組態中指定 Amazon EC2執行個體中繼資料服務 JSON (IMDS) 的範例程式碼片段。選用自訂安全組態。
{ "InstanceMetadataServiceConfiguration" : { "MinimumInstanceMetadataServiceVersion": integer, "HttpPutResponseHopLimit": integer } }
參數 | 描述 |
---|---|
|
如果您未在安全組態IMDS中指定 並使用需要 的 Amazon EMR版本IMDSv1,Amazon 會EMR預設使用 IMDSv1作為最低執行個體中繼資料服務版本。如果您想要使用自己的組態,則需要下列兩個參數。 |
|
必要。可指定為 |
|
必要。執行個體中繼資料請求所需的HTTPPUT回應跳轉限制。數字越大,可傳輸的執行個體中繼資料請求越多。預設: |
使用主控台指定執行個體中繼資料服務組態
當您從 Amazon EMR主控台啟動叢集時,您可以IMDS為叢集設定 的使用。
若要IMDS使用主控台設定 的使用:
-
在安全組態頁面上建立新的安全組態時,請選取EC2執行個體中繼資料服務設定下的設定EC2執行個體中繼資料服務。只有 Amazon EMR 5.23.1、5.27.1、5.32 或更新版本,以及 6.2 或更新版本才支援此組態。
-
對於最低執行個體中繼資料服務版本選項,選取:
-
如果只想要在此叢集IMDSv2上允許 ,請關閉IMDSv1並僅允許 IMDSv2。請參閱 Amazon 使用者指南 中的使用執行個體中繼資料服務第 2 版轉換為 。 EC2
-
如果您想要在此叢集IMDSv2上允許 IMDSv1 和 工作階段導向,請在叢集 IMDSv2 上同時允許 IMDSv1和 。
-
-
對於 IMDSv2,您也可以將HTTP放置回應躍點限制設定為介於 和 之間的整數,藉此設定中繼資料字符的允許網路躍點數量
64
。1
如需詳細資訊,請參閱 Amazon EC2使用者指南 中的設定執行個體中繼資料服務。
請參閱 Amazon EC2使用者指南 中的設定執行個體詳細資訊和設定執行個體中繼資料服務。