Atlas提供了一个系统,用于在 组织、项目和数据库级别管理用户权限。 Atlas Stream Processing扩展了该系统,提供了特定于流处理任务的额外角色和特权,以及将用户权限限制为特定流处理工作区的能力。
组织和项目访问权限
用户在项目级别管理流处理工作区及其关联的连接注册表。 Atlas Stream Processing为此提供了 角色。具有此角色的用户可以执行任何流处理工作区或连接注册表管理动作,并管理项目中的数据库和数据库用户。将此角色分配给用户,使他们启用执行配置Atlas StreamProject Stream Processing Owner Processing项目所需的所有操作,而无需根据最小权限原则原则授予对功能的任何不必要的权限。
如有必要,您可以以具有Project Owner或Organization Owner角色的用户身份执行Project Stream Processing Owner角色授权的任何操作。
流处理工作区访问
您可以访问权限现有的流处理工作区并以数据库用户管理流处理器,这与访问权限Atlas 集群类似。分配给数据库用户的角色和操作决定了他们可以在流处理工作区中的流处理器上执行哪些操作。 Atlas Stream Processing提供以下权限操作:
processStreamProcessorcreateStreamProcessorstartStreamProcessorstopStreamProcessordropStreamProcessorlistStreamProcessorssampleStreamProcessorstreamProcessorStatslistConnections
您可以将这些权限操作准确分配给所需的数据库用户或自定义角色。 或者,具有atlasAdmin或readWriteAnyDatabase权限的数据库用户可执行所有这些操作。
网络
Atlas Stream Processing 支持连接到 Atlas 集群和外部流媒体数据源,例如 Apache Kafka。Atlas 内的连接不需要手动配置。要连接到外部流数据源,必须将 Atlas IP 地址添加到外部流数据源的访问列表中。
要确定必要的 Atlas IP 地址,请运行以下命令:
curl -H 'Accept: application/vnd.atlas.2023-11-15+json' -s \ 'https://cloud.mongodb.com/api/atlas/v2/unauth/controlPlaneIPAddresses'
这将返回可用Atlas IP地址的列表,按提供商和地区分组。确定部署目标流处理工作区的提供商-地区对的所有出站IP地址,并将这些地址添加到外部数据源的访问权限列表中。要学习;了解更多信息,请参阅允许访问 Atlas 控制面或从Atlas控制面进行访问。
配置与外部流数据源的连接时,您可以选择通过公有 IP 地址或通过 VPC 对等连接进行访问。要了解更多信息,请参阅 将连接添加到连接注册表。
限制对特定流处理工作区的访问
默认情况下,具有Atlas Stream Processing权限动作的用户可以对所有流处理工作区执行关联操作。您可以将这些权限的应用程序限制到特定的流处理工作区。
单击要修改权限的用户所在行的Edit 。
在模式窗口中,打开标有Restrict Access to Specific Clusters /Federated Database Instances/Stream Processing Workspaces的开关。
查找要授予用户权限的流处理工作区的名称。选中名称旁边的复选框,以授予用户该流处理工作区的权限。取消选中该复选框可拒绝该流处理工作区的用户权限
执行配置文件
您可以将连接到Atlas数据库时使用的数据库用户角色配置为$source 或$merge 接收器。这样,您就可以防止特定于Atlas Stream Processing的数据库用户通过配置流处理工作区及其连接的高特权Atlas 用户的凭证间接访问权限托管该数据库的集群。
注意
根据最小权限原则,定义仅具有用户执行所需操作所需权限的自定义角色。
AtlasGoStream Processing在Atlas中,Go项目的 页面。
如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含项目的组织。
如果尚未显示,请从导航栏的 Projects 菜单中选择您的项目。
在侧边栏中,单击 Streaming Data 标题下的 Stream Processing。
此时将显示 Stream Processing 页面。
在要配置的流处理工作区的窗格中,单击 Configure。
单击Connection Registry标签页。 在要配置的 Atlas 数据库连接所在行,单击。
从Execute As下拉菜单中,选择连接到数据库时要使用的角色。
审核
Atlas Stream Processing审核允许管理员追踪其流处理工作区上的身份验证和实体管理事件。每次给定的流处理工作区上发生可审核事件时, Atlas Stream Processing都会将该事件写入该流处理工作区的日志中。日志在其所属的流处理工作区的生命周期内持续存在,并且Atlas Stream Processing从不截断旧事件。如果删除流处理工作区,则属于该流处理工作区的日志会再保留 30 天。
要下载流处理工作区的Atlas 审核日志,请参阅下载审核日志。
Atlas Stream Processing 支持审核以下身份验证事件:
事件 | 说明 |
|---|---|
身份验证成功 | 当用户成功连接到流处理工作区时发生 |
身份验证失败 | 当用户无法连接到流处理工作区时发生 |
连接终止 | 当用户关闭连接时发生 |
Atlas Stream Processing 支持审核以下实体管理事件:
startStreamProcessor | 在用户启动流处理器时发生 |
|---|---|
createStreamProcessor | 当用户创建流处理器时发生 |
stopStreamProcessor | 当用户停止流处理器时发生 |
dropStreamProcessor | 当用户删除流处理器时出现 |
.process() | 当用户发出 .process () 时发生调用 |
.sample() | 当用户发出 .sample () 时发生调用 |
已访问审核日志 | 当用户尝试下载审核日志时发生 |