如何在 Drupal 8 中管理用戶和角色權限
已發表: 2022-02-16本教程是關於管理 Drupal 8 站點上的用戶的全部內容。
我將向您展示如何控制誰可以在您的網站上執行哪些操作:
- 誰可以創建、刪除和編輯內容?
- 誰可以上傳模塊和主題?
- 誰可以修改菜單和塊?
您還將了解如何使用戶帳戶更有趣。 您可以通過允許用戶添加更多關於他們的信息來做到這一點。
Drupal 角色和權限說明
Drupal 用戶由他們的角色定義。 角色由您分配給角色的權限定義。 Drupal 具有三個默認角色:
- 匿名:未登錄您網站的訪問者。
- Authenticated :在您的站點上擁有帳戶並登錄的任何人都經過身份驗證。 Authenticated 角色還用作授予所有登錄用戶的最小權限集。 Drupal 設置了一些默認權限,但您可以更改它們。
- 管理員:分配了管理員角色的用戶可以在站點上執行所有操作。
您可能認為這對您的網站來說已經足夠了,但如果您有更大的計劃,讓我們通過三個示例來看看您如何微調對您帳戶的訪問。
創建文章作者
從文章作者的例子開始。 這樣的人將是您可以為其分配用戶的角色。 如果用戶擔任這個角色,他們所能做的就是寫文章。 有四個步驟可確保正確設置用戶帳戶:
- 添加角色。
- 設置角色權限。
- 創建用戶。
- 測試用戶以確保其具有正確的權限。
以下是這四個步驟。
- 單擊管理菜單欄上的“人員”,然後單擊“角色”選項卡。
- 點擊“添加角色”。
- 鍵入Article writer作為新角色名稱。
- 點擊“保存”。
現在已經創建了文章作者角色,您需要確定該角色中的用戶可以做什麼和不能做什麼。
- 單擊權限選項卡以查看可用權限:
在列表的左側,您可以看到具有權限設置的模塊。 模塊按字母順序排列。 在列表頂部,您會看到您已設置的四個角色。
三個默認角色的權限已設置。 您還可以看到已經為文章作者角色設置了一些權限。 這是因為這些權限已授予 Authenticated User 角色。 默認情況下,如果您授予 Authenticated 角色權限,則所有後續角色(匿名除外)都會繼承該權限。 這就是為什麼評論的複選標記顯示為灰色且無法取消選擇的原因。
您的文章作者將需要比默認授予 Authenticated 角色的權限更多的權限,所以讓我們開始吧。
- 向下滾動直到找到標題節點。 請記住,Node 是 Drupal 的內容術語。
- 在 Node 區域的頂部,您會看到一些管理員類型的權限,如下所示:
進一步滾動以找到文章權限集。 為了在此示例中保持簡單,請選中所有文章權限框:
- 創建新內容
- 刪除任何內容
- 刪除自己的內容
- 刪除修訂
- 編輯任何內容
- 編輯自己的內容
- 還原修訂
- 查看修訂
- 為確保文章作者可以“添加內容”,請選中“使用管理工具欄”的權限框。
- 點擊頁面底部的“保存權限”。
現在讓我們為文章作者設置一個實際的用戶帳戶。
- 單擊屏幕頂部的“列表”選項卡。
- 單擊“添加用戶”按鈕。
如您所見,沒有紅色星號,電子郵件地址不是必需的。 但是,電子郵件對於用戶接收消息(例如密碼重置)是必需的。 如果您有一個不是您在創建第一個帳戶時使用的電子郵件地址,請立即輸入,以便您可以看到用戶將收到的電子郵件。 否則,請將其留空。
- 用戶名:文章作者
- 密碼:文章作者
- 角色:選中“文章作者”框。
- 如果您包含電子郵件地址,請選中“通知用戶新帳戶”複選框。
- 點擊“創建新帳戶”。
第四步也是最後一步至關重要。 權限是您網站安全的重要組成部分,如果您不測試您的權限,您很容易允許某些用戶執行可能危及您網站的操作。
以下是測試的基本方法。 您可以使用以下步驟:
- 打開您尚未登錄的瀏覽器。
- 通過訪問 http://[your_web_address]/user/login 登錄。
- 請注意,您已經習慣的菜單欄缺少選項。 那很好。 第一次測試通過。
- 單擊“快捷方式”,然後單擊“添加內容”。
- “創建文章”表單立即出現,沒有其他可用的內容類型。 測試又通過了!

此測試存在局限性。 因為您創建了帳戶和密碼,所以您能夠以該人的身份登錄並進行測試。
但是,在真實站點上,知道用戶的密碼是什麼既不可行也不安全。 相反,您可以使用一個名為 Masquerade 的模塊來輕鬆測試任何用戶帳戶。 以下是它的工作原理:
- 確保您使用主管理員帳戶登錄。
- 安裝偽裝模塊。
- 轉到“結構”,然後轉到“塊佈局”。
- 將 Masquerade 塊放置在次要區域的頂部。
- 轉到您的主頁,您會找到 Masquerade 塊及其搜索框。
- 輸入您要測試的用戶的名稱,然後單擊“切換”。
偽裝塊消失,屏幕頂部的黑色菜單欄中出現“取消偽裝”鏈接。 不用擔心:默認情況下,此鏈接僅對管理員顯示。
您現在可以瀏覽該站點並準確查看文章作者可以看到的內容。 只需單擊 Unmasquerade 鏈接,您將返回管理員帳戶。
創建主持人
現在再看一個用戶權限的例子。 讓我們設置一個名為 Moderator 的角色。 擔任此角色的人員可以審核評論和論壇帖子。 這些人有助於確保您的網站是一個令人愉快且無垃圾郵件的目的地。
- 轉到“人員”、“角色”,然後“添加新角色”。
- 鍵入主持人作為角色名稱。
接下來,我們將設置權限:
- 單擊“權限”選項卡並向下滾動,直到找到“評論”模塊。
- 選中版主列中的“管理評論和評論設置”框。
- 向下滾動直到找到論壇模塊並選中版主列中的“管理論壇”框。 這允許版主在需要時重新排列論壇版塊。

- 向下滾動,直到找到節點部分。
- 授予版主創建、刪除和編輯任何論壇節點的權限。
- 為確保版主可以添加內容,請選中“使用管理工具欄”的權限框。
- 選中版主列中的“查看用戶信息”框。 如果需要阻止帳戶,這可以幫助版主向站點管理員提供建議。
- 點擊屏幕底部的“保存權限”。
現在我們可以繼續創建版主帳戶:
- 單擊屏幕頂部的“列表”選項卡,然後單擊“添加用戶”。
- 如果您還有另一個額外的電子郵件帳戶,請輸入它,否則,請將電子郵件留空。
- 用戶名:版主。
- 密碼:版主。 如果需要,您可以將其設置為更困難的值。 Drupal 警告您這是一個弱密碼。
- 角色:選中“主持人”框。
- 單擊“創建新帳戶”。
現在是時候測試帳戶了:
- 訪問您網站的首頁。
- 使用 Masquerade 模塊將站點視為版主。
- 單擊主菜單上的“論壇”。
- 訪問任何論壇主題,您可以編輯或刪除該主題。
- 如果對某個主題有評論,您可以使用“編輯”和“刪除”鏈接對其進行審核。
- 單擊任何用戶的帳戶名。 最容易找到的帳戶可能是您的主要管理員帳戶。
- 您將看到用戶個人資料。 在本章的下一部分,我們將使它看起來更有趣!
- 如果您認為用戶需要審核,請單擊“編輯”選項卡。 您將用戶狀態從“活動”更改為“已阻止”。 請不要使用您自己的管理員帳戶嘗試此操作!
您可以授予版主角色權限以管理用戶(請參閱權限頁面上的用戶部分)。 請注意,這是一個非常強大的權限。 如果被授予,任何具有主持人角色的用戶都可以訪問任何其他用戶的帳戶並更改其設置。 謹慎授予。
關於 Drupal 權限的視頻
該視頻取自名為“Drupal 8 初學者指南”的課程:
想了解更多 Drupal 8?
閱讀本教程後,我建議直接從這一點開始的“如何構建用戶配置文件”。
本教程摘自 Drupal 8 Explained,這是 Drupal 8 的最暢銷指南。立即獲取副本以了解 Drupal 8 的所有基礎知識。