维基百科:上海/信息系统
维基百科上海社群信息系统是即将服务于维基百科上海社群的自动化工作平台,运行环境为新浪云应用引擎(SAE),一期设计用于社群聚会管理。
开发初衷
上海社群经常举办各类聚会,每次聚会都可以接获大量的报名。通过人工方法审核效率低下,而且在审核过程中发现聚会报名过程中存在恶意扰乱,部分账户为报名近期注册。每次聚会实际出席率仅约1/3至2/3。为了避免扰乱,社群曾采用限制一个IP只能报名同一聚会一人次,然而对于扰乱的收效甚微。在第28次双周聚会遭到永久封禁用户破坏导致聚会场地IP被自动封禁的尴尬事件后,上海社群开始探索高效的审核机制。企业级OA是一个选择,但是与社群的情况不太符合,故User:Eland Zhou决定自行开发信息系统供社群使用。
系统功能
聚会活动协作发起
聚会活动报名
聚会活动人员审核与反馈
聚会活动签到
聚会活动质量调查反馈
安全措施
https连接
注册、登陆
维基百科上海社群信息系统在登陆与注册过程中全部使用https连接
全程https连接
由于SAE平台对于https连接流量费用是http连接流量费用的两倍,系统默认不允许用户全程使用https连接。但是对于下列人员系统会自动调整安全策略
- 社群系统管理员(全程强制https连接)
- 社群活动管理员(可选http,https连接)
- 在中文维基百科具有管理员(sysop)权限的用户(全程强制https连接)
另外如果有特殊需求的用户可以向社群系统管理员申请调整安全策略。
对中文维基百科管理员的保护
由于中国大陆曾发生官方对管理员施压的事件,在中国大陆运行的系统拒绝存储任何中文维基百科管理员的信息,在中国大陆运行的社群系统亦阻止中文维基百科管理员的注册。中文维基百科管理员可以选择社群在香港运行的服务(即将上线),同时系统不记录任何维基百科管理员在社群系统内活动的日志(包括登陆、报名活动等所有日志条目以免潜在的威胁产生)。当一个原有用户被检测到在中文维基百科成为管理员时其帐户的数据将被加密同步至位于香港运行的服务,同时其位于中国大陆社群系统内的所有数据、日志将立即被删除。
异常情况通知
对于异常登录、帐户暴力破解,系统会通过邮件、用户讨论页、手机短信等途径告知异常情况。
敏感数据管理
敏感数据不可逆加密
对用户密码进行MD5加密,每个用户的加密盐值不同,确保即使用户间密码相同也不会产生相同的密码字符串。
敏感数据置于非关系型数据库存放
将用户的敏感数据置于非关系型数据库存放,防止SQL注入造成不可逆加密字符串泄漏。
用户输入的过滤
对于所有用户输入进行检测,如有潜在SQL注入风险自动阻断页面处理。
用户权限验证
通过在注册时以及注册后的定时状态检测,社群信息系统拒绝所有在中文维基百科处于封禁期间的用户注册、登陆。
为了避免用户冒名顶替的问题,系统在用户注册时对用户帐户所有权进行验证,要求用户编辑一次指定页面供系统检测。