核心用法
servicenow-agent 是一个面向 ServiceNow 平台的安全只读数据访问技能,通过 Table API 实现对企业 IT 服务管理数据的查询能力。该技能采用 Node.js CLI 封装,支持基础认证(Basic Auth)与环境变量配置,严格限定为 GET 操作,杜绝任何写入风险。
主要功能模块:
- 单表查询:
list <table>支持完整 sysparm 参数体系,包括字段筛选、查询条件、分页限制等 - 单记录获取:
get <table> <sys_id>精确定位单条记录 - 批量预设:通过 JSON 配置文件实现多表并发读取,适合定期巡检场景
- 灵活认证:支持
.env文件配置与命令行实时覆盖
显著优点:
1. 只读安全设计:从架构层面阻断 POST/PUT/PATCH/DELETE,消除生产环境误操作风险
2. ServiceNow 原生兼容:完整对接官方 Table API,支持 sysparm_query 复杂查询语法
3. 轻量 CLI 工具:Node.js 单文件执行,无需额外依赖,适合 CI/CD 管道集成
4. 批量效率:specialists 预设机制减少重复命令编写,提升运维查询效率
潜在局限与风险:
- 认证安全:基础认证凭证以明文形式存储于
.env或命令行,存在泄露风险;缺乏 OAuth/SSO 现代认证支持 - 权限粒度:依赖 ServiceNow 平台侧 ACL 控制,技能本身无细粒度权限校验
- 性能瓶颈:大表查询若未合理设置
sysparm_limit,可能导致 API 超时或内存溢出 - 网络暴露:实例域名与凭证可能通过进程列表泄露,建议配合专用只读账号使用
适合人群:
- IT 运维工程师与 ServiceNow 管理员
- 需要集成 ServiceNow 数据到内部报表/监控系统的开发团队
- 遵循变更管理流程、仅需数据可见性而不需操作权限的安全审计角色
安全建议:
建议为技能创建 ServiceNow 平台专用只读账号,启用 IP 白名单,并定期轮换密码;避免在高权限账号下运行该工具。