Windows Server 部署REDcap(四):新增账户并设置登录验证方式
REDcap已经可以运行,尽管配置检查问题还需要完善,但有另一件紧迫的事情需要马上处理, 就是设置REDCap网站登录验证方式。
我们用浏览器打开 REDCap,不需要任何密码即显示界面如下,登录账户显示为 site_admin:
同时我们注意到 REDcap 控制面板中的 Control Centre 选项,只有系统管理员才会有 Control Centre 选项,这意味着 site_admin 是系统管理员,具有修改网站设置的权限。
新安装的REDCap存在两个问题:
1,系统不需要任何密码就可以访问,等于在网络上裸奔,需要设置验证登录。
2,默认帐号 site_admin 有修改网站设置的权限,有安全隐患,需要降权。
既然 site_admin 有安全隐患,为什么是降权而不直接删除 site_admin 账号?
首先,site_admin 既是新安装 REDCap 系统的默认管理员帐号,也是系统默认公共账户,我们发布用作调查或者展示的公共项目时候,需要使用 site_admin 账号登录 ,删除后别人无法看到我们的公共项目。
那么我不发布公共项目,删除了总可以吧,真是天才,我也这么想过,结果删除后系统会提示数据库结构错误,还是修不好那种,重新做人也挺好。可能 site_admin 不单是一个账号,还有角色功能,是REDCap运行必须的。
出于上面两个原因我们要保留 site_admin 账号,但需要降权为普通账号。
关于site_admin 账户设置参考redcap社区问答。
点击 Control Centre ,提示没有设置验证登录(一些重要信息会在 Control Centre 中提示我们,需要经常看一下):
但是不要马上去设置验证登录方式!!!现在 REDCap 只有一个 site_admin 默认账号,如果设置了登录验证,我们不知道 site_admin 的密码,就无法登录系统了,看着页面无计可施的感觉很痛苦,避免痛苦的方式就是创建一个自己知道密码的帐号,再去设置验证登录。
新建REDCap登录账号
点击 Control Centre,左侧导航栏 — user — Add User (Table-based Only):
弹出界面填写用户信息,注册邮箱必须能接收邮件:
点击保存,弹出界面:
提示用户名已经保存,但是邮件没有发出。我们 REDCcap 邮件功能还没设置呢,当然发不出。
那怎么办呢?很简单,手动发邮件啊。复制红框内的邮件内容,随便用一个邮箱发送给用户注册邮箱就可以。
打开注册邮箱,收到邮件:
双击 set your new REDCap password:
提示还没有设置验证登录,马上去设置。
设置REDCap登录验证方式
点击 Control Centre,左侧导航栏 — System Configuration — Security & Authentication:
Authentication Method —Table-based,保存。
点击网页内任何链接,弹出以下页面表示验证登录设置成功:
回到注册邮箱,双击 set your new REDCap password:
设置密码:
密码长度最少9位,至少包含一个大写字母、一个小写字母和一个数字。
设置好后提交,弹出密码提示问题对话框:
设置密码提示问题并再次确认注册邮箱:
选择问题并记住答案。也可以不设置,选择remind me again in 2 days。
设置密码提示问题,万一忘记密码回答提示问题还可以抢救一下,否则只能找系统管理员后台重置密码。
设置完用户名和密码,我们登录下新账户看一下:
没有Control Centre 选项!!!
表示我们新建帐号不是系统管理员,我们后台把新建帐号修改为超级用户和系统管理员,这样我们才有后续网站设置权限:
phymyadmin 打开 redcap 数据库:
双击打开 redcap_user_information 表:
选择新建的用户名,点击编辑:
把 super_user 和 account_manager 全部设置为1 ,点击页面底部执行:
重新登录,控制面板内有Control Centre 选项,表示新用户已是超级用户和系统管理员:
再次点击 Control Centre :
提示site_admin不应该为管理员帐号:
下一步给 site_admin 帐号降权,改为普通账号,
修改 site_admin 为普通账号
修改 site_admin 为普通账号可以在后台数据库修改,也可以使用 Control Centre 修改。
后台数据库修改和前面讲的设置我们新建账户为超级账户一个道理,把 site_admin 的 super_user 和 account_manager 全部设置为 0 保存即可;
因为新建账户已经是超级账户,我们尝试第一次使用新建账户的系统管理员权限,删除 site_admin 的系统管理员权限:
点击 Control Centre,左侧导航栏 — user — Administrators & Acct Managers
点击site_admin 后的红色 X 号,在弹出对话框点击确定:
现在site_admin 帐号已经不是系统管理员:
不放心后台数据库再检查下:
REDCap 系统内和后台数据都显示 site_admin 帐号已没有 super_user 和account_manager 权限了,卧榻之侧已无他人酣睡。
我们新建了自己的系统管理员账号,把site_admin降为了普通权限,REDCap也不再裸奔,有没有尽在掌握感觉?
醒醒,差很远,还有 Configuration Check 等着我们继续搬砖。