許可されたユーザーのみがアクセスできるページの作成

最終更新日 : 2024年4月25日
メモ

Dreamweaver 以降では、ユーザーインターフェイスが簡素化されています。 そのため、この記事で説明されているオプションの一部が Dreamweaver 以降には存在しない場合があります。 詳しくは、こちらの記事を参照してください。

プロテクトされたページについて

webアプリケーションには、認証されたユーザーのみがアクセスできる保護されたページを含めることができます。

例えば、ユーザーがブラウザーで保護されたページのURLを入力してログインページをバイパスしようとした場合、ユーザーは別のページにリダイレクトされます。同様に、ページの認証レベルを管理者に設定した場合、管理者アクセス権限を持つユーザーのみがページを表示できます。ログインしたユーザーが適切なアクセス権限なしに保護されたページにアクセスしようとした場合、ユーザーは別のページにリダイレクトされます。

認証レベルを使用して、新しく登録されたユーザーにサイトへの完全なアクセスを付与する前にレビューすることもできます。例えば、ユーザーにサイトのメンバーページへのアクセスを許可する前に支払いを受け取りたい場合があります。これを行うには、メンバー認証レベルでメンバーページを保護し、新しく登録されたユーザーにはゲスト権限のみを付与します。ユーザーからの支払いを受け取った後、(登録ユーザーのデータベーステーブルで)ユーザーのアクセス権限をメンバーにアップグレードできます。

認証レベルを使用する予定がない場合は、ページに「ページへのアクセスを制限」サーバービヘイビアーを追加するだけで、サイトの任意のページを保護できます。サーバービヘイビアーは、正常にログインしていないユーザーを別のページにリダイレクトします。

認証レベルを使用する予定がある場合は、次の構成要素を使用してサイトの任意のページを保護できます:

  • 認証されていないユーザーを別のページにリダイレクトするページへのアクセスを制限するサーバービヘイビアー

  • 各ユーザーのアクセス権限を保存するためのユーザーデータベーステーブルの追加列

    認証レベルを使用するかどうかに関係なく、ユーザーがログアウトしてセッション変数をクリアできる保護されたページへのリンクを追加できます。

許可されていないビジターのリダイレクト

認証されていないユーザーがページにアクセスするのを防ぐには、ページへのアクセスを制限するサーバービヘイビアーを追加します。サーバービヘイビアーは、ユーザーがブラウザーで保護されたページの URL を入力してログインページをバイパスしようとした場合、または適切なアクセス権限なしにログインしたユーザーが保護されたページにアクセスしようとした場合に、ユーザーを別のページにリダイレクトします。

メモ

「Restrict Access To Page」サーバービヘイビアーは、HTML ページのみを保護できます。画像ファイルやオーディオファイルなど、他のサイトリソースは保護しません。

サイトの多くのページに同じアクセス権を付与したい場合は、あるページから別のページにアクセス権をコピーして貼り付けることができます。

認証されていないユーザーを別のページにリダイレクトします

プロテクトするページを開きます。
サーバービヘイビアーパネル(ウィンドウ > サーバービヘイビアー)で、プラス(+)ボタンをクリックし、ポップアップメニューからユーザー認証 > ページへのアクセスを制限を選択します。
ページのアクセスレベルを選択します。 特定のアクセス権限を持つユーザーのみがページを表示できるようにするには、ユーザー名、パスワード、およびアクセスレベルオプションを選択し、ページの認証レベルを指定します。

例えば、認証レベルリストで管理者を選択することで、管理者権限を持つユーザーのみがページを表示できるように指定できます。

リストに認証レベルを追加するには、「定義」をクリックします。 表示される「アクセスレベルを定義」リストで、新しい認証レベルを入力し、プラス(+)ボタンをクリックします。新しい認証レベルは、他のページで使用するために保存されます。

認証レベルの文字列が ユーザーデータベースに保存されている文字列と 完全に一致することを確認してください。例えば、 データベースの認証列に「Administrator」という値が含まれている場合は、 「名前」ボックスにAdministratorを入力し、Adminではなく 入力してください。

ページに複数の認証レベルを設定するには、 リスト内のレベルをControl キーを押しながらクリック(Windows)またはCommand キーを押しながらクリック(Macintosh)します。

例えば、Guest、Member、またはAdministrator権限を持つユーザーがページを表示できるように指定できます。

権限のないユーザーが 保護されたページを開こうとした場合に開くページを指定します。

プロテクトされていないページを選択してください。

「OK」をクリックします。

ページのアクセス権限をサイト内の他のページにコピーして貼り付ける

保護されたページを開き、サーバービヘイビアーパネルにリストされている「Restrict Access To Page」サーバービヘイビアーを選択します(プラス(+)ポップアップメニュー内のものではありません)。
パネルの右上角にある矢印ボタンをクリックし、 ポップアップメニューから「コピー」を選択します。

Restrict Access To Pageサーバービヘイビアーがシステムの クリップボードにコピーされます。

同様にプロテクトする他のページを開きます。
サーバービヘイビアーパネル(ウィンドウ > サーバー ビヘイビアー)で、右上角の矢印ボタンをクリックし、 ポップアップメニューから「貼り付け」を選択します。
プロテクトする各ページについて、手順 3 と 4 を繰り返します。

ユーザーデータベースにアクセス権限を保存する

このビルディングブロックは、 ログインした特定のユーザーに異なるアクセス権限を持たせたい場合にのみ必要です。 単にユーザーにログインを求めるだけの場合は、アクセス 権限を保存する必要はありません。

ログインした特定のユーザーに異なる アクセス権限を提供するには、ユーザーのデータベーステーブルに 各ユーザーのアクセス権限を指定する列(Guest、User、 Administratorなど)が含まれていることを確認してください。各ユーザーのアクセス権限は サイト管理者によってデータベースに入力される必要があります。

ほとんどのデータベースアプリケーションでは、新しいレコードが作成されるたびに列をデフォルト値に設定できます。デフォルト 値をサイトで最も一般的なアクセス権限(例えば、 Guest)に設定し、例外を手動で変更します(例えば、 GuestをAdministratorに変更)。これで、ユーザーはすべての管理者 ページにアクセスできるようになります。

データベース内の各ユーザーが、User、Administratorのような複数の権限ではなく、 GuestまたはAdministratorなどの単一のアクセス 権限を持っていることを確認してください。ページに複数のアクセス権限を設定するには (例えば、すべてのゲストと管理者がこのページを見ることができる)、 データベースレベルではなく、ページレベルでそれらの権限を設定します。

ログアウト

ユーザーが正常にログインすると、 ユーザー名で構成されるセッション変数が作成されます。ユーザーがサイトを離れるとき、Log Out Userサーバービヘイビアーを使用して セッション変数をクリアし、ユーザーを別のページ(通常はさよならまたは ありがとうページ)にリダイレクトできます。

Log Out Userサーバービヘイビアーは、 ユーザーがリンクをクリックしたとき、または特定のページが読み込まれたときに呼び出すことができます。

リンクとして機能するページ上の テキストまたは画像を選択します。
サーバービヘイビアーパネル(ウィンドウ > ビヘイビアー)で、 プラス(+)ボタンをクリックし、ユーザー認証 > Log Out Userを選択します。
ユーザーがリンクをクリックしたときに開くページを指定し、 「OK」をクリックします。

通常、このページは「ご利用ありがとうございました」などのメッセージを表示するページです。

特定のページが読み込まれたときにユーザーをログアウトする

Dreamweaver でロードするページを開きます。

通常、このページは「ご利用ありがとうございました」などのメッセージを表示するページです。

サーバービヘイビアーパネルで、プラス(+)ボタンをクリックし、 「ユーザー認証」>「ユーザーをログアウト」を選択します。
「ページ読み込み時にログアウト」オプションを選択し、「OK」を クリックします。