

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 組態範例
<a name="emr-kerberos-config-examples"></a>

下列範例示範常見案例的安全組態和叢集組態。為了簡潔起見，會顯示 AWS CLI commands。

## 本機 KDC
<a name="emr-kerberos-example-local-kdc"></a>

下列命令使用在主節點上執行的叢集專用 KDC 來建立叢集。可能需要在叢集上設定其他組態。如需詳細資訊，請參閱[為 Kerberos 驗證的 HDFS 使用者和 SSH 連線設定 Amazon EMR 叢集](emr-kerberos-configuration-users.md)。

**建立安全組態**

```
aws emr create-security-configuration --name {{LocalKDCSecurityConfig}} \
--security-configuration '{"AuthenticationConfiguration": \
{"KerberosConfiguration": {"Provider": "ClusterDedicatedKdc",\
"ClusterDedicatedKdcConfiguration": {"TicketLifetimeInHours": {{24}} }}}}'
```

**建立叢集**

```
aws emr create-cluster --release-label {{emr-7.13.0}} \
--instance-count 3 --instance-type {{m5.xlarge}} \
--applications Name={{Hadoop}} Name={{Hive}} --ec2-attributes InstanceProfile=EMR_EC2_DefaultRole,KeyName={{MyEC2Key}} \
--service-role EMR_DefaultRole \
--security-configuration {{LocalKDCSecurityConfig}} \
--kerberos-attributes Realm={{EC2.INTERNAL}},KdcAdminPassword={{MyPassword}}
```

## 叢集專用 KDC 搭配 Active Directory 跨領域信任
<a name="emr-kerberos-example-crossrealm"></a>

下列命令使用在主節點上執行的叢集專用 KDC，搭配 Active Directory 域的跨領域信任來建立叢集。可能需要在叢集和 Active Directory 上設定其他組態。如需詳細資訊，請參閱[教學課程：使用 Active Directory 域設定跨領域信任](emr-kerberos-cross-realm.md)。

**建立安全組態**

```
aws emr create-security-configuration --name {{LocalKDCWithADTrustSecurityConfig}} \
--security-configuration '{"AuthenticationConfiguration": \
{"KerberosConfiguration": {"Provider": "ClusterDedicatedKdc", \
"ClusterDedicatedKdcConfiguration": {"TicketLifetimeInHours": {{24}}, \
"CrossRealmTrustConfiguration": {"Realm":"{{AD.DOMAIN.COM}}", \
"Domain":"{{ad.domain.com}}", "AdminServer":"{{ad.domain.com}}", \
"KdcServer":"{{ad.domain.com}}"}}}}}'
```

**建立叢集**

```
aws emr create-cluster --release-label {{emr-7.13.0}} \
--instance-count {{3}} --instance-type {{m5.xlarge}} --applications Name={{Hadoop}} Name={{Hive}} \
--ec2-attributes InstanceProfile=EMR_EC2_DefaultRole,KeyName={{MyEC2Key}} \
--service-role EMR_DefaultRole --security-configuration {{KDCWithADTrustSecurityConfig}} \
--kerberos-attributes Realm={{EC2.INTERNAL}},KdcAdminPassword={{MyClusterKDCAdminPassword}},\
ADDomainJoinUser={{ADUserLogonName}},ADDomainJoinPassword={{ADUserPassword}},\
CrossRealmTrustPrincipalPassword={{MatchADTrustPassword}}
```

## 不同叢集上的外部 KDC
<a name="emr-kerberos-example-extkdc-cluster"></a>

下列命令會建立叢集，參考不同叢集之主節點上的叢集專用 KDC，以驗證主體身分。可能需要在叢集上設定其他組態。如需詳細資訊，請參閱[為 Kerberos 驗證的 HDFS 使用者和 SSH 連線設定 Amazon EMR 叢集](emr-kerberos-configuration-users.md)。

**建立安全組態**

```
aws emr create-security-configuration --name {{ExtKDCOnDifferentCluster}} \
--security-configuration '{"AuthenticationConfiguration": \
{"KerberosConfiguration": {"Provider": "ExternalKdc", \
"ExternalKdcConfiguration": {"KdcServerType": "Single", \
"AdminServer": "{{MasterDNSOfKDCMaster:749}}", \
"KdcServer": "{{MasterDNSOfKDCMaster:88}}"}}}}'
```

**建立叢集**

```
aws emr create-cluster --release-label {{emr-7.13.0}} \
--instance-count {{3}} --instance-type {{m5.xlarge}} \
--applications Name=Hadoop Name=Hive \
--ec2-attributes InstanceProfile=EMR_EC2_DefaultRole,KeyName={{MyEC2Key}} \
--service-role EMR_DefaultRole --security-configuration {{ExtKDCOnDifferentCluster}} \
--kerberos-attributes Realm={{EC2.INTERNAL}},KdcAdminPassword={{KDCOnMasterPassword}}
```

## 外部叢集 KDC 搭配 Active Directory 跨領域信任
<a name="emr-kerberos-example-extkdc-ad-trust"></a>

下列命令會建立不含 KDC 的叢集。叢集會參考在其他叢集之主節點上執行的叢集專用 KDC，以驗證主體身分。KDC 與 Active Directory 網域控制站具有跨域信任。可能需要在具有 KDC 的主節點上設定其他組態。如需詳細資訊，請參閱[教學課程：使用 Active Directory 域設定跨領域信任](emr-kerberos-cross-realm.md)。

**建立安全組態**

```
aws emr create-security-configuration --name {{ExtKDCWithADIntegration}} \
--security-configuration '{"AuthenticationConfiguration": \
{"KerberosConfiguration": {"Provider": "ExternalKdc", \
"ExternalKdcConfiguration": {"KdcServerType": "Single", \
"AdminServer": "{{MasterDNSofClusterKDC}}:749", \
"KdcServer": "{{MasterDNSofClusterKDC}}.com:88", \
"AdIntegrationConfiguration": {"AdRealm":"{{AD.DOMAIN.COM}}", \
"AdDomain":"{{ad.domain.com}}", \
"AdServer":"{{ad.domain.com}}"}}}}}'
```

**建立叢集**

```
aws emr create-cluster --release-label {{emr-7.13.0}} \
--instance-count {{3}} --instance-type {{m5.xlarge}} --applications Name={{Hadoop}} Name={{Hive}} \
--ec2-attributes InstanceProfile=EMR_EC2_DefaultRole,KeyName={{MyEC2Key}} \
--service-role EMR_DefaultRole --security-configuration {{ExtKDCWithADIntegration}} \
--kerberos-attributes Realm={{EC2.INTERNAL}},KdcAdminPassword={{KDCOnMasterPassword}},\
ADDomainJoinUser={{MyPrivilegedADUserName}},ADDomainJoinPassword={{PasswordForADDomainJoinUser}}
```