接口管理工具Yapi禁用注册功能的配置解决方案

       之前公司运维安装了一个接口管理工具yapi,是通过docker安装的,时间有点久,安装的人也没了,容器是通过镜像/anoy/yapi安装的容器。默认yapi是可以开放注册的,因为公司外网开放的,所有发现注册功能老是被DDOS攻击,莫名被注册很多用户锦鲤。所以想关闭注册功能。

       随之而来的问题是容器已经run起来了,但是找不到这个镜像灵活配置的信息,无奈之下,只能读里面的js代码逻辑进行判断,思考逻辑截图给大家进行分享,希望能帮到大家:

1. 首先找到控制关闭注册的逻辑代码,是server下user控制器去判断的,如果关闭注册,将在页面提示禁止注册,请联系管理员。

docker exec -u root  -it  yapi-new /bin/sh

cd  /api/vendors/server/controllers

cat user.js

 

※ 以上,第一个结论是是否开启注册是由“yapi.WEBCONFIG.closeRegister”的值来判断的,所以,我们的下一个逻辑是找到yapi变量是哪里来的?

2. 通过读取user.js源代码,我们可以看到文件头部,可以看到yapi是通过引入父目录的yapi.js文件导入的。

const yapi = require('../yapi.js');

3.进入父目录,查看yapi.js源码,这次我们要找到yapi的属性值WEBCONFIG是怎么设置的。

cd /api/vendors/server

 

第二个结论,我们通过读取源代码,可以发现,WEBCONFIG属性通过config变量赋值给它的。再往文件头部看代码,发现config变量来源于父父级目录的config.json;至此我们可以找到这个值closeRegister的设置文件了。

最终解决方案:

4. 编辑config.json文件,默认这个文件是没有closeRegister该值的,编辑文件,添加并设置closeRegister为true

cd /api
vi config.json

 重启docker容器搞定!

docker restart yapi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值