====== 設定 Dokuwiki 使用 Google OAuth 認證方式登入 ====== 因為大量使用 Google 的服務, 也順便測試一下 dokuwiki 上 Google OAuth 的認證方式. * Google+ API 2019/3/7 正式停用 - https://developers.google.com/+/api-shutdown * 目前使用的 dokuwiki [[https://www.dokuwiki.org/plugin:authgoogle|authgoogle]] plugin 沒改版很可能就無法使用 * 所以評估 dokuwiki [[https://www.dokuwiki.org/plugin:oauth|oAuth]] plugin --- //[[|Jonathan Tsai]] 2019/02/12 14:57// ===== 安裝方式 ===== * 先至 [[https://console.developers.google.com/|Google API Console]] 申請帳號與建立專案 - 建立專案 Exp. ichiayi-wiki - 在選單選擇 APIs & services -> 憑證 \\ {{:tech:2019021201.png}} - 憑證 -> 建立憑證 \\ {{:tech:2019021202.png}} - 建立憑證 -> OAuth 用戶端 ID \\ {{:tech:2019021203.png}} - 建立 OAuth 用戶端 ID-> 網路應用程式 \\ {{:tech:2019021204.png}} - 產生的用戶端密鑰要記錄下來 \\ {{:tech:google_oauth07.png|}} \\ {{:tech:google_oauth03.png|}} - 設定 OAuth 同意畫面 \\ {{:tech:google_oauth04.png|}} - 設定 網域驗證 \\ {{:tech:google_oauth05.png|}} * 安裝 dokuwiki plugin - [[https://www.dokuwiki.org/plugin:oauth|oAuth Plugin by Andreas Gohr]] - 管理選單 -> 系統設定 -> 認證設定 -> 認證後台管理方式 -> oauth \\ {{:tech:2019021205.png}} - 管理選單 -> 附加元件設定 -> Oauth \\ {{:tech:2019021206.png}} - google-key 填上 上面申請的 OAuth 用戶端 ID - google-secret 填上 上面申請的 用戶端密鑰 ===== 使用方式 ===== * 登入畫面多出 Login with other Services \\ {{:tech:2019021207.png}} * 點下這整合 Google OAuth 登入, OAuth認證通過後會自動在使用者清單新增帳號((必須設定開啟 wiki 可註冊用戶功能)), 預設群組權限會是依照系統設定的群組 Exp. user 再加上 google, 所以需要管理者第一次登入之後調整群組權限 \\ {{:tech:2019021208.png}} * 上面看到 google 開頭的帳號是之前 [[https://www.dokuwiki.org/plugin:authgoogle|dokuwiki authgoogle plugin]] 產生的帳號, 所以當改用 OAuth plugin 的更改方式, 可以直接在原有的帳號後面加上 google 群組, 只要比對 Google 帳號的 mail 相同應該就可以認證通過 ===== 參考文件 ===== * https://www.dokuwiki.org/plugin:authgoogle * https://www.dokuwiki.org/plugin:oauth * https://developers.google.com/identity/protocols/OAuth2 * https://developers.google.com/identity/protocols/OpenIDConnect {{tag>dokuwiki oauth}}