【Drupal 8入門】モジュールのインストール、ユーザー作成と権限の設定
ユーザーの追加と権限の設定
Drupalではサイト内で誰が、何をできるかを非常に細かくコントロールすることができます。例えば、誰がコンテンツを閲覧、作成、公開、できるのかをGUI上から設定が可能です。これらの権限設定はWordPressなど他のCMSでも可能ですが、Drupalは特に優れた権限設定機能を標準で実装しています。権限設定機能はViews、多言語機能、統一されたコンテンツ・Entity定義と並ぶ、Drupalを代表する強みです。ここでは、新規にユーザーを追加して、ユーザーにロール(役割)を割り当て、権限の設定を追加します。
ユーザーとロールと権限の関係
Drupalではユーザーに直接権限を付与するのではなく、ユーザーに役割(ロール)を与え、その役割に権限を付与することで権限を付与します。以下の概念図を用いて詳しく説明していきます。
ここでは、「ユーザー管理者」、「新着情報管理者」、「製品紹介管理者」の3つのロール(役割)を仮定します。
概念図において、3つの円が各ロールを示しています。各ロールの持つ権限を以下に示します。
ロール名称 | 各ロールの持つ権限の説明 |
---|---|
ユーザー管理者 | ユーザーを追加、削除する権限を持つ |
新着情報管理者 | 「新着情報」コンテンツを作成、編集、削除する権限を持つ。 |
製品紹介管理者 | 「製品紹介」コンテンツを作成、編集、削除する権限を持つ。 |
例えば、Aさん、Bさん、Cさんの3人はそれぞれ一つのロール(役割)を保有しているので、単純にそれぞれのロールに応じた権限を持ちます。
では、Dさん、Eさん、Fさんはどうでしょうか? 3人ともロールを示す円が2つ重なっている部分に属しています。つまり、3人はそれぞれ、2つのロールを保有していることを意味します。
例えば、Dさんは「ユーザー管理者」と「新着情報管理者」のロールを保有しているので、これら二つのロールが保有する権限を持ちます。つまり、ユーザーの追加、削除、「新着情報」コンテンツの作成、編集、削除権限を持っています。
Gさんは3つの円が重なる部分に属しています。これは、「ユーザー管理者」、「新着情報管理者」、「製品紹介管理者」の3つのロールを保有していることを意味します。そのため、Gさんはこれら3つのロールの権限をすべて持っていることになります。
これらを表にまとめると、以下のようになります。このようにDrupalでは一人のユーザーが複数のロールを持つことができることを覚えておいてください。閲覧権限(コンテンツタイプ毎やノード毎など)に関してはコアのみでは設定できず、拡張モジュールを利用するか、コードによるカスタマイズを行う必要があります。
ユーザー名 | ロール(役割) | ユーザー管理 | 「新着情報」コンテンツ | 「製品紹介」コンテンツ | |||||
---|---|---|---|---|---|---|---|---|---|
追加 | 削除 | 作成 | 編集 | 削除 | 作成 | 編集 | 削除 | ||
Aさん | ユーザー管理者 | 〇 | 〇 | × | × | × | × | × | × |
Bさん | 新着情報管理者 | × | × | 〇 | 〇 | 〇 | × | × | × |
Cさん | 製品紹介管理者 | × | × | × | × | × | 〇 | 〇 | 〇 |
Dさん | ユーザー管理者 新着情報管理者 | 〇 | 〇 | 〇 | 〇 | 〇 | × | × | × |
Eさん | ユーザー管理者 製品紹介管理者 | 〇 | 〇 | × | × | × | 〇 | 〇 | 〇 |
Fさん | 新着情報管理者 製品紹介管理者 | × | × | 〇 | 〇 | 〇 | 〇 | 〇 | 〇 |
Gさん | ユーザー管理者 新着情報管理者 製品紹介管理者 | 〇 | 〇 | 〇 | 〇 | 〇 | 〇 | 〇 | 〇 |
これから設定するユーザーと権限設定の説明
ここでは、実際にユーザーを作成して権限設定を行っていきます。以下の概念図のように、「ユーザー管理者」、「新着情報管理者」、「新着情報管理者」ロールを作成して、3名のユーザーにロールを与えて権限を設定します。
ユーザー名 | ロール(役割) | ユーザー管理 | 「新着情報」コンテンツ | 「製品紹介」コンテンツ | |||||
---|---|---|---|---|---|---|---|---|---|
追加 | 削除 | 作成 | 編集 | 削除 | 作成 | 編集 | 削除 | ||
新着太郎 | 新着情報管理者 | × | × | 〇 | 〇 | 〇 | × | × | × |
製品花子 | 製品紹介管理者 | × | × | × | × | × | 〇 | 〇 | 〇 |
西都管理 | ユーザー管理者 新着情報管理者 製品紹介管理者 | 〇 | 〇 | 〇 | 〇 | 〇 | 〇 | 〇 | 〇 |
3人のロールと権限をまとめると以下のようになります。実際のサイト上で、実際にこの権限設定がサイト上でどのように運用されるのでしょうか。コンテンツ作成、ユーザー登録・削除の2点からみると以下の通りになります。この流れ前提として設定を行います。
コンテンツの管理
1.「新着太郎」と「西都管理」さんが「新着情報」コンテンツの、作成、編集、削除を行うことができる。
2.「製品花子」と「西都管理」さんが「製品紹介」コンテンツの、作成、編集、削除を行うことができる。
ユーザー登録・削除
ユーザーの追加権限を持つ「西都管理」さんのみがユーザー登録と削除を行うことができる。
役割を追加する
最初に「役割」を追加します。
1.管理者メニューの「ユーザー」をクリックします。「ユーザー」画面上部の「役割」タブをクリックします。
2.「役割」画面です。「役割の追加」ボタンをクリックします。
3.「役割の追加」画面です。「役割名」に「ユーザー管理者」、「システム内部名称」に「user_admin」と入力して「保存」ボタンをクリックします。
4.「役割」画面に遷移します。役割の一覧に「ユーザー管理者」が追加されています。
他の2つの「役割」、「新着情報管理者」と「製品紹介管理者」についても同様に作成します。
以下のように3つの「役割」が作成されているのを確認します。
ユーザーの作成と役割の付与
次にユーザーを作成します。
1.管理者メニューの「ユーザー」をクリックします。「ユーザー」画面の「ユーザーを追加」ボタンをクリックします。
2.「ユーザーを追加」画面です。「メールアドレス」に任意のメールアドレス、「ユーザー名」に「西都管理」、「パスワード」に任意のパスワードを入力します。「状態」は「アクティブ」にチェックが入った状態のままにします。
「西都管理」さんには「ユーザー管理者」、「新着情報管理者」、「製品紹介管理者」の3つの役割を保有させるので、「役割」の「ユーザー管理者」、「新着情報管理者」、「製品紹介管理者」チェックボックスにチェックを入れて、「アカウントの作成」ボタンをクリックします。
3.管理者メニューの「ユーザー」をクリックして、「ユーザー」画面に戻り、ユーザーの一覧を確認します。
ユーザーに「西都管理」さんが作成されています。「西都管理」さんの「役割」を確認します。
先ほど設定したように、「ユーザー管理者」、「新着情報管理者」、「製品紹介管理者」の3つのロールが設定されています。
4.同様に他の2人のユーザー、「新着太郎」さんと、「製品花子」さんも追加します。「ユーザーを追加」画面の「役割」で「新着太郎」さんは「新着情報管理者」に、「製品花子」さんは「製品紹介管理者」にチェックをそれぞれ入れてユーザーを作成します。以下のように3名のユーザーが作成され、それぞれに正しく「役割」が与えられていることを確認します。これでユーザーの作成と「役割」の付与は完了しました。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- 【Drupal 8入門】コンテンツの翻訳と多言語設定(前編)
- 【Drupal 8入門】コンテンツの翻訳と多言語設定(後編)
- 【Drupal 8入門】Viewsによるコンテンツ一覧ページの作成(前編)―Viewsの概念と基本的な使い方
- 【Drupal 8入門】コンテンツタイプとタクソノミーの作成
- 【Drupal 8入門】Viewsによるコンテンツ一覧ページの作成(後編)―AJAXページャーや検索機能の実装
- 【Drupal 8入門】ブロックレイアウトとコンタクトフォーム作成
- Concrete5ってCMSを知ってますか?
- Drupalの歴史における革命的な変更を含むDrupal 9のリリースと今後の展望
- 【Drupal 8入門】Drupal 8の基礎知識とPantheonを用いたインストール
- 便利なWordPressプラグインの紹介