a-blog cms PHP API Reference

ScriptPolicyTransform extends HTMLPurifier_AttrTransform
in package

FinalYes

script の src を、ホスト whitelist に一致するものだけに限定する post-transform。

許可ホスト外の src は属性ごと落とす。script の content model は PurifierFactory で 子要素を持てない形に固定しているため、src を失った script は中身の無い <script></script> として 残るだけになる。

Why not URI.SafeIframeRegexp 相当の仕組みに任せないか: HTMLPurifier が script 向けに用意して いる HTML.SafeScripting は「src の完全一致リスト」で、iframe と同じ host[/pathPrefix] 形式 (クエリ文字列やバージョン違いのパスを含む実際の埋め込みスクリプト)を表現できない。 判定を AllowedHostRegexp に寄せることで iframe と同一のホスト解釈を共有する。

HTMLPurifier はカスタム HTML 定義をシリアライズしてキャッシュするため、本クラスは プレーンなデータ(ScriptPolicy)のみを保持し、シリアライズ可能に保つ。

Table of Contents

Properties

$policy  : ScriptPolicy

Methods

__construct()  : mixed
transform()  : array<string|int, mixed>

Properties

Methods

transform()

public transform(array<string|int, mixed> $attr, HTMLPurifier_Config $config, HTMLPurifier_Context $context) : array<string|int, mixed>
Parameters
$attr : array<string|int, mixed>

属性の連想配列

$config : HTMLPurifier_Config
$context : HTMLPurifier_Context
Return values
array<string|int, mixed> —

処理後の属性配列


        
On this page

Search results