新闻详情

新闻详情

首页 / 资讯中心 / 详情

OneUptime 工作流配置与安全指南:启用控制、机密管理、导入导出与运行时限制全解析

发布时间:2026/9/20 16:11:20来源:尧图网络
OneUptime 工作流配置与安全指南:启用控制、机密管理、导入导出与运行时限制全解析
OneUptime 工作流配置与安全指南启用控制、机密管理、导入导出与运行时限制全解析【免费下载链接】oneuptimeComplete open-source monitoring and observability platform.项目地址: https://gitcode.com/GitHub_Trending/on/oneuptime导读本指南围绕 OneUptime 工作流Workflow模块的配置项与安全边界展开系统讲解如何通过Enabled 开关控制工作流上线节奏、用所有者/标签组织大量工作流、以机密变量保护敏感凭证以及导入导出、运行时超时、嵌套调用限制、Webhook 鉴权、AI 组件数据边界、RBAC 权限与套餐配额等关键主题。读完本文你将掌握在生产环境将工作流指向真实流量之前需要检查的全部设置与安全防护手段并能结合源码理解这些限制的底层实现原理。本文对应仓库文档configuration.md英文版与 波斯语版工作流运行核心实现在 RunWorkflow.ts。一、工作流的启用与停用Enabled 开关每个工作流在Settings中都带有一个名为Enabled的开关。当它处于关闭状态时工作流不会执行——来自Webhook 的调用、定时触发的时刻、以及 OneUptime 事件都会全部被忽略。所有新建的工作流默认从禁用状态开始。把这一开关当作工作流的「准备就绪」闸门推荐的上线流程是构建工作流Build the workflow。在Builder上用符合真实场景的值点击Run Workflow试运行。查看Logs——确认每一个块Block都按预期到达了目标位置。最后再将Enabled开关打开。值得注意的是关闭工作流并不会终止已经在进行中的运行它只会阻止新的运行启动。这一语义在源码中也有印证——在 RunWorkflow.ts 中运行器在派发执行任务时会检查workflow.isEnabled未启用的工作流不会被调度执行。二、所有者Owners与标签Labels2.1 所有者所有者是被列为该工作流负责人的用户和团队。他们可以获得对该工作流的访问权限并且可以选择在工作流失败时接收通知。在Settings → Owners中配置。2.2 标签标签是用于给工作流分组的标记。工作流列表支持按标签过滤这能让一个繁忙的项目例如按团队、集成或环境组织的工作流更容易导航。2.3 自动化规则标签规则Label Rules位于Workflows → Settings → Label Rules可基于名称或描述模式自动为新工作流打标签。所有者规则Owner Rules位于Workflows → Settings → Owner Rules可自动为新工作流分配所有者。这两类规则在导入工作流时同样生效——导入的工作流会被当作手工创建的一样应用你项目自身的标签与所有者规则。三、机密Secrets与全局变量3.1 什么是机密变量如果某个全局变量Global Variable包含敏感内容请将其标记为secret。保存后该值会从常规的 API 与 UI 读取中隐藏同时工作流的日志系统会在运行日志持久化之前擦除scrub已解析的机密值。3.2 适合作为机密变量的内容外部服务的API 密钥认证令牌Authentication tokensWebhook 签名密钥任何你不希望拥有只读权限的人看到的内容。3.3 不要在块中硬编码机密千万不要把机密直接粘贴进某个块里——像Authorization: Bearer eyJh...这样的值会原样出现在工作流图和运行日志中等于公开泄露。正确做法是使用模板变量引用例如{{global.variables.MY_SECRET}}3.4 源码层面的机密擦除机制机密保护不只是 UI 层的展示逻辑运行器在持久化日志前会做系统性清洗。在 RunWorkflow.ts 中可以找到完整的实现链路通过getSecretWorkflowVariableValues(variables)收集全部机密变量的解析值RunWorkflow.ts使用redactSecretsFromString(log, secrets)对每条日志做机密值替换RunWorkflow.ts通过redactWorkflowStepTrace(this.stepTrace, secrets)对结构化追踪数据进行递归清洗RunWorkflow.ts。其中redactSecretValues会递归遍历对象树将任何命中机密值的字符串键与值一并替换RunWorkflow.ts。注释还特别强调了一个隐蔽的风险点机密可以是任何字符串包括像steps这样的模式词RunWorkflow.ts因此清洗逻辑必须覆盖整个结构化数据而不能只处理叶子字符串否则残留值仍可能把机密泄露进持久化的追踪数据中。此外源码还保证secrets 永远不会进入resumeData恢复数据RunWorkflow.ts避免在运行中断恢复时把机密带到持久化状态里。四、工作流的导出与导入4.1 跨项目/跨环境迁移工作流可以以JSON 文件形式在项目之间、或在本机自托管self-hosted安装与 OneUptime Cloud 之间迁移。导出打开工作流在Settings下使用Export Workflow。也可以在工作流列表中多选若干工作流一次性导出到同一个文件中。导入在Workflows列表页点击Import JSON选择任意 OneUptime 项目导出的文件即可。4.2 文件包含与刻意排除的内容导出文件会保留工作流的名称、描述、启用状态和完整图graph。同时它刻意不包含以下内容不包含的内容后果与处理方式Webhook 密钥工作流创建时会生成全新的密钥因此导入后的工作流会拥有不同的 Webhook URL所有调用原地址的系统都必须重新指向新地址。全局变量读取{{global.variables.MY_SECRET}}的块会保留引用但变量值不在文件里。在运行导入的工作流之前务必先在目标项目中创建好对应变量。所有者与标签目标项目自身的标签规则与所有者规则会对导入的工作流生效如同手工创建一般。4.3 导入后的默认状态与重复复制行为导入的工作流总是以「禁用」状态创建即使它在导出时是启用状态——因为它的图可能引用了目标项目中不存在的监视器、值班策略或其他工作流。推荐流程是审阅 → 启用 → 用Run Workflow测试 → 确认无误后再保持开启。复制Duplicate工作流的行为与此相同因此副本永远不会在你编辑完成之前就与原件并排开始触发执行避免意外告警。4.4 安全警示图是原样随行的由于图graph是逐字原样迁移的任何直接输入到块里的内容都会跟着文件走。这正是要把凭证放在机密变量中的实践理由导出一个硬编码了令牌的工作流就等于把这个令牌交到了任何一个拿到该文件的人手里。五、单次运行可以持续多久运行时超时每次执行尝试都有一个墙钟时间wall-clock截止期限。运行器在每个组件执行前和执行后都会检查该期限一旦控制权返回时发现运行已超期就将其标记为Timeout。需要特别理解的是执行网络或脚本类工作的组件需要有自己的超时设置因为运行器无法强制中断任意组件代码。这意味着组件的内部超时与整个运行的整体超时是两层独立的防护。AI 组件Generate Text with AI则从其剩余的工作流时间中推导出对 LLM 提供商的请求超时并以 60 秒为上限同时预留出少量余量用于日志记录与清理。六、调用其他工作流的深度限制Execute Workflow组件允许一个工作流调用另一个工作流。为了防止意外的循环调用例如工作流 A 调用 BB 又调用 A系统对调用链的深度设置了上限。一旦运行超过该上限就会以一条明确的错误信息结束。如果确实需要很长的调用链例如「每次运行处理一个条目」的批处理任务通常更简单的做法是在单个工作流内部用 Custom Code 组件编写循环逻辑而不是层层嵌套调用。七、Webhook 安全Webhook 触发器会为工作流提供一个唯一 URL。任何知道该 URL 的人都能触发它。为防范意外或恶意的调用方把 URL 当作密码一样对待不要公开分享也不要提交到公共仓库。对敏感工作流使用共享令牌校验要求调用系统在请求头中携带共享令牌例如X-Webhook-Token并在执行任何重要操作之前用Conditions类型的块校验该令牌。预期的令牌应保存为机密变量。对极度敏感的工作流与其使用公开的 Webhook不如优先使用 OneUptime 事件触发器 手动导入步骤的组合。八、出站网络访问API 块以及其他HTTP 类块的请求是从 OneUptime 侧发出的如果你自托管请确保你的安装环境能够访问到你要调用的外部服务。如果你使用OneUptime Cloud其出站 IP 范围已在 IP Addresses 文档中列出以便你在对端如防火墙、云安全组放行这些 IP。九、AI 组件Generate Text with AI的安全与边界9.1 请求路由与配置位置Generate Text with AI组件会通过 OneUptime已配置的 LLM 网关发送请求。它优先使用项目默认的 LLM 提供商当项目未配置提供商时则回退到安装级全局提供商。提供商在Project Settings → AI → LLM Providers中配置。绝不应把提供商 API 密钥或自定义模型端点写进工作流本身——应将其保留在提供商的配置中。9.2 严格的数据输出边界AI 组件有明确的数据外发边界OneUptime 会向已配置的提供商发送一段固定的安全系统提示词System Instructions、Prompt与Context的分段序列化内容。Context 会在用户消息末尾的显式标记符之后追加固定提示词明确要求模型把该标记符之后的任何内容都视为不可信数据——即使其中带有标签或指令以此对抗提示注入。不会自动附加触发负载、工作流历史、其他组件的输出、项目记录、遥测数据或机密。数据只有在被显式引用到上述三类输入之一时才会外发。不会发送任何工具定义tool definitions或提供商的本地能力字段。模型无法通过该组件查询 OneUptime、发起 HTTP 请求或修改项目数据。已配置的提供商/模型构成了一条信任管理边界——需要完全离线生产的安装应选择无本地检索能力、且由提供商托管的模型。提供商层面的额外参数被限制在一个仅供生成generation-only的虚拟设置字段白名单内。它们不能替换工作流消息、不能添加工具或提供商的本地 Web/数据源检索、不能启用非文本模式、不能请求多个候选项、不能开启流式输出、不能持久化请求到提供商的存储、也不能提高该组件的输出 token 上限。未知的未来能力字段默认会被丢弃。9.3 日志与可见性System Instructions、Prompt、Context 以及模型生成的 Response这些值会从自动化的工作流运行日志中清洗掉。它们在运行期间对下游组件仍然可用但如果你把它们嵌入到另一个组件中则该组件的日志策略会生效——它可能记录已解析的值。把复用视为一次显式的披露。提供商/模型名称、token 数量、LLM 日志 ID 以及安全的错误消息对运维与账单是可见的。提供商的原始错误响应体raw error bodies会从工作流日志、LLM 日志、应用日志和追踪中排除——因为提供商可能会在错误体中回显请求内容。9.4 机密变量与 AI 数据出境任何被引用的变量都视为你有意发送给提供商的数据。尤其注意除非该披露是必要的且提供商已获准接收否则不要在 Prompt 或 Context 中包含全局机密变量。**本地自托管提供商如 Ollama**可以把请求保留在你自己的基础设施内托管型提供商则意味着请求将受该提供商的数据处理条款约束。9.5 调用记录、计费与内置配额每次调用都会记录在Project Settings → AI → AI Logs中包含提供商、模型、状态、token 数、成本与账单信息。Prompt/Response 预览与提供商原始错误细节不会存入 AI 日志。通过付费的全局提供商发起的调用会消耗项目的AI 信用额度credit balance。工作流 AI 也会计入项目自带的每日 AI token 预算daily AI token budget预算耗尽后该组件将不调用模型而直接走Error分支。需要项目 AI 处于启用状态。在 OneUptime Cloud 上订阅必须处于已付费状态并且需要Growth 计划或包含 Growth 能力的计划关闭计费的自托管安装则没有这一计划门槛。9.6 内置硬性限制一览内置的硬性限制用于确保无人值守的调用是有限的限制项取值System Instructions Prompt Context 序列化总长上限50,000 字符Temperature0到1Maximum Output Tokens1到4096默认1024提供商请求重试仅尝试1 次提供商请求超时上限60 秒每项目并发工作流 AI 调用最多3 个超出走Error分支可在后续运行中重试验证、配置、访问、预算、余额、并发、提供商以及超时等各类失败都会走Error分支并填充Error输出。在将工作流指向生产流量之前务必先接通这条错误路径例如为 Error 分支挂上告警或通知块。十、访问控制RBAC 权限工作流遵循你项目的基于角色的访问控制RBAC。相关的权限项包括权限作用Create / Read / Edit / Delete Workflow对工作流本身的基础操作权限Run Workflow手动运行工作流或通过 API 触发工作流Read Workflow Log查看运行记录Read / Create / Edit / Delete Workflow Variable控制全局变量列表推荐的实践是大多数工程师应拥有对工作流的创建/编辑/读取权限但不应拥有对变量的权限。变量尤其是机密变量的编辑权限应仅授予负责管理项目机密的人员——因为谁拥有变量读写权限谁就能看到机密内容。十一、套餐限制Plan LimitsOneUptime Cloud 会在较小的套餐中限制每月可用的运行次数。你当前的额度会在Project Settings → Billing中展示。一旦达到上限新的触发器将被拒绝直到下一个计费周期开始。自托管安装没有这项限制。十二、什么时候工作流不是合适的工具工作流是为轻量粘合glue任务设计的以下场景应改用其他方案重型计算或大数据集——工作流不适合做数字运算。应在你自己的基础设施中执行重活让工作流只负责触发它。长时间运行的被动计算——一次执行尝试应当快速结束。对于「做 A → 等两小时 → 做 B」这类被动延迟应使用Sleep组件它会持久化运行并在之后恢复而不会一直占用一个 worker。需要人工介入的分步事件响应——这正是 Runbooks 的用途。工作流是为无人值守的自动化设计的。继续阅读工作流总览——整体架构与使用场景。工作流组件——逐个块的组件参考。Runbooks——何时应改用 Runbook。【免费下载链接】oneuptimeComplete open-source monitoring and observability platform.项目地址: https://gitcode.com/GitHub_Trending/on/oneuptime创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

双目SLAM+AGV导航+机械臂规划:移动操作机器人仿真全解析 2026/9/20 16:59:30

双目SLAM+AGV导航+机械臂规划:移动操作机器人仿真全解析

简介:这份资源汇集双目三维视觉SLAM建图、MATLAB的AGV路径规划导航避障、六轴机械手臂建模与路径规划仿真三大机器人核心方向,面向机器人技术学习者、研发工程师及自动化领域研究人员,帮助解决环境感知、自主导航与精确操作中的关键问题。包体…

阅读更多 →
报 401 的 Hermes Agent?TaoToken 这样填 Base URL 2026/9/20 16:59:30

报 401 的 Hermes Agent?TaoToken 这样填 Base URL

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Claude Code确认弹窗怎么关?两套权限配置方案实测 2026/9/20 16:59:30

Claude Code确认弹窗怎么关?两套权限配置方案实测

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Harness工程实战:让大模型从能用走向稳定落地的关键 2026/9/20 16:59:30

Harness工程实战:让大模型从能用走向稳定落地的关键

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
2025 AI眼镜赛道提速:技术路线分化、大模型驱动与市场格局解析 2026/9/20 16:59:30

2025 AI眼镜赛道提速:技术路线分化、大模型驱动与市场格局解析

简介:《2025年中国AI眼镜行业研究报告》是一份兼顾技术深度与市场广度的行业全景资料,适合研发人员、投资机构及市场营销人士阅读。报告分为行业基本概念、产业链拆解、政策法规、行业观点与分析四大部分。首先厘清AI眼镜与增强现实、虚拟现实、混合现实…

阅读更多 →
CANN ops-math 算子 aclnnHistc 接口详解:张量直方图统计的完整实践指南 2026/9/20 16:56:30

CANN ops-math 算子 aclnnHistc 接口详解:张量直方图统计的完整实践指南

CANN ops-math 算子 aclnnHistc 接口详解:张量直方图统计的完整实践指南 【免费下载链接】ops-math 本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。 项目地址: https://gitcode.com/cann/ops-math 导读 aclnnHistc 是 CANN …

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞