AI PLAY玩法更新持续收录
← 回到更新流

2026-10-09 · 原文发布日

新员工按职位派发政策签署

Probo SCIM创建新员工触发,先校验邮箱域名、SCIM来源、测试或共享邮箱关键词与姓名,等待数小时确认仍活跃;拉取已发布政策及最新版,有职位时让OpenAI逐份标SEND或SKIP,无职位则全发,最后在Probo请求签署并Slack告知合规。

原文要点

来源是n8n官方模板第20695号(免费,作者Bryan Frimin,Probo为开源合规平台):Probo经SCIM创建用户触发USER_CREATED事件;先校验邮箱格式、可选允许的域名、仅SCIM来源开关、拦截测试/共享邮箱关键词、必填姓名,可疑账号直接停止;等待可配置的小时数后重新拉取该用户,仅在仍活跃时继续;获取Probo中所有已启用且已发布的政策文档及各自的最新发布版本;构造包含用户上下文(含职位,如有)和各政策纯文本摘录的提示词;有职位时用OpenAI聊天模型对每份政策标SEND或SKIP并只保留SEND,无职位则全选;为该用户在Probo逐份请求签署;最后向合规官的Slack频道发确认。设置项含等待时长、允许域名、仅SCIM开关、拦截词表,可自定义为入职首日后发送。

这次做成什么

复刻这条“新员工→校验→等待→按职位挑选政策→请求签署”的审核派发链。因Probo自托管门槛较高,本站设计一个等价练习:用Webhook节点模拟SCIM事件、用本地JSON代替政策库,重点练会校验规则与SEND/S SKIP筛选提示词这两个可迁移件;接真实Probo时按原模板替换触发器与签署节点。

准备什么

  • n8n实例;接真实环境需Probo组织、Probo API凭据及组织ID,并把身份提供商SCIM对接到Probo
  • OpenAI API凭据(或兼容聊天模型)用于按职位筛选
  • 练习模式:一份本地政策JSON(下方材料提供),无需Probo
  • 可选:Slack凭据用于给合规频道发确认

具体怎么做

  1. 模拟触发与校验

    练习用Webhook节点接收模拟的USER_CREATED事件(JSON体见材料)。接一个代码节点做四项校验:邮箱格式正则;如开启允许域名列表则检查邮箱域名;拦截词表(如test、admin、shared、noreply)出现在邮箱本地部分则停止;姓名非空。任一不通过就把执行标记为stopped并结束。

  2. 等待与活跃度复查

    接Wait节点,时长设为可配置值(练习设几分钟即可,生产按模板为数小时)。等待结束后重新拉取用户:真实环境调Probo API,练习用静态JSON代替;仅当user.status仍为active才继续,否则停止。

  3. 取政策并让模型筛选

    练习读取本地政策JSON(每份含id、title、status=published、最新版本号与纯文本摘录)。有job title时,把用户职位与各政策摘录拼进筛选提示词(见材料),要求模型逐份输出SEND或SKIP的JSON;无职位则跳过模型直接全选。

  4. 请求签署与通知

    真实环境对每份SEND的政策版本调Probo的签署请求接口;练习改为把选中清单写入表格或日志。最后向Slack合规频道发一条汇总:新员工邮箱、职位、派发政策数与清单、跳过清单。

可直接复制的材料

模拟SCIM事件与政策库(合成JSON)

本站合成练习数据,公司与人物均为虚构;接真实Probo时由触发器与政策查询节点取代此文件。

{"scimEvent":{"event":"USER_CREATED","user":{"id":"u-1042","email":"lina.qiao@example-corp.com","name":"乔琳娜","jobTitle":"Warehouse Operator","source":"scim","status":"active"}},"policies":[{"id":"pol-01","title":"信息安全通用政策","version":"v3","excerpt":"所有员工须遵守密码、设备与数据分级要求。"},{"id":"pol-02","title":"仓库作业安全规范","version":"v2","excerpt":"叉车作业、货架攀爬与劳保用品佩戴要求,适用于仓储岗位。"},{"id":"pol-03","title":"差旅报销政策","version":"v5","excerpt":"出差审批与票据要求,适用于需要出差的岗位。"},{"id":"pol-04","title":"开源代码使用规范","version":"v1","excerpt":"引入第三方开源组件的审查流程,适用于研发岗位。"}]}

按职位筛选政策提示词(本站重写版)

本站独立撰写,非原模板节点原文;“拿不准默认SEND”是本站为练习设定的保守策略,可按公司合规要求改为人工复核。

你是合规政策派发助手。根据新员工的职位,判断每份政策是否需要其签署。

员工:{name}({email})
职位:{job_title}

政策清单(JSON数组,含id、title、excerpt):
{policies}

判断规则:
1. 全员通用政策(信息安全、行为准则类)一律SEND。
2. 岗位专属政策仅当职位明显属于适用范围时SEND,否则SKIP。
3. 拿不准时SEND,宁可多发不可漏发,并在reason里注明“不确定,默认发送”。
4. 严格输出JSON数组,每项:{id, decision(SEND或SKIP), reason(一句话中文)},不要输出其他文字。

输入与输出示例

本站虚构演示,模型输出为示意,未调用真实API。

输入

Webhook收到模拟事件:乔琳娜,lina.qiao@example-corp.com,职位Warehouse Operator;政策库为材料中四份(信息安全通用、仓库作业安全、差旅报销、开源代码规范)。

对应输出

筛选结果示意:[{"id":"pol-01","decision":"SEND","reason":"信息安全为全员通用政策"},{"id":"pol-02","decision":"SEND","reason":"仓储岗位直接适用"},{"id":"pol-03","decision":"SKIP","reason":"仓储操作员通常无需出差"},{"id":"pol-04","decision":"SKIP","reason":"非研发岗位"}];Slack通知:新员工lina.qiao@example-corp.com(Warehouse Operator)派发2份:信息安全通用政策v3、仓库作业安全规范v2;跳过2份。

做完检查这些

  • 邮箱含拦截词(如test-alice@…)或域名为允许列表外时执行在校验步停止且不取政策
  • 无job title的账号不调用模型,直接全选所有published政策
  • 模型输出与政策id一一对应,SKIP项不进入签署清单
  • 等待后用户状态变为deactivated时流程停止,不发起签署

容易卡住的地方

  • 触发依赖身份提供商先把SCIM对接到Probo,仅装n8n模板不会收到事件
  • 等待时长是业务设计:模板默认可配置,作者建议可改成入职首日后再发,练习别照搬生产时长
  • 政策纯文本摘录过长会推高模型调用成本,必要时截断但保留适用范围段落
  • 仅SCIM开关开启后,手工在Probo建的账号会被拦下,测试账号要从身份提供商侧建
  • 签署按政策最新发布版本发起,政策更新后旧执行中的版本号可能已过期

原文与作者资料 ↗

本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。

原文标题
Send scoped onboarding policy signatures with Probo and OpenAI
原作者
Bryan Frimin
原始发布日期
2026-10-09T10:18:28.518Z
来源
https://n8n.io/workflows/20695