Permission / 権限

最終更新日:2018年11月28日

権限とは、サイト上でどのように人々がアクセスできるかを制御する機能です。ユーザーの権限を設定して、Drupalのコア機能と提供されたモジュールで何ができるのかを定義することができます。例えば、一般のユーザーはホームページを編集したくないと思うかもしれませんし、サイトの所有者、または信頼できるユーザーはそうすることができます。これらは権限により権限を付与することで、ユーザーの行動を制限することが出来ます。

Drupalでは、ユーザーを種類分けした役割というものに対して、権限を付与することができます。多くのWebサイトには編集者とサイト管理者の役割が存在し、編集者はコンテンツ更新、サイト管理者に新しいモジュールをインストールし、より大きな構成変更を加えることが出来るといった権限を設定をしたいこともあるでしょう。 Drupalインストール時の初期設定では、

  • 匿名ユーザー
  • 認証済みユーザー
  • サイト管理者

の役割が存在します。

user 1 account とは

サイトのインストール中に、最初のユーザーアカウントが作成されます。このユーザーのIDは1であるため、一般的にuser 1 accountと呼ばれます。このユーザーアカウントは、割り当てられている役割に関係なく、すべてのコンテンツの表示と編集、ユーザーアカウントの編集、サイト構成の変更、モジュールのインストールとアンインストール、および更新スクリプトの実行することができます。

この権限は、Linuxやその他のオペレーティングシステムで完全な管理権限を持つ「root」ユーザーアカウントと同程度なので、このアカウントをrootユーザーと呼ぶユーザーもいます。

すべての管理ユーザーがuser 1 accountを使用してログインするのではなく、管理者ユーザーに個別のアカウントを作成し、管理者役割を付与する方が一般的には適しています。これにはいくつかの理由があります。

  • サイト内のあるアクションと更新がログに記録され、誰もが同じアカウントを使用している場合は、調べたいことがあっても、誰がそれを行ったのか知ることが困難
  • ユーザーが誤って変更してはいけないサイトの機能を変更しないように、全ての権限を持つuser 1 accountを使うよりも、サイト管理者役割を割り当てられたユーザーを使用したほうが安全にサイトの機能などを変更できる
  • ユーザーの権限は変わることがあるので、皆が同じアカウントを使用していると、どの権限を付与、または削除すればいいのか管理が難しくなる
  • 管理画面からuser 1 accountを削除することができない。データベースクエリで行うことは可能だが、サイトに問題が発生する可能性があり、お勧めできません。

こちらも合わせてご参照ください
きめ細やかな権限管理