创建 EMR 安全配置 - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

创建 EMR 安全配置

为 Apache 游侠创建亚马逊 EMR 安全配置

在启动与 Apache Ranger 集成的 Amazon EMR 集群之前,请使用您在配置 IdP 和 Lake Formation 之间的信任关系. 在启动集群时指定此安全配置。

Console

要创建一个安全配置来指定Amazon游侠集成选项

  1. 在 Amazon EMR 控制台中,选择安全配置,然后Create.

  2. 键入安全配置的 Name (名称)。在创建集群时,使用此名称来指定安全配置。

  3. UNTERAmazon游侠集成中,选择启用 Apache Ranger 管理的精细访问控制.

  4. 选择您的Apache 游侠的 IAM 角色以应用。有关更多信息,请参阅 用于与 Apache 游侠本机集成的 IAM 角色

  5. 选择您的其他 IAM 角色Amazon服务以应用。

  6. 通过输入管理服务器的密钥管理器 ARN 和地址,将插件配置为连接到 Ranger 管理服务器。

  7. 选择要配置游侠插件的应用程序。填写包含插件专用 TLS 证书的秘密管理器 ARN。

    如果您没有配置 Apache Spark 或 Apache Hive,并且它们被选为集群的应用程序,请求将失败。

  8. 根据需要设置其他安全配置选项,然后选择Create (创建)。您必须启用使用集群专用或外部 KDC 的 Kerberos 身份验证。有关更多信息,请参阅 配置 EMR 安全性

注意

目前,您不能使用控制台创建指定Amazon游侠集成选项 Amazon GovCloud (US) Region . 安全配置可以使用 CLI 完成。

CLI

创建 Apache 游侠集成的安全配置

  1. <ACCOUNT ID> 替换为您的 Amazon 账户 ID。

  2. Replace<REGION>与资源所在的区域一起使用。

  3. TicketLifetimeInHours 指定一个值,用于确定 KDC 发放的 Kerberos 票证的有效期间。

  4. 指定游侠管理服务器的地址AdminServerURL.

{ "AuthenticationConfiguration": { "KerberosConfiguration": { "Provider": "ClusterDedicatedKdc", "ClusterDedicatedKdcConfiguration": { "TicketLifetimeInHours": 24 } } }, "AuthorizationConfiguration":{ "RangerConfiguration":{ "AdminServerURL":"https://_<RANGER ADMIN SERVER IP>_:6182", "RoleForRangerPluginsARN":"arn:aws:iam::_<ACCOUNT ID>_:role/_<RANGER PLUGIN DATA ACCESS ROLE NAME>_", "RoleForOtherAWSServicesARN":"arn:aws:iam::_<ACCOUNT ID>_:role/_<USER ACCESS ROLE NAME>_", "AdminServerSecretARN":"arn:aws:secretsmanager:_<REGION>_:_<ACCOUNT ID>_:secret:_<SECRET NAME THAT PROVIDES ADMIN SERVERS PUBLIC TLS CERTICATE WITHOUT VERSION>_", "RangerPluginConfigurations":[ { "App":"Spark", "ClientSecretARN":"arn:aws:secretsmanager:_<REGION>_:_<ACCOUNT ID>_:secret:_<SECRET NAME THAT PROVIDES SPARK PLUGIN PRIVATE TLS CERTICATE WITHOUT VERSION>_", "PolicyRepositoryName":"<SPARK SERVICE NAME eg. amazon-emr-spark>" }, { "App":"Hive", "ClientSecretARN":"arn:aws:secretsmanager:_<REGION>_:_<ACCOUNT ID>_:secret:_<SECRET NAME THAT PROVIDES Hive PLUGIN PRIVATE TLS CERTICATE WITHOUT VERSION>_", "PolicyRepositoryName":"<HIVE SERVICE NAME eg. Hivedev>" }, { "App":"EMRFS-S3", "ClientSecretARN":"arn:aws:secretsmanager:_<REGION>_:_<ACCOUNT ID>_:secret:_<SECRET NAME THAT PROVIDES EMRFS S3 PLUGIN PRIVATE TLS CERTICATE WITHOUT VERSION>_", "PolicyRepositoryName":"<EMRFS S3 SERVICE NAME eg amazon-emr-emrfs>" } ], "AuditConfiguration":{ "Destinations":{ "AmazonCloudWatchLogs":{ "CloudWatchLogGroup":"arn:aws:logs:<REGION>:_<ACCOUNT ID>_:log-group:_<LOG GROUP NAME FOR AUDIT EVENTS>_" } } } } } }

策略存储器名称是 Apache 游侠管理员中指定的服务名称。

使用以下命令创建 Amazon EMR 安全配置。将安全配置替换为您选择的名称。创建集群时按名称选择此配置。

aws emr create-security-configuration \ --security-configuration file://./security-configuration.json \ --name security-configuration

配置其他安全功能

要将 Amazon EMR 与 Apache Ranger 安全集成,请配置以下 EMR 安全功能:

  • 使用集群专用或外部 KDC 启用 Kerberos 身份验证。有关说明,请参阅使用 Kerberos 身份验证

  • (可选)启用传输中或静态加密。有关更多信息,请参阅 加密选项

有关更多信息,请参阅 Amazon EMR 中的安全性