# sec-demo **Repository Path**: nvnqsr/sec-demo ## Basic Information - **Project Name**: sec-demo - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-12-14 - **Last Updated**: 2024-05-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 安全工作流生成DEMO ## 介绍 ## 进度 | 功能 | 前端 | 后端 | | -- | -- | --- | | 威胁导入 | 前端已完成 | 后端已完成| | 威胁分析 | 前端已完成 | 后端已完成| | 策略获取 | 前端已完成 | 后端已完成| | 策略分类 | 前端已完成 | 后端已完成| | 策略转换 | 前端已完成 | 后端已完成| | 工作流生成 | 前端已完成| 后端已完成| ## 安装(Docker-Compose) 安装docker与docker-compose ```shell sudo apt-get install docker docker-compose ``` 执行docker-compose ```shell docker-compose up -d --build ``` ## 安装(手动) 在app文件夹下执行 ```shell pip install -r requirements.txt ``` 在front文件夹下执行 ```shell npm install npm run serve ``` 在根目录下运行 ```shell uvicorn app.main:application --port 9877 --reload ``` 如果需要使用MySQL而非SQLite,请使用schema.sql建立数据库,并在\app\sql\database.py中进行修改。 如果需要更改LLM APIKEY,请修改/app/test.json的内容 由于手动部署没有提供n8n与weaviate的链接,请修改对应的前后端设置。 ## 配置 请修改weaviate/import_capec.py的数据库连接,openai相关属性并运行,以导入CAPEC数据库。 请通过/app/config文件夹下的文件修改后端api_key, rbac规则,以及其他服务器设置。对于大语言模型提示词,可以在/app/config/prompts下创建 对应default下相同文件名的文件,以覆盖默认配置。 ## 演示 请填写第一步的威胁导入,点击提交后,自动创建新会话并进入第二步,并自动执行第二步的输入。 如果对于结果不满意,可以在下侧输入栏输入并点击回车提交。 此时切换界面步骤或刷新界面均不会导致结果出现问题。 回到第一步,如果重新提交不同的威胁,则会建立新会话,并执行第二步。 如果点击第一步右侧的历史中的恢复按钮,即可恢复历史会话状态。 在第二步点击下一步后,即可在右侧记录版上看到第二步的结果。 依次执行后续步骤,直至完成工作流生成,在最后一步填写n8n平台链接(对于使用dokcer-compose部署的应用,对应链接为http: //localhost:5678)即可打开编辑。 后端API文档提供在127.0.0.1:9877/docs,其中没有提供预定义的示例,测试时需要注意,各类ID字段的数据库类型为 BigInt, 使用字符串的目的是避免json序列化导致的精度损失。