对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。
Docs 菜单

Stream Processing 权限操作

权限操作定义了数据库用户或自定义角色可以在 Stream Processing 工作区中的流处理器上执行的操作。仅将用户需要的权限操作分配给该用户或自定义角色。

所有权限操作均适用于整个 Stream Processing 工作区。您无法将其作用范围限定为 Stream Processing 工作区内的单个命名处理器。所有操作仅在 Atlas Stream Processing 实例上有效。

具有 atlasAdminreadWriteAnyDatabase 角色的用户可以执行所有 Stream Processing 操作。具有 readAnyDatabase 角色的用户可以执行只读子集。有关详情,请参阅 内置角色总结。

如果用户缺少对某个操作的所需权限,命令将返回 MongoServerError[Unauthorized]: not authorized: missing privilege for action <privilege-action> on resource <resource>

要创建具有特定 Atlas Stream Processing 权限操作的自定义角色,请参阅 添加自定义角色。

下表显示包含 Atlas Stream Processing 权限操作的内置角色。

内置角色
包含的权限操作

所有 Atlas Stream Processing 权限操作

getStreamProcessor, listStreamProcessors , streamProcessorStats , listStreamConnections

所有 Atlas Stream Processing 权限操作

createStreamProcessor

授权 sp.createStreamProcessor() 方法,该方法定义具有其管道和选项的新命名流处理器。

分配此操作以允许用户在启动命名流处理器之前创建命名流处理器。

注意

Atlas Stream Processing 在创建时验证层级格式。Atlas Stream Processing 在启动处理器时实施最大层级大小,而不是在创建处理器时实施。

dropStreamProcessor

授权 sp.processor.drop() 方法,该方法将永久删除命名的流处理器。

将此操作分配给用户,以允许其删除 Stream Processing 处理器。具有此操作的用户可以删除 Stream Processing 工作区中的任何处理器。没有任何机制可以将此操作限制为特定的命名处理器。

getStreamProcessor

授权 getStreamProcessor 命令,该命令用于检索命名流处理器的状态和配置。结果包括名称、状态、管道、错误消息和最后状态变更时间。

分配此操作以允许用户检查特定流处理器的状态。

listStreamConnections

授权 sp.listConnections() 方法,该方法列出 Stream Processing 工作区连接注册表中的所有连接。根据连接类型,结果可能包括连接名称、类型、集群名称、项目 ID、区域、启动服务器和存储帐户字段。

分配此操作以允许用户查看Stream Processing工作区中可用于流处理器的数据源和汇集器。

listStreamProcessors

授权 sp.listStreamProcessors() 方法,该方法列出 Stream Processing 工作区中的所有流处理器。结果可以包括名称、ID、最后修改时间、状态、层级、错误消息、工作进程计数、管道、死信队列(DLQ)和最后状态变更时间。您可以传递过滤器来缩小结果。

分配此操作以允许用户在 Stream Processing 工作区中发现所有 Stream Processing 处理器。驱动程序和工具也需要此操作来填充处理器列表。该命令返回 Stream Processing 工作区中的所有处理器。没有机制将可见性限制为特定的命名处理器。

modifyStreamProcessor

授权 sp.processor.modify() 方法,该方法修改现有的流处理器。

分配此操作允许用户更新流处理器的配置,而无需删除和重新创建。

processStreamProcessor

授权 processStreamProcessor 命令,该命令以一次性模式运行流处理管道,而不创建命名处理器。

将此操作分配给用户,以允许用户以一次性模式运行管道。

注意

要运行 sp.process() mongosh 方法,还需要分配 sampleStreamProcessor 权限操作。sp.process() 在内部使用示例机制,并且需要两种权限。

sampleStreamProcessor

授权 sp.processor.sample() 方法和根本的 startSampleStreamProcessorgetMoreSampleStreamProcessor 命令。使用 startSampleStreamProcessor 在命名的运行流处理器上开始采样会话。使用 getMoreSampleStreamProcessor 检索下一批结果。当 batchSize 为 0 或省略时,默认批处理大小为 5。

将此操作分配给用户,以便允许用户预览运行中的流处理器的实时输出或对示例结果进行分页。采样会话附加到处理器的实时输出。处理器仅在运行时产生结果。

startStreamProcessor

授权 sp.processor.start() 方法,该方法启动或恢复命名的流处理器。

分配此操作允许用户启动或恢复命名的流处理器。

stopStreamProcessor

授权 sp.processor.stop() 方法,该方法可以停止运行的命名流处理器。

分配此操作,以允许用户暂停或停止运行的流处理器。

streamProcessorStats

授权 sp.processor.stats() 方法,该方法使用 getStreamProcessorStats 命令来检索 Stream Processor 的操作指标。当没有可用指标时,Atlas Stream Processing 会省略 stats 文档。传递 verbose: true 以获取更多详细信息。详细模式无需单独的权限。

分配此操作以允许用户监控流处理器的吞吐量、错误率或操作指标。