データベースユーザアカウントを管理する
Plesk でデータベースの操作を行うときは、データベースに紐付けられているユーザアカウントの代理としてデータベースへのアクセスが実行されます。従って、それぞれのデータベースに、ユーザアカウントが 1 つ以上紐付けられている必要があります。もしユーザアカウントがなければ、データベースにアクセスきません。
特定のデータベースに対して、任意のデータベースユーザを「デフォルト」に設定することができます。Plesk では、データベースに他のユーザが紐付けられている場合でも、常にこのデフォルトユーザのクレデンシャルを使用してデータベースへのアクセスが実行されます。データベースに複数のユーザアカウントが紐付けられており、いずれもデフォルトに設定されていない場合は、リストの 1 番目のアカウントが使用されます。
データベースユーザのタイプ
Plesk には、次の 2 種類のデータベースユーザアカウントがあります。
- 特定のデータベースへのアクセス権限があるユーザアカウント。
他のユーザと協力してウェブサイトを管理しており、これらすべてのユーザがデータベースにアクセスできるようにするには、個別にユーザアカウントを作成する必要があります。各アカウントは、1 つのデータベースへのアクセスのみに使用されます。この場合、まずデータベースを作成してから、ユーザアカウントを作成します。 - すべてのデータベースへのアクセス権限がある共通ユーザアカウント。
共通ユーザは、既存のすべてのデータベースにアクセスできるだけではなく、新しく作成されるデータベースにもアクセスできます。サイトにウェブアプリをインストールすることを計画している場合は、共通ユーザアカウントを 1 つ作成し、すべてのアプリケーションのデータベースにこのアカウントでアクセスできるようにすると便利です。この場合、ユーザアカウントを 1 つ作成しておき、アプリケーションのインストール時にこのアカウントを指定します。
注:共通ユーザは、1 つのデータベースサーバ内のみで機能します。複数のデータベースサーバを使用している場合、各サーバに別の共通ユーザアカウントを作成してください。
データベースユーザの操作
[ウェブサイトとドメイン]>[データベース]>[ユーザ管理]で、データベースユーザを作成、更新、または削除できます。
データベースユーザの作成時には、データベースへのアクセス用のユーザクレデンシャルを入力し、このユーザでアクセスするデータベースの名前を指定する必要があります。共通データベースユーザを作成するには、[データベース]で[すべて]を選択します。
注:
1.デフォルトのデータベースユーザを削除するには、このユーザに紐付けられたデータベースを削除する必要があります。あるいは、ユーザを編集して[このデータベースのデフォルトユーザにする]オプションをオフにしてから、ユーザを削除します。
2.データベースユーザが APS アプリケーションによって作成された場合、このユーザを削除するには当該アプリケーションを削除する必要があります。
データベースユーザのパスワードは、長さを 5 文字以上にして、ユーザ名や拡張 ASCII 文字は含めないでください。
アクセス制御
Plesk 12.0 以降では、データベースへのリモートアクセスを許可または禁止したり、指定したホストからのみアクセスを許可したりすることができます。このアクセス設定は、個々のデータベースユーザアカウントに適用されます。詳しくは、「カスタムアクセスルールをセットアップする」セクションを参照してください。
データベースユーザのパーミッション
MySQL または Microsoft SQL Server を使用する場合、Plesk UI でデータベースユーザのパーミッション(テーブル構造やデータに関する操作の実行パーミッションなど)を管理できます。MySQL のパーミッションには、Select
、Insert
、Create
、Drop
などがあり、Microsoft SQL Server のパーミッションには、db_ddladmin
、db_datawriter
などがあります。
パーミッションの割当をサポートするために、Plesk では「役割」と呼ばれる、パーミッションのセットから成るテンプレートを使用します。作成すると、各データベースユーザアカウントにはデフォルトのパーミッションセットが付与されます。このパーミッションセットは、「読取および書込」役割に該当します。その他のサポートされる役割には、「読取専用」と「書込専用」があります。さらに、MySQL ではユーザが定義する権限のセットから成る「カスタム」役割も許可されます。
MySQL データベースユーザのパーミッションを変更するには:
- [ウェブサイトとドメイン]>[データベース]>[ユーザ管理]で、データベースユーザ名をクリックします。
デフォルトで、新規作成されたデータベースユーザには読取および書込役割が付与されています。この役割に含まれる権限を表示・変更できます。
- 読取アクセスまたは書込アクセスのみを許可するには、該当する役割(読取専用または書込専用)を選択します。
- ユーザに対して既に選択されている役割に権限を追加するか、役割から権限を削除するには、該当するチェックボックス(Select、Insert、Update など)をオンまたはオフにします。
権限のセットを変更すると、その役割は「カスタム」に変わります。
SQL Server データベースユーザのパーミッションを変更するには:
- [ウェブサイトとドメイン]>[データベース]>[ユーザ管理]で、データベースユーザ名をクリックします。
デフォルトで、新規作成されたデータベースユーザには読取および書込役割が付与されています。
- 読取アクセスまたは書込アクセスのみを許可するには、該当する役割(読取専用または書込専用)を選択します。
Microsoft SQL Server のデフォルトのパーミッションセットは以下のとおりです。
パーミッション |
読取および書込 |
読取専用 |
書込専用 |
db_backupoperator |
+ |
+ |
+ |
db_datareader |
+ |
+ |
- |
db_datawriter |
+ |
- |
+ |
db_ddladmin |
+ |
- |
+ |
ホスティング事業者はこれらのパーミッションセットを変更できます。
ユーザ役割の自動変更
ホスティング事業者は、さまざまな役割で付与されるパーミッションを追加または削除できます。
MySQL の場合、これらの変更は既存のデータベースユーザのパーミッションに影響を与えません。唯一の変更点は、Plesk で役割が「カスタム」に変わることです。これは、パーミッションが以前の役割(読取および書込、読取専用、書込専用)に対応しなくなるためです。Microsoft SQL Server の場合、既存のユーザのパーミッション(データベースレベルの役割)が、ホスティング事業者の行った変更に応じて変わります。
ホスティング事業者は、すべての MySQL データベースユーザに対し、一部のパーミッションを永久的に禁止することができます(オブジェクト削除パーミッションなど)。この場合、このパーミッションは Plesk に表示されません。Microsoft SQL Server では、当該パーミッションがすべての Plesk 役割から除外されていると、これはすべてのユーザに対して禁止されています。