a-blog cms PHP API Reference

Authorization
in package

フォーム機能の認可判定を集約する。

ロール運用時は form_view / form_edit ロール、未使用時はコンフィグ設定 form_admin_authority に応じた編集者権限・管理者権限で判定する。 各ハンドラ(ACMS_POST_Form_* / ACMS_GET_Admin_Form_*)から共通利用する。

判定対象のユーザーは引数で受け取り、テスト時に任意のユーザーを差し込めるようにする。 ロール運用時はロールガードを直接利用し(Auth ファサードはガード選択がセッション ユーザー(SUID)基準になるため)、引数で受け取ったユーザーを基準に評価する。 ロール未使用時は sessionWithFormAdministration / sessionWithAdministration の 第3引数 userId に引数のユーザーを渡して評価する(cache は無効化し、判定対象 ユーザーが呼び出しごとに変わることを反映する)。sessionWith* 側が isPermissionOfEditor・isPermissionOfAdministrator・timemachineMode の判定を まとめて持つため、ここで同じ判定ロジックを再実装せずに済み、将来 sessionWith* 側にガードが追加された場合も自動的に追従できる (Authorization と同じ設計方針)。

Table of Contents

Methods

canDeleteLog()  : bool
フォームの投稿ログ削除が許可されているか
canEdit()  : bool
フォームの編集・作成・削除・複製・インポートが許可されているか
canView()  : bool
フォームの閲覧・エクスポートが許可されているか
canViewLog()  : bool
フォームの投稿ログ閲覧が許可されているか
roleGuard()  : Guard
ロールベースの権限判定ガードを取得する。

Methods

canDeleteLog()

フォームの投稿ログ削除が許可されているか

public canDeleteLog(int $userId, int $blogId) : bool

編集系(canEdit)と異なり、ロール未使用時はフォーム管理権限ではなく ブログ管理者権限(sessionWithAdministration)を要求する。

Parameters
$userId : int

判定対象のユーザーID(通常はログイン中のユーザー SUID)

$blogId : int

対象ブログID

Return values
bool

canEdit()

フォームの編集・作成・削除・複製・インポートが許可されているか

public canEdit(int $userId, int $blogId) : bool
Parameters
$userId : int

判定対象のユーザーID(通常はログイン中のユーザー SUID)

$blogId : int

対象ブログID

Return values
bool

canView()

フォームの閲覧・エクスポートが許可されているか

public canView(int $userId, int $blogId) : bool
Parameters
$userId : int

判定対象のユーザーID(通常はログイン中のユーザー SUID)

$blogId : int

対象ブログID

Return values
bool

canViewLog()

フォームの投稿ログ閲覧が許可されているか

public canViewLog(int $userId, int $blogId) : bool

閲覧系(canView)と異なり、ロール運用時は form_view 権限のみで判定する (form_edit だけのユーザーにはログを開放しない)。

Parameters
$userId : int

判定対象のユーザーID(通常はログイン中のユーザー SUID)

$blogId : int

対象ブログID

Return values
bool

roleGuard()

ロールベースの権限判定ガードを取得する。

private roleGuard() : Guard

Auth ファサードはガード選択をセッションユーザー(SUID)基準で行うため、 引数で受け取ったユーザーを基準に判定するにはロールガードを直接利用する。 roleAvailableUser() が真のユーザーに対してのみ呼ばれるため、本番では Auth ファサード経由(ロールユーザーは同じくロールガードに振られる)と同一の結果になる。

Return values
Guard

        
On this page

Search results