控制使用者建立課程許可權

2022-04-07 09:02:56 字數 1711 閱讀 8841

預設情況下,studio的註冊使用者都可以建立課程,這種預設行為似乎並不是通常的使用場景,平台擁有者更傾向於做個審核,才允許使用者發布課程

讀wiki啊!!

對於折騰edx的新手而言,我覺得首要的工作就兩點:

1. 讓平台跑起來

2. 通讀wiki(configuration wiki和edx-platform wiki)

如果你通讀了wiki,起步階段的多數的問題其實都不成問題。

據說現在流行送雞湯必須贈勺,我就寫下可操作的解決方案好了。

跟官方的教程基本一樣,官方wiki裡有幾處不夠清晰,我加了自己的理解,沒有直接翻譯,沒有完全按照它們的做法,在本地測試可用,你想按照wiki裡的做法,可以自行閱讀文後英文wiki。或者跟我往下做也行,有問題給我發郵件 : )

經過以下設定,課程團隊成員(course staff)依然可以編輯課程內容,而建立課程則需要被審核為is_staff的使用者才可.這在邏輯上也好理解,只要平台認可的內部成員才有建立課程的許可權

至於如何設定使用者的is_staff為yes,則需要使用管理員賬戶登入到admin,更改auth表就行(/admin/auth/user)

更改edx-platform/cms/envs/common.py在features裡新增'disable_course_creation': true

./manage.py lms set_staff emailaddress

以上是命令列版本,我更喜歡直接去admin裡標記:使用超級賬號登入到admin,然後進入auth使用者表(/admin/auth/user),選擇相應使用者,勾選對應選項就行

更改edx-platform/cms/envs/common.py在features裡新增'studio_request_email':your_email_address,這個郵箱將收到使用者的請求

方法一感覺有些hack,以下這個方案來得似乎更優雅些

已被標記為is_staff的使用者,不受以下方法影響,永遠可以建立課程

更改edx-platform/cms/envs/common.py在features裡新增'enable_creator_group': true需要注意的是,如果採用這個方案,方案一中提到的disable_course_creation不應當為true,因為disable_course_creation的優先順序更高

# 更新資料庫

如果將enable_creator_group設定為true,乙個新的studio使用者的工作流是這樣的:

使用者建立新賬號,他們在admin table中的狀態是「未請求」.

當使用者進入到studio面板中,他們將看到一條關於如何成為課程建立者的訊息

使用者可以傳送建立課程的請求,如此一來他們的狀態變成"待決定"。

如果他們的請求被通過,他們將收到一封通知郵件

如果請求沒通過,他們也將收到一封通知郵件

對應的管理位址是/admin/course_creators/coursecreator/

和方法一相同

如果你希望給既有課程建立者授權,可通過這條指令./manage.py cms populate_creators(嗯,你首先當然得在edx-platform目錄下)

mysql登陸,建立使用者,許可權控制

如何登陸mysql 注意 2 一般的資料庫軟體中有很多外掛程式,選擇性的安裝,一般只需要client,server,database 3 在安裝資料庫的過程中會建立root使用者及可以備選的使用者,及密碼。2.登陸mysql 1 第一種方式 一般本地連線 通過client登陸,預設使用的是root使...

oracle 控制使用者許可權

控制使用者許可權 一 許可權 1 資料庫的安全性 1 系統安全性 2 資料安全性 2 系統許可權 對於資料庫的許可權 3 物件許可權 運算元據庫物件的許可權 下面我們來詳細了解一下系統許可權 1 超過一百多種有效的許可權 2 資料庫管理員具有高階許可權以完成管理任務 例如 建立新使用者,刪除使用者,...

mysql 使用者許可權控制

mysql使用表user,來儲存所有使用者的操作許可權,該錶在mysql資料庫中。新增和修改使用者的許可權,可以通過grant命令來完成,例如 grant privilege all privileges on table to root ipaddr identified by passwd wi...