<< Piece_Unityユーザーズマニュアル

Interceptor_Authenticationプラグイン

(Piece_Unity_Component_Authentication >= 1.0.0)

Piece_Unity_Component_Authentication 0.13.0以前に対応するマニュアルはこちらを参照ください。

概要

認証済みユーザのみアクセスできるリソースへのアクセスを制御するためのインターセプタ?

コンポーネント

Piece_Unity_Component_Authentication

説明

boolean invoke (void)

このプラグインは、認証済みユーザのみアクセスできるリソースに対して、認証状態に基づいたシンプルなアクセス制御機構を提供するインターセプタ?です。このプラグインのプロセスフローは下記のとおりです。

  1. リクエストされたリソースが、アクセス制御の対象かどうかをチェックする。
  2. リソースがアクセス制御対象の場合、ユーザが認証済みかどうかをチェックする。
  3. ユーザが認証済みでない場合、認証URLへリダイレクトする。

なお、ユーザが認証済みでない場合、後続のインターセプタは実行されません。

例としてサンプルアプリケーションに含まれる設定を示します。

- name: Interceptor_Authentication
  point:
    - name: url
      type: configuration
      value: "http://example.org/basics/authenticate.php"
    - name: resources
      type: configuration
      value:
        - /protected-resource.php

上記の設定により、リソース"/protected-resource.php"に対してリクエストがあった場合に認証状態がチェックされるようになり、認証済みでなければ認証URL"http://example.org/basics/authenticate.php"にリダイレクトされます。

拡張ポイント

拡張ポイントはありません。

設定ポイント

realm

概要

認証リソースの領域名

デフォルト値

null

説明

エントリポイントなどでこの設定ポイントの値を切り替えることで、アプリケーションの複数のrealm(認証領域)に対応することができます。値がnullの場合は、デフォルトのrealmが使用されます。

例えば、フロントエンドアプリケーションとバックエンドアプリケーションを単一のPiece_Unityアプリケーションとして実装する場合、認証の状態はフロントエンドとバックエンドで個別に管理される必要があるため、この設定ポイントの使用を考えるとよいでしょう。

resourcesMatch

概要

正規表現で記述されたアクセス制御の対象となるリソース(URL)のリスト

デフォルト値

array()

説明

リクエストされたリソース(URL)がこの配列の要素の正規表現にマッチする場合、リソースはアクセス制御の対象とみなされます。

リソースはドキュメントルートからの相対パスで記述されている必要があります。

resources

概要

アクセス制御の対象となるリソース(URL)のリスト

デフォルト値

array()

説明

リクエストされたリソース(URL)がこの配列の要素にマッチする場合、リソースはアクセス制御の対象とみなされます。

リソースはドキュメントルートからの相対パスで記述されている必要があります。

url

概要

認証URL

デフォルト値

null

説明

realmに対するユーザの認証状態を変更するためのエントリポイントの絶対URL。複数のrealmがある場合、エントリポイントなどでそれぞれに対応するURLを適宜設定する必要があります。

ソースコード

Piece/Unity/Plugin/Interceptor/Authentication.php


<< Piece_Unityユーザーズマニュアル

ユーザコメント

Error: Failed to load processor AddComment
No macro or processor named 'AddComment' found

Attachments

  • 1.png (13.5 kB) - added by iteman 20 months ago. プロセスフロー