System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及一种在线平台按需生成题目实例的方法与系统,属于网络安全。
技术介绍
1、在线网安能力提升平台是集实训、竞赛、办赛、社区于一体的saas化平台,它为广大网安爱好者提供赛题资源与竞赛服务。为了使网安爱好者有良好的用户体验,平台会为用户提供场景化的题目。这些场景化的题目背后是在线靶标服务,平台会根据用户答题需求动态生成靶标。
2、一个典型的在线靶标服务通常包括客户端浏览器,用户认证服务,题库服务,动态题目服务和靶标调度服务。场景化的题目为用户提供可交互的靶标进行渗透、突破。一般是将题目做成一个docker容器镜像,平台启动这个docker容器,并提供该容器的接入方式给用户。
3、现有的场景化题目生成存在如下问题:1、题目资源无法复用,每个用户的每个题目都会对应的起一个靶标,当有成千上万人使用平台答题时需要大量服务器资源。作为在线的平台,用户通过公网访问,每天访问的用户数量和用户都不一样,每启动一个场景题目就要启动一个docker容器,每个docker容器启动都要占用服务器资源。2、对于热点题目,场景化题目服务没有提前启动,用户不能即来即用,体验较差。
技术实现思路
1、专利技术目的:针对上述现有技术存在的问题,本专利技术目的在于提供一种在线平台按需生成题目实例的方法与系统,提供靶标复用方式减少容器启动数量,降低运维成本,提升用户体验。
2、技术方案:为实现上述专利技术目的,本专利技术采用如下技术方案:
3、一种在线平台按需生成
4、在用户第一次启动场景化题目时,为用户启动一个docker网络,该docker网络作为用户独有网络,用于接入不同场景化题目的docker容器;
5、若用户所启动的场景化题目存在已启动的docker容器实例且有空闲连接,则将用户的docker网络连接到场景化题目的docker容器,否则新启动一个场景化题目docker容器,并将用户的docker网络连接到新启动的docker容器;
6、在用户关闭场景化题目时,将用户的docker网络与该场景化题目docker容器断开;
7、在用户登出平台或用户的docker网络在预设时长内没有连接任何场景化题目的docker容器,关闭用户的docker网络。
8、作为优选,通过指令docker network create用户网络名称,创建用户的docker网络;通过指令docker run-d--name题目名称--network用户网络名称题目镜像,启动场景化题目容器并连接到用户的docker网络;通过指令docker run-d--name题目名称题目镜像,启动场景化题目容器;通过指令docker network connect用户网络名称题目名称,将容器实例连接到用户的docker网络。
9、作为优选,同一个用户的docker网络支持同时连接到不同的场景化题目docker容器;同一个场景化题目docker容器支持同时连接不同用户的docker网络。
10、作为优选,通过数据库记录场景化题目的docker容器的当前连接数。
11、若场景化题目的docker容器在没有用户的docker网络连接时,或者在预设时长内没有用户的docker网络连接,则关闭释放。
12、作为优选,用户通过公网访问在线平台的场景化题目。
13、作为优选,所述方法还包括:判定热点题目,如果一个场景化题目在最近预设时长内的访问数量超过预设阈值,则判定为热点题目;所述热点题目的docker容器提前启动,并且/或者,延长热点题目的docker容器的延迟关闭时长。
14、一种在线平台按需生成题目实例的系统,包括:
15、用户网络创建模块,用于在用户第一次启动场景化题目时,为用户启动一个docker网络,该docker网络作为用户独有网络,用于接入不同场景化题目的docker容器;
16、题目接入与退出模块,用于在用户启动场景化题目时,若用户所启动的场景化题目存在已启动的docker容器实例且有空闲连接,则将用户的docker网络连接到场景化题目的docker容器,否则新启动一个场景化题目docker容器,并将用户的docker网络连接到新启动的docker容器;以及在用户关闭场景化题目时,将用户的docker网络与该场景化题目docker容器断开;
17、用户网络关闭模块,用于在用户登出平台或用户的docker网络在预设时长内没有连接任何场景化题目的docker容器,关闭用户的docker网络。
18、一种计算机系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序/指令,所述计算机程序/指令被处理器执行时实现所述的一种在线平台按需生成题目实例的方法的步骤。
19、一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现所述的一种在线平台按需生成题目实例的方法的步骤。
20、有益效果:与现有技术相比,本专利技术具有如下优点:1、本专利技术为每个用户启动独有的docker网络,用于接入不同的场景化题目的docker容器,通过复用场景化题目,减少了容器启动数量,节省了服务器资源,降低了运维成本。2、本专利技术通过数据分析得到场景化的热点题目,通过预先启动热点题目或延迟释放热点题目,提升了用户体验。
本文档来自技高网...【技术保护点】
1.一种在线平台按需生成题目实例的方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的一种在线平台按需生成题目实例的方法,其特征在于,通过指令docker network create用户网络名称,创建用户的docker网络;通过指令docker run-d--name题目名称--network用户网络名称题目镜像,启动场景化题目容器并连接到用户的docker网络;通过指令docker run-d--name题目名称题目镜像,启动场景化题目容器;通过指令docker network connect用户网络名称题目名称,将容器实例连接到用户的docker网络。
3.根据权利要求1所述的一种在线平台按需生成题目实例的方法,其特征在于,同一个用户的docker网络支持同时连接到不同的场景化题目docker容器;同一个场景化题目docker容器支持同时连接不同用户的docker网络。
4.根据权利要求1所述的一种在线平台按需生成题目实例的方法,其特征在于,通过数据库记录场景化题目的docker容器的当前连接数。
5.根据权利要求1所述
6.根据权利要求1所述的一种在线平台按需生成题目实例的方法,其特征在于,用户通过公网访问在线平台的场景化题目。
7.根据权利要求1所述的一种在线平台按需生成题目实例的方法,其特征在于,所述方法还包括:判定热点题目,如果一个场景化题目在最近预设时长内的访问数量超过预设阈值,则判定为热点题目;所述热点题目的docker容器提前启动,并且/或者,延长热点题目的docker容器的延迟关闭时长。
8.一种在线平台按需生成题目实例的系统,其特征在于,包括:
9.一种计算机系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现根据权利要求1-7任一项所述的一种在线平台按需生成题目实例的方法的步骤。
10.一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现根据权利要求1-7任一项所述的一种在线平台按需生成题目实例的方法的步骤。
...【技术特征摘要】
1.一种在线平台按需生成题目实例的方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的一种在线平台按需生成题目实例的方法,其特征在于,通过指令docker network create用户网络名称,创建用户的docker网络;通过指令docker run-d--name题目名称--network用户网络名称题目镜像,启动场景化题目容器并连接到用户的docker网络;通过指令docker run-d--name题目名称题目镜像,启动场景化题目容器;通过指令docker network connect用户网络名称题目名称,将容器实例连接到用户的docker网络。
3.根据权利要求1所述的一种在线平台按需生成题目实例的方法,其特征在于,同一个用户的docker网络支持同时连接到不同的场景化题目docker容器;同一个场景化题目docker容器支持同时连接不同用户的docker网络。
4.根据权利要求1所述的一种在线平台按需生成题目实例的方法,其特征在于,通过数据库记录场景化题目的docker容器的当前连接数。
5.根据权利要求1所述的一种在线平台按需生成题目实例的方法,其...
【专利技术属性】
技术研发人员:孔正,唐海均,秦卫东,高庆官,谢峥,
申请(专利权)人:南京赛宁信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。