Drupal

ユーザ管理機能

ここではDrupalのユーザ管理機能について説明します。Drupalではコンテンツやシステム管理のためのユーザだけでなく、サイト利用ユーザの権限も設定することができます。会員制サイトの構築などさまざまな応用が考えられるでしょう。

Drupal

Drupalのユーザ管理機能とは 

Drupalのユーザ管理機能

Drupalの特徴の一つに高度なユーザ管理機能があげられます。ユーザごとにきめ細かな権限の設定ができるので、高度な編集ワークフローの実現や会員サイトの構築などにも対応することができます。

ユーザにロールを割り当てて編集ワークフローを実現する

Drupalでユーザごとの権限を設定するには、ロール(役割)を設定します。

ロールとは一連の権限をグルーピングしたものです。たとえば「編集者」ロールには「記事コンテンツの作成、編集」権限を、「管理者」ロールには「システムの設定」権限を割り当てるという具合です。

さらに細かい編集ワークフローが必要なときは、Workbenchモジュールを利用することができます。

Workbenchモジュールはコンテンツの編集ワークフローの定義と、ユーザ・ロールごとのアクセス制御を行います。たとえば「記事作成 → 編集 → レビュー → 公開」というワークフローと、「記事作成と編集が可能な編集者ロール」「記事公開が可能な編集長ロール」を定義すれば、一般的なニュースサイトでのワークフローを実現することができます。

会員サイトの構築

Drupalではコンテンツタイプごとに編集権限を割り当てることができます。これを利用してユーザの投稿によって構成される会員サイトなどを構築することができます。会員ユーザの認証はDrupalの認証機能の他、OpenIDによる認証やLDAPなどの外部DBを利用した認証(モジュールの導入が必要)も可能ですので、既存の業務システムとの連携などに利用できるでしょう。

新規ユーザの登録は管理者が登録するほかに、ユーザ自身による登録機能があります。サイトで仮登録を行った後に確認用メールを自動送信し、記載されたURLにアクセスして初めて登録が完了する登録確認機能もサポートされています。

Drupalの機能だけでは、ページ単位でユーザの閲覧を制限するようなことができません。これを行うにはContent Accessなどのモジュールが必要となります。(2014/07現在、beta2版)
ただしそのときDrupalに内蔵されているページキャッシュ機能を無効にしなければなりません。キャッシュが有効なままだとDrupalのアクセス権チェックの手前でキャッシュの内容が返されてしまいます。
ページキャッシュは高速なレスポンスを実現するために不可欠の機能です。これを無効にするとサイトのパフォーマンスが大きく低下してしまうため、大規模なサイトではWebサーバの多重化などの対策が必要になるかもしれません。

その他のエントリー