強制禁用gitlab的雙因子認證:Two-Factor Authentication

(一)問題描述:html

此博客解決以下問題:禁用gitlab的雙因子認證git

禁用前,如圖(此時,你在gitlab中什麼也幹不了)web

 

 

(二)思路分析:sql

百度了不少方法,都不可靠(如不可靠的說明:https://stackoverflow.com/questions/31024771/how-to-disable-the-two-factor-authentication-in-gitlabshell

從這裏(https://gitlab.com/gitlab-org/gitlab-ce/issues/1960)找到了靈感:修改gitlab數據庫,直接粗暴。數據庫

目標是將otp_required_for_login  、 require_two_factor_authentication_from_group 這兩個字段,都改成false(數據庫中用f表示)gitlab

 

 

(三)解決問題:post

一、進入GitLab的PostgreSQL數據庫ui

參考:https://www.cnblogs.com/sfnz/p/7131287.html?utm_source=itdadao&utm_medium=referral3d

(1)登錄postgresql數據庫

1)查看/etc/passwd文件裏邊gitlab對應的系統用戶

cat  /etc/passwd

 

2)根據上面的配置信息登錄postgresql數據庫

 su  -  gitlab-psql    //登錄用戶

 

(2)鏈接到gitlabhq_production庫

1)查看gitlab安裝時PostgreSQL數據庫的配置信息

注意:另起一個shell命令窗口使用cat命令。

cat /var/opt/gitlab/gitlab-rails/etc/database.yml

 

2)鏈接到gitlabhq_production庫

注意:在登錄postgresql數據庫後,緊接着使用如下命令。

psql  -h  /var/opt/gitlab/postgresql  -d  gitlabhq_production 

 

(3)操做數據庫

1)查看數據庫

\l

2)查看多表

\dt 

 

3)查看單表,如users表

\d users

4)查看users表中用戶的關鍵信息,取4個字段

SELECT name,username,otp_required_for_login,two_factor_grace_period, require_two_factor_authentication_from_group   FROM users;

5)修改數據庫

UPDATE users set require_two_factor_authentication_from_group = 'f' WHERE username = 'root';

 

 

6)退出psql使用\q,接着按下回車就好了。 

 

(4)從新登陸gitlab的web查看,雙因子認證沒有了,能夠正常使用了。

注意:雙因子認證是屢次輸入錯誤密碼登陸gitlab時觸發的,若是之後登陸gitlab時,再屢次輸入錯誤,又會開啓雙因子認證。請記清楚密碼,不然上述操做再來一遍。

相關文章
相關標籤/搜索