在基础安全的工作中,必不可少的会有安全设备运营,活多苦累不用说,还难出成绩。在刚接手各类各式安全设备之前,团队成员已经有意识的去实现自动化,力争解放双手进行更多未知领域的开拓。其中,堡垒机工单的处理,便是最贴近业务方、最耗时的一项工作,因此堡垒机自动化工作已经成为当前优先级最高的任务。
本文接下来的部分,将由我的同事介绍人工受理堡垒机工单的繁琐与业务场景的需求分析。
01
—
场景
基于安全考虑,很多服务器不允许直接登录,必须通过堡垒机进行登录。此时,有需求的人员,需要向管理员提供一系列的数据,如服务器的系统账号,服务器的地址,堡垒机登录账号,申请说明等。大概流程如下:
通过此图,可以发现有两处繁琐的环节:
1:审核
)管理员需要人工去审核申请人员提交的材料,很多情况下无法从字面上获取其关联的业务数据;
)申请人员提供的材料,可能存在错误之处,可能在后期带来无意义的沟通;
)申请人员提供的材料,很难归档入库,即使有统一的标准,很难做到强制性。
2:创建资源
)管理员需要在各种页面下创建相应的资源,才能在堡垒机中完成一次授权;
)如果管理员每天操作多次,管理人员很容易疲惫,而且是手工操作,不可避免的会出现错误;
)不同的管理人员,在创建资源时所遵循的标准也可能不一样,后期维护很麻烦。
02
—
需求
结合堡垒机的API文档与我们的场景,希望能做到以下功能:
)统一入口,强制标准,在提交申请之前,已经对数据进行各种审核,避免人为失误;
)统一在堡垒机中创建资源的标准;
)简化管理员人工审核(管理员只需要简单的操作,就可以自动化完成后续所有的行为);
)所有数据归档入库,为后期的数据维护提供便利。
03
—
分析
对齐治堡垒机的API阅读,梳理出如下要点:
)每一个资源的创建与关联,都是独立的;
)在为用户授权资源之前,要创建三个列别的资源;
)资源创建成功后(或者资源已存在)才能关联所需资源
大概流程如下:
04
—
总结
通过申请流程图与api调用流程图,发现在整个申请流程中,有并行,有串行:
)步骤a完成后才能到步骤b,如果要进行下一步,需要判断所有子操作的结果
)步骤a在向步骤b中,需要同时并行调用几个API(尽管顺序执行理论上可行)
如何合理的设计整个流程,
如何做到解耦与易拓展性,
如何做到跨语言的开发(功能模块与语言独立),
将决定开发的难易度与人员之间的协助性。
下一章,我们将介绍如何实现这一切。
领取专属 10元无门槛券
私享最新 技术干货