EMR Serverless Spark 支持通过 IP 白名单限制工作空间的访问来源,满足企业安全合规要求。通过 RAM 权限策略可以限制控制台和 API 的访问 IP,通过工作空间内置 IP 白名单可以限制 Spark UI 和 Ray Dashboard 的访问 IP。本文介绍两种 IP 白名单的适用场景和配置方法。
功能概述
EMR Serverless Spark 提供以下两种 IP 白名单机制,适用于不同的访问控制场景:
方式 | 控制范围 | 配置粒度 | 适用场景 |
RAM 权限策略 IP 限制 | 控制台访问、API 调用 | 工作空间级别 | 限制用户从指定网络环境访问 EMR Serverless Spark 控制台或调用 API |
工作空间内置 IP 白名单 | Spark UI、Ray Dashboard 访问 | 工作空间级别 | 限制用户从指定网络环境访问 Spark UI、Ray Dashboard 查看作业详情 |
使用限制
工作空间内置 IP 白名单最多支持添加 20 条 IP 地址。
IP 地址支持以下格式:
具体 IP 地址,例如
192.168.0.1。CIDR 格式的 IP 地址段,例如
192.168.0.0/24。
说明请勿将单个 IP 地址写成 CIDR 形式(例如将
192.168.0.1写为192.168.0.1/32)。工作空间内置 IP 白名单配置后约 5 分钟内生效。
如果使用 RAM 用户配置工作空间内置 IP 白名单,需要具备白名单管理权限。SparkFullAccess 权限策略默认包含该权限。
通过 RAM 权限策略限制访问 IP
通过 RAM 自定义策略,可以按工作空间粒度限制用户仅从指定 IP 地址访问 EMR Serverless Spark 控制台和 API。
关于 RAM 权限策略的更多信息,请参见权限策略基本元素。关于 EMR Serverless Spark 的 RAM 授权,请参见RAM用户授权。
策略示例一:仅允许指定 IP 访问
以下策略允许 RAM 用户仅从 192.0.2.0/24 和 203.0.113.2 访问工作空间 ws1:
{
"Statement": [
{
"Action": "emr-serverless-spark:*",
"Effect": "Allow",
"Resource": [
"acs:emr-serverless-spark:*:*:ws1"
],
"Condition": {
"IpAddress": {
"acs:SourceIp": [
"192.0.2.0/24",
"203.0.113.2"
]
}
}
}
],
"Version": "1"
}策略示例二:拒绝非指定 IP 访问
以下策略先允许 RAM 用户访问所有工作空间,然后拒绝来自 192.0.2.0/24 和 203.0.113.2 以外的 IP 地址的访问请求。如果需要为 RAM 用户授予多个工作空间权限,同时限制访问 IP,推荐使用此方式。
{
"Statement": [
{
"Action": "emr-serverless-spark:*",
"Resource": "*",
"Effect": "Allow"
},
{
"Action": "emr-serverless-spark:*",
"Effect": "Deny",
"Resource": "*",
"Condition": {
"NotIpAddress": {
"acs:SourceIp": [
"192.0.2.0/24",
"203.0.113.2"
]
}
}
}
],
"Version": "1"
}请将示例中的 IP 地址替换为实际允许访问的 IP 地址或地址段。
配置工作空间 IP 白名单
工作空间内置 IP 白名单用于限制 Spark UI 和 Ray Dashboard 的访问来源。开启后,仅白名单内的 IP 地址可以访问该工作空间的 Spark UI 和 Ray Dashboard。
IP 白名单功能默认关闭,即所有 IP 地址均可访问 Spark UI 和 Ray Dashboard。
添加白名单
在左侧导航栏,选择EMR Serverless > Spark。
在目标工作空间的操作列,选择 更多操作 > IP白名单。
在 IP白名单 对话框中,添加允许访问的 IP 地址。
单击 添加,输入 IP 地址或 CIDR 地址段。
系统会自动校验 IP 地址格式是否有效。
最多支持添加 20 条 IP 地址。
单击 确定。
配置完成后,约 5 分钟内生效。生效后,仅白名单中的 IP 地址可以访问该工作空间的 Spark UI 和 Ray Dashboard。
修改或删除 IP 白名单
在目标工作空间的操作列,选择 更多操作 > IP白名单。
根据需要执行以下操作:
修改:删除旧的 IP 地址,单击 添加 输入新的 IP 地址,然后单击 确定。
删除单条:单击目标 IP 地址右侧的删除图标,然后单击 确定。
关闭白名单:删除所有 IP 地址后单击 确定,白名单功能恢复为关闭状态,所有 IP 地址均可访问 Spark UI 和 Ray Dashboard。