2020年11月20日 星期五

以 Google 為範例設定 Open edX 第三方登入

第三方登入又稱 social authentication ,

簡單明瞭一些的就是使用社群帳號來登入網站,

可以少記一組帳號密碼,

Open edX 當然也支援此種方式登入:

以 Google 為範例設定 Open edX 第三方登入

之前也提到過使用 Facebook 的第三方登入,

其實作法大同小異,

主要的不同點主要在 Google 端的申請,

前往 Google API console

在憑證部分新增一個 OAuth 用戶端 ID


填好或選取各項資料:

  • 應用程式類型:網頁應用程式
  • 名稱:
  • 已授權的重新導向 URI: [your edx domain]/auth/complete/google-oauth2/


申請完畢後可以取得一組用戶端 ID與用戶端密碼
前往

[your edx domain]/admin/third_party_auth/

進入 oauth2providerconfig 並新增一個設定( ADD PROVIDER CONFIGURATION )

填好或選取下列各項目:

  • enable:勾選
  • icon class: fa-google-plus (新版本 Juniper 改為藍底)
  • Name: Google
  • Slug: google-oauth2
  • Site: [ your edx domain ]
  • Visible:勾選
  • 信件驗證的話可選可不選
  • Backend name: google-oauth2
  • Client ID: 就是上述在 Google 申請的用戶端 ID
  • Client Secret: 上述申請的用戶端密碼

其中 Client Secret 也可以填寫在 /edx/app/edxapp/lms.auth.json中,

“SOCIAL_AUTH_OAUTH_SECRETS”: {       
        “google-oauth2”: “Client Secret” 
}



儲存跳出回到 Open edX 的登入畫面,

就能看到多出一個 Google 的登入選項,


要使用第三方登入,

必須先以平台帳號登入後,

在 帳號設定已連結的帳號 中,

進行綁定才能正常使用。




 


沒有留言: