Dixlaseの思想
Features
主な機能
セキュリティ、拡張性、透明性を軸に、コアが標準で備えている機能です。
追加プラグインなしで、以下がすべて動きます。


01
多層的なセキュリティ
パスキー認証とメールコード認証による2要素認証、IP制限、ログイン通知、ロールベースの権限管理を標準装備。
パスワードレスで使える最新のパスキー認証にも対応します。
02
プラグインで組み立てるアーキテクチャ
コアは必要最小限に保ち、機能はすべてプラグインで提供します。
Dixlase自身の機能の多くも、外部のプラグインと同じAPIを通じて実装されています。
03
セルフホスト対応
あなたのサーバーで、あなたのデータを。
レンタルサーバー、VPS、専用サーバー、自社のオンプレミス環境など、あらゆる環境に自由に設置・運用可能です。
04
詳細な監査ログ
管理画面で行われたすべての操作を、構造化された形式で記録します。
運用の透明性を支え、インシデント時の説明責任を担保します。
05
サイトヘルスチェック
セキュリティ設定、構成、運用状態を定期的に診断します。
問題を早期に発見し、結果は機械可読な形式で出力されます。
06
安心のセットアップ
最初の一歩から、安全に。
インストール時のウィザードが、環境設定、データベース接続、管理者登録、初期セキュリティ設定までをガイドします。
07
CSP対応(Content Security Policy)
不正なスクリプトの実行を防ぐ Content Security Policy ヘッダーを標準で送信。
XSS やコンテンツ改ざんから訪問者を保護します。
08
プラグインの安全性 — 権限・多層防御・署名検証
プラグインが使える API やデータ操作を権限として明示的に宣言。
静的解析・署名検証・健全性スコアによる多層的なゲートで、リスクのあるプラグインや改ざん・なりすましをインストール時点で検出・ブロックします。
Three-Layer Defense
入口・中身・実行 — 3層で守る
「誰が入るか」「何を入れるか」「何が動くか」— セキュリティの守る対象をこの3層に分解し、いずれも追加プラグインなしに コア機能として設計しています。
入口
誰が入るか
- パスキー
- 2要素認証
- IP制限
- ログイン通知
中身
何を入れるか
- 権限宣言
- 静的解析
- 署名検証
- 健全性スコア
実行
何が動くか
- CSP 標準送信
- クリックジャッキング対策
- 監査ログ
Dixlase Standard Security Manifest
標準装備しているセキュリティ機能
インストール直後、追加プラグインなしで有効になっている項目です。
プラグインで追加できる項目でも、標準で有効かどうか でセキュリティ設定の抜け漏れは大きく変わります。
23項目が、追加設定なしで有効
認証・アカウント
- 2要素認証
- パスキー(WebAuthn)
- ログイン試行制限
- パスワード辞書攻撃対策
- CAPTCHA
- 緊急バイパス
2要素認証
情報セキュリティ規程の必須要件になることが多いです。標準装備なら調達仕様書のチェック項目にそのまま応えられます。
パスキー(WebAuthn)
パスワードレス認証への移行を運用者が別途手配せずに開始できます。フィッシング耐性が最も高い認証方式です。
ログイン試行制限
ブルートフォース攻撃を CMS 側で自動遮断します。運用者が Web サーバや WAF の設定に踏み込まなくても、しきい値到達で該当アカウント / IP を一定時間ロックできます。
パスワード辞書攻撃対策
弱いパスワードや既知漏洩パスワードを登録時点で拒否します。侵入経路そのものを絶つことで、事後の検知・封じ込めコストを不要にします。
CAPTCHA
Cloudflare Turnstile や Google reCAPTCHA などの外部 CAPTCHA サービスとの連携を、プラグイン追加やカスタマイズなしで有効化できます。ログイン画面はもちろん、問い合わせプラグインなど他の入力フォームでも同じ設定で使い回せます。
緊急バイパス
外部 CAPTCHA サービスや SMTP のメール到達に障害が発生した場合でも、時間制限とスコープ制限つきで一時的にバイパスできます。「セキュリティ機能そのもので運用者が締め出される」事態を防ぐための Break-glass 機構です。
Web セキュリティ・アクセス制御
- CSP 標準送信
- IP 制限 (管理画面 / フロント)
- アップロードファイル検証
- 管理画面 URL の変更
- API・Webhook 署名
CSP 標準送信
導入設定漏れによる XSS・クリックジャッキング対策の抜け穴を潰します。運用者が手動で HTTP ヘッダを設定する必要がありません。
IP 制限 (管理画面 / フロント)
管理画面だけでなくフロントも IP 単位で絞れます。Web サーバ側の設定に頼らず CMS 側で完結するので、ステージング公開や社内限定サイトを CMS 設定だけで実現できます。
アップロードファイル検証
アップロードされたファイルの拡張子ホワイトリスト、MIME 実体検証(偽装検出)、SVG 内スクリプトのサニタイズを標準で実装します。ファイル経由の XSS や実行可能ファイル混入といった攻撃を、追加設定なしで防げます。
管理画面 URL の変更
管理画面の URL パスを .env 一行で任意のパスに変更できます。「隠せば安全」ではなく、自動化された管理画面探索(WordPress 系の /wp-login.php を狙う定番攻撃など)の初手を外して、認証本体の防御に集中させる設計です。
API・Webhook 署名
送信 Webhook と API リクエストに HMAC-SHA256 署名を付与し、受信側で検証できます。通信途中のペイロード改ざんやリプレイ攻撃を、独自仕様(Dixlase API Signature Specification v1)で厳密に定義しています。
プラグイン・テーマの信頼
- プラグイン・テーマの署名検証
- プラグイン・テーマの権限宣言
- 健全性スコア
プラグイン・テーマの署名検証
配布途中での改ざんやなりすまし配布を、インストール時点でブロックします。プラグインとテーマに同じ検証ロジックを適用し、エコシステムを大きくしても信頼できる範囲を保つための土台です。
プラグイン・テーマの権限宣言
導入前に「そのプラグインやテーマが何をするか」が運用者に見えます。監査時の説明資料にそのまま使えます。
健全性スコア
静的解析の結果を数値化し、しきい値以下は自動でブロックします。判断を運用者の目視に依存させません。
運用・監査
- 監査ログ
- ログイン通知
- エラー通知
- 監査ログの改ざん検知
監査ログ
内部統制やアクセス経緯の説明資料に直結します。「誰が」「いつ」「何をしたか」を後から追える状態を、有事の後ではなく最初から用意します。
ログイン通知
不正アクセスを早期に検知できます。ログイン成功をすべて可視化することで、パスワード漏洩や乗っ取りに気付ける時間を数週間から数分に縮められます。
エラー通知
500 系例外・PHP エラー・キューの失敗を、発生と同時に管理者へ通知します。「人がログを定期監視する」ではなく「有事にプッシュで届く」運用に最初から寄せられます。
監査ログの改ざん検知
監査ログの各エントリをハッシュチェーンで連結し、完了した日ごとに HMAC 署名(シール)を自動で作成します。「データベース上のログが後から書き換えられていないか」を、運用者がコマンド(audit:integrity verify)とサイトヘルスで検証できます。署名鍵は既定でアプリケーションキーを使うため、検知の対象はデータベース上の改ざんです(専用の鍵も設定可能)。
完全性・復旧
- ファイル整合性チェック
- バックアップ
- ロールバック
- 緊急ロックダウン
- セーフモード
ファイル整合性チェック
コア・プラグイン・テーマのファイルが配布時点の署名済み状態と一致するかを定期検証します。侵入後のバックドア設置やファイル改ざんを早期発見できます。
バックアップ
DB とストレージのスナップショットを CMS 側でスケジュール取得します。運用者が cron・rsync・外部ツールを組み合わせずに、要件を満たすバックアップ体制を持てます。
ロールバック
プラグイン / テーマの更新前に自動スナップショットを作成し、問題が出たら 1 クリックで直前バージョンへ戻せます。「更新の踏み切りにくさ」を解消し、更新頻度自体を上げられます。
緊急ロックダウン
セキュリティインシデントの発生時、ワンクリックでサイト全体を保護モードに切り替えられます。切り替え履歴も同時に記録されるため、いつ・誰が・なぜ発動したかを後から追跡できます。
セーフモード
プラグインの不具合で管理画面に入れなくなった際、プラグインのルートだけをブロックしてコアと管理画面へ退避できます。「更新後に真っ白になり、復旧作業のための管理画面すら開けない」という事態を回避できます。
いずれもインストール直後、追加設定なしで有効です。この他にも様々なセキュリティ機能を標準で用意しています。詳細な仕様と検証手順は SECURITY.md をご覧ください。
Standards Alignment
主要ガイドラインとの整合
米国の NIST、国際的な OWASP、日本の IPA が Web セキュリティのベストプラクティスとして推奨する対策と、Dixlase の標準実装との対応関係を示します。
| 対策内容 | NIST | OWASP | IPA |
|---|---|---|---|
| 多要素認証 (MFA / 2FA) ※1 | AAL2 以上で必須 (SP 800-63B) | 強く推奨 (SMS は非推奨) | 強く推奨 |
| パスワード強度 (長さ・複雑さ) ※2 | 最低 8 文字 (SP 800-63B §5.1.1.2)。長さ重視・複雑性ルール廃止 | 最低 8 文字、高セキュリティ用途は 12 文字以上を推奨 (Auth Cheat Sheet)。長さ優先・複雑性押し付け回避 | 10 文字以上を推奨 |
| 辞書攻撃対策 (漏洩パスワード拒否) ※3 | 既知漏洩パスワードとの照合を要求 (SP 800-63B §5.1.1.2) | 同様に禁止 | 過去の漏洩パスワードの利用禁止 |
| ログイン試行制限 (ロックアウト) | ロックまたは遅延 (SP 800-63B §5.2.2) | レートリミットまたはアカウントロック | 一定回数失敗でロック推奨 |
| ログイン通知 ※4 | ユーザーへの通知を推奨 | 効果的な対策として明記 | 不正アクセス対策として推奨 |
| セッション管理 (有効期限・再認証) ※5 | セッションの寿命・再認証を規定 | Secure 属性等を含むセッション管理の徹底 | セッションタイムアウトを推奨 |
| CAPTCHA ※6 | 特に規定なし | ログイン試行制限の補完策として推奨 | ボット防止として有効と明記 |
| パスワード再設定の安全性 ※4 | 通信経路の安全性と本人確認を要求 | MFA や通知と併用を推奨 | メールリンクの期限設定など |
| TLS 強制 (HTTPS) ※7 | 通信の暗号化は必須 | HTTP を禁止、TLS 強制 | 常時 SSL を推奨 |
| ログイン履歴の表示 ※8 | 明示的な規定なし | ベストプラクティスとして推奨 | 利用者が確認できると望ましい |
| 認証エラーの曖昧化 | 同様に推奨 | エラーは一般化して推奨 | 「ユーザー名またはパスワードが間違っています」形式 |
| CSP・セキュリティヘッダの標準送信 | HTTP セキュリティヘッダを推奨 (SP 800-53 SI-10) | Top 10 A05:2021 / CSP Cheat Sheet | 安全なウェブサイトの作り方で XSS 対策として明記 |
| アクセス制御 (IP 制限・RBAC) | AC-3 (アクセス制御) / AC-6 (最小権限) (SP 800-53) | Top 10 A01:2021 (Broken Access Control) | 管理画面の露出最小化・権限分離を推奨 |
| 監査ログの取得と保護 | AU-2 (ログ取得) / AU-9 (ログ改ざん防止) (SP 800-53) | Top 10 A09:2021 / Logging Cheat Sheet | 情報セキュリティ管理基準で証跡保存を要求 |
| アップロードファイル検証 ※9 | 特化した規定なし | File Upload Cheat Sheet | ファイル経由の XSS 対策として明記 |
Manifest 掲載の 23 項目のうち、主要ガイドラインが推奨するのがこれら 15 項目です。Dixlase はいずれも Manifest 掲載機能として 標準実装 しています。
※1 Dixlase の 2FA は既定 optional (全ユーザーへの強制設定オプションあり)。email OTP は NIST SP 800-63B 上 AAL2 非該当のため、AAL2 相当を厳密に満たすにはパスキー (WebAuthn) の使用を推奨します。
※2 初期導入のしやすさを優先するため、Dixlase でのパスワード文字数の初期設定は 8 文字以上です。管理画面から最低文字数を変更でき、運用開始後は 12 文字以上への引き上げを推奨しています。
※3 漏洩パスワードの照合には外部 API (Have I Been Pwned) を使用しますが、パスワード本体は送信せず、SHA-1 ハッシュの先頭 5 文字のみ送信する k-Anonymity 方式のため、パスワードが外部に漏れる心配はありません。
※4 メール送信を伴う機能 (ログイン通知・パスワード再設定) を実際に動作させるには、管理画面でメールサーバー (SMTP) の設定が必要です。
※5 Dixlase の既定セッション寿命は 120 分 (管理画面で調整可)。NIST SP 800-63B AAL2 は非活動 30 分 + 絶対 12 時間上限を要求しているため、AAL2 準拠が必要な運用ではセッション寿命の短縮設定を推奨します。
※6 CAPTCHA サービスの利用には、外部プロバイダ (Cloudflare Turnstile / Google reCAPTCHA 等) でのアカウント登録とサイトキー / シークレットキーの取得が別途必要です。
※7 TLS 証明書はサーバー・ドメイン側で取得・設定していただく必要があります (Let's Encrypt、商用 CA 等)。Dixlase 側では取得済み証明書に対する HTTPS 強制と HSTS ヘッダ送信を担当しますが、これらは管理画面で有効化する設定 (デフォルトはオフ) となっています。
※8 Dixlase 本体には利用者向けのログイン履歴一覧 UI はありません。代わりにログイン通知メールとパスキーデバイス管理 UI (プロファイル > 2FA 管理) でログイン活動を把握できます。
※9 アップロードファイル検証はメディアライブラリ経路が対象です。プラグインが独自にアップロード機能を実装した場合、Core が validation を強制するメカニズムはないため、プラグイン側の実装に依存します。
NIST (アメリカ国立標準技術研究所)
米国商務省所管の連邦技術標準機関。政府調達の事実上の標準として国際的にも参照される。
参考ドキュメント: SP 800-63B (Digital Identity Guidelines — Authentication)、 SP 800-53 Rev. 5 (Security Controls Catalog)
OWASP (Open Worldwide Application Security Project)
Web アプリケーションセキュリティに特化した国際 OSS コミュニティ。Web エンジニア必携のガイド提供元。
参考ドキュメント: OWASP Top 10 (2021)、 OWASP Cheat Sheet Series
IPA (情報処理推進機構)
経産省所管の独立行政法人。日本の Web セキュリティ標準の代表格で、調達仕様書・監査資料で最頻出の引用元。
参考ドキュメント: 安全なウェブサイトの作り方、 情報セキュリティ 10 大脅威
Philosophy
設計思想
流行に追いつくためのCMSではなく、長く扱われ続けるための土台を作る。


01
守りはコアで、表現は自由に
セキュリティ、改ざん検知、権限制御、署名検証といった「守り」は、すべて コアの責任 です。一方、コンテンツをどう表現するか・どう編集するかは、ユーザーに最大限の自由 を与えます。
「守り = コアで完結」「表現 = 自由に拡張」── この分業によって、安全性を犠牲にせず表現の多様性を広げます。コアがセキュリティを固めているからこそ、運用者は コンテンツの生成・編集・運営 に集中できます。


02
最小限のコアと、最大限に拡張するプラグイン
CMSは全員に必要な機能と、一部にしか必要でない機能が必ず混在します。コアに詰め込めば、使わない人にはただの重さとなり、保守コストは全員に及びます。
Dixlaseは反対の方向を取りました。
コアは セキュリティ・フロントページ編集・ユーザー管理・権限管理・プラグインAPI に徹し、ブログやお問い合わせフォームなど、それ以外はすべてプラグインです。
標準機能も同じAPIで動くため、エコシステムの土台が自然に整います。


03
長く使えることを真ん中に
Webサイトは3年、5年、10年と運営されていきます。Dixlaseは初期構築の手軽さよりも、データ構造の安定性、後方互換性、明示的な廃止プロセスなど、長期運営に耐える設計 を優先しました。
いつでも離れられる自由があるからこそ、選び続けていただく意味があると考えています。


04
AIとの親和性も視野に
操作ログや診断結果を構造化された形で残し、外部ツールやAIが扱える土台を整える。これはAI機能を内蔵することではなく、AIが入ってこられる余白 をCMSの中に確保しておくという発想です。
MCPなどの新しい連携プロトコルが登場しても、CMS本体を作り変えずに対応できるよう、設計の段階から準備を進めています。
Values
価値の柱
5つの土台が支え合い、その上に「自由」が咲く構造です。
安全性
誰でも安心して使えるセキュリティ重視の設計。Laravelの堅牢な設計とモダンな認証基盤の上に、高水準のセキュリティを確保します。
公平性
企業・フリーランス・教育機関・自治体を問わず、誰もが正当なルールと支援のもとで関われるよう、貢献ルールや認定制度を整備します。
透明性
ガバナンス、商標利用、ライセンス区分などの運用ルールを明示し、利用者・開発者が安心して参加できる環境を提供します。
拡張性
コアを最小限に保ち、必要な機能だけを選び自由に組み合わせられる設計。プラグイン・コード・設定、どの方法にも対応します。
持続可能性
有償プラグイン・ライセンス・サポート制度を整備し、開発者・貢献者・パートナー企業が継続的に関われる経済圏を形成します。


そして、すべての上に
自由 — 利用・改変・自主運用の自由
DixlaseはGPL/AGPLに準拠し、OSSの自由を尊重します。
ここで言う自由とは、利用の自由(誰でも無償で使える)、改変の自由(コードを読み、直せる)、自主運用の自由(自社のサーバで、自社のデータで動かす — SaaS 依存なし)の3つです。
データは標準的な RDBMS(MySQL / MariaDB / SQLite)に保存され、スキーマも AGPL の下で公開されています。事業者側の都合でデータへのアクセスが失われることはありません。
ライセンスだけでなく、安全性・公平性・透明性・拡張性・持続可能性がそろって初めて、この3つが実質を持つと考えています。
Who it's for
こんな方に
セキュリティと長期運用を真ん中に置いたDixlaseが、最も力を発揮する場面です。

For Public
自治体・教育機関
個人情報を第三者に預けずに済むセルフホスト構成です。
コードもデータも透明で、住民・生徒の情報を扱う公共性の高い組織に向いています。
For Enterprise
高セキュリティ要件の法人
情報セキュリティ規程が定める要件に、追加プラグイン抜きで応えられます。
監査ログ・アクセス制御・CSP がすべて標準装備です。
For Agencies
制作会社・フリーランス
導入するプラグイン・テーマのセキュリティを、健全性スコアと署名検証で導入前に判定できます。
Also fits もちろん、中小企業・個人事業主 / NPO・コミュニティ / ブログ・個人サイト にもお使いいただけます。
License
AGPL × 商用 — デュアルライセンス
OSSとしての自由と、商用利用の柔軟性、どちらも選べます。
コアは AGPL で誰でも自由に利用・改変・再配布できます。
コアを改変したコードを非公開にしたい場合(SaaS提供・クローズドソース製品への組み込み等)のために、商用ライセンス も用意しています。

改変する?
(プラグイン/テーマで拡張) → AGPL公開義務なし
Official Plugin License
公式プラグインのライセンス
公式プラグインは GPL × 商用ライセンス のデュアルライセンスです。
コアとは別系統にすることで、開発者・利用者が目的に合った選択をできます。
サードパーティ製は プラグイン・テーマ例外条項 により、作者が独自のライセンスを自由に設定できます。
ユーザー入力を受け付けても、ソース公開義務は発生しません
ブログ・フォーム・コメントなど一般ユーザーの入力を受け付けるプラグインでも、GPLではAGPLと異なり、ユーザー入力を理由としたソース公開義務は発生しません。
コアのAGPL機能を使う部分は、ライセンス伝搬が発生しません
プラグインがコアの AGPL 機能を呼び出す部分には プラグイン・テーマ例外条項(LICENSE-EXCEPTIONS)があり、ライセンスは伝搬しません。
プラグインは独立して GPL または商用で配布できます。
受託案件では、そのまま使っても、改変して使っても OK
GPL プラグインは、受託案件でそのまま使っても、要件に合わせて改変して提供しても問題ありません。
AGPL のような訪問者全員への公開義務は生じません。
改変版を顧客に納品する場合は GPL により納品先(顧客)へのソース提供義務がありますが、PHP プラグインはソース自体が納品物となるため、通常は追加の手続きなく満たされます。
コア(AGPL)を改変して提供する場合は、訪問者全員に公開義務が発生します
コア(AGPL)を改変してネットワーク経由で利用できる状態にすると、AGPL 第13条により、稼働サイトの利用者全員にソース取得手段を提供する義務が生じます。
開示義務が発生する/しないケース(ローカル開発・社内利用は対象外など)や回避方法の詳細は、FAQ 「コアを改変した場合、どんなときに開示義務が発生しますか?」 をご覧ください。
AGPL
AGPL を選ぶ場合
- 受託案件(コアを改変しない場合)
- 個人のブログやサイトを作りたい方
- 自社サイトでの運用、社内利用(コアを改変しない場合)
- OSSコミュニティへの貢献を前提とした開発
商用ライセンスを選ぶ場合
- 改変版をベースにした SaaS提供、ホスティング事業
- 公開サイトでも改変版を非公開にしたい受託案件
- クローズドソースを前提とした商用製品への組み込み
初期リリースでは商用ライセンスはまだ提供されません。現在、提供開始に向けて準備を進めています。
ライセンス本文を読む
Status & Roadmap
開発状況とロードマップ
どこまで進んでいて、どこへ向かっているのか。フェーズで区切って公開しています。
v0.x — 初期リリースに向けた開発中
コア機能と一部の公式プラグインは動作する状態にあり、
APIの安定化、ドキュメントの整備、コミュニティ運営の準備を並行して進めています。
開発は現在、exc-D inc. を中心に進めています。
将来的にはコア機能への外部コントリビューションも受け入れていく予定ですが、
コア設計の安定化を優先し、初期リリース後の運用状況を見極めてから受付時期を判断したいため、
現時点ではコードPRは受け付けておらず、Issueでのバグ報告とフィードバックを歓迎しています。
v1.0 に向けて
- プラグインAPIの改善(変更は CHANGELOG で事前にお知らせします)
- コアやプラグインのバグ修正
- ドキュメントの整備(インストール・運用ガイド、Plugin API リファレンス)
v1.0 以降に予定していること
- 継続的なバグ修正とパフォーマンス改善
- 監査ログ改ざん検知の拡張(検証の定期実行・管理画面からの検証)
- 公式プラグインの拡充(ブログ、カスタム投稿・カスタムフィールドなど)
- CSP 厳格モード(strict mode)対応
- 商用ライセンスの提供
- 商用プラグイン/有償サポートの体制整備
- プラグインAPIの凍結(時期はバージョンと結び付けず、設計が固まった時点でお知らせします)
- 法務レビューを経た CLA の確定と、外部コードコントリビューションの開放
- そのほか、様々な機能や概念を構想中
このロードマップは Dixlase の方向性を示すものですが、状況に応じて変更されることがあります。
重要な変更は事前にお知らせします。
Laravel をベースに
Dixlaseは、モダンなPHPフレームワーク Laravel をベースに構築されています。世界的に支持されるLaravelの堅牢な設計と豊かなエコシステムを土台にすることで、CMSとしての安全性・保守性・拡張性を、最初から確かなものとして確保しました。
Laravel開発者の方なら、慣れ親しんだ書き方でプラグインやテーマの開発をすぐに始められます。MVC構造、Bladeテンプレート、Composerによる依存管理──すべて期待通りに動きます。
For Developers
開発者向け
Dixlaseは開発者と一緒に育てるCMSです。あなたが作るプラグイン、テーマ、統合は、Dixlaseの機能そのものを形作っていきます。
GitHub でコードを読む
アーキテクチャ、コーディング規約、設計判断の背景を確認できます。
Plugin API の設計思想を読む
コアとプラグインの境界、AGPL の伝搬を止める例外条項の考え方など、開発を始める前に押さえておきたい前提を先に確認できます。
Plugin API は公開済みですが、まだ凍結していません。互換性を壊す変更が必要になった場合は、リリースノートで告知し、可能な限り移行手段をご案内します。
ドキュメントサイトを待つ
Plugin API リファレンスとチュートリアルを収めたドキュメントサイトは、プラグイン・テーマ開発キットと同時に近日公開予定です。
Issueで対話する
バグ報告、機能要望、設計議論を歓迎しています。
コントリビューションについて — 開いている入口
Dixlase への参加口は6つあります。いま準備中なのは「コアへのコードPR」の1つだけで、残る5つはすべて開いています。
| 領域 | 状態 |
|---|---|
| バグ報告・機能提案(GitHub Issues) | 開いている |
| ドキュメント・翻訳の誤りの指摘 | 開いている |
| 脆弱性報告(SECURITY.md) | 開いている |
| プラグイン・テーマの独自開発 | 完全に自由 (CLA不要・ライセンス自由) |
| コアへのコードPR | 準備中 |
ご質問は お問い合わせフォーム へお寄せください。
コアへのコードPRを開放する条件(期限ではなく条件で管理しています):
- 法務レビューを経た CLA の確定
- コントリビューションガイドラインとレビュー体制の整備
- AI支援コードの取り扱い方針の運用開始
整い次第、順次開放します。進捗はリリースノートでお知らせします。
機能のご提案の際は、このページの設計思想を踏まえ、コアに入れるべき機能か、プラグインとして実現できるか もあわせてご検討いただけると議論がスムーズです。セキュリティ上の脆弱性は公開 Issue を避け、SECURITY.md の手順(security@dixlase.org への非公開報告)でお寄せください。AI 支援コードや Issue の取り扱い方針は CONTRIBUTING.md にまとめています。
ドキュメントサイトはプラグイン・テーマ開発キットと同時に近日公開予定です。
コア構造、Plugin API リファレンス、開発チュートリアルを収録します。
Trademark
商標について
「Dixlase(ディクセイラス)」の商号およびロゴは、
現在 商標登録を出願中 です。
名前の由来 — 「Dixlase」には、exc-D の D、Laravel の L、そして Security・Safety・Sustainability の S を込めています。Laravel を土台に、exc-D がセキュリティ・持続可能性を核として作る CMS——それが、この名前とロゴに込めた意味です。
「Dixlase」「ディクセイラス」の両表記とブランドロゴは現在、 exc-D inc. により商標登録出願中です。登録完了までの間も、ブランドの一貫性と誤認防止のため、名称・ロゴの使用にあたっては配慮をお願いします。
正式な商標登録の完了および使用ガイドラインの公開は、登録完了次第、改めてアナウンスします。商標に関するお問い合わせは、exc-D inc. までご連絡ください。
FAQ
よくある質問
v0.x の現状、ライセンス、サポート、長期計画──訪問者の方が抱きやすい疑問にお答えします。
現時点(v0.x)では、本格的な本番運用を強くお勧めする段階にはありません。コア機能と一部の公式プラグインは動作しますが、APIの安定化やドキュメントの整備を進めている最中です。v0.x の間は、今後のリリースで互換性のない変更(破壊的変更)が入ることがあります。変更は CHANGELOG でお知らせします。
評価・検証用途、社内ツール、プラグイン開発の練習用途などには問題なく使えます。本番運用は v1.0 リリース以降 を推奨します。早期にお試しいただいた方からのフィードバックは、開発に直接反映していきます。
はい、無料です。Dixlase の コアは AGPL ライセンスで無料公開 しており、誰でも自由に利用・改変・再配布できます。公式プラグインも GPL で無料提供 されます。
ただし、コアを改変 して使う場合で、以下のように改変したソースコードを非公開のまま運用したいケースでは、別途 商用ライセンス のご検討が必要です。
- 改変版をベースにした SaaS提供、ホスティング事業
- コアを改変して構築する受託案件で、公開サイトでも改変版を非公開にしたい場合
- クローズドソースを前提とした商用製品への組み込み
- コアを改変した上で、セキュリティ要件により改変版を非公開のまま運用する必要がある企業・自治体
コアを改変せず、機能追加はプラグインやテーマで行う通常の運用であれば、ソースコードの公開義務は発生しません。
AGPL(Affero General Public License)は、GPL に「ネットワーク条項」を加えたコピーレフト型のオープンソースライセンスです。Dixlase のコアはこの AGPL バージョン3で公開されています。
通常の GPL では、改変版を「頒布(配布)」したときにソースコードの公開義務が生じます。しかし改変版を配布せず、ネットワーク越しのサービスとして提供する場合は頒布とみなされないため、改変版を非公開のまま運用できてしまいます。AGPL 第13条「Remote Network Interaction」は、改変版をネットワーク経由で利用できる状態にした場合にもソース取得手段の提供を義務化することで、この抜け穴を塞ぎます。
正確な条件は AGPL 第13条「Remote Network Interaction」に定められています。詳しくは GNU AGPL-3.0 の原文(英語) をご参照ください。
Dixlase のコアは、改良が公開され続ける状態を保つために AGPL を選びました。
GPL のコピーレフトは「頒布(配布)」を引き金にするため、改変版を配布せず、ネットワーク越しのサービスとして提供する場合には、ソースを公開する義務が生じません。この形が広がると、改良が公開されないまま使われ続けることになります。AGPL 第13条は、改変版をネットワーク越しに利用させる場合にも、利用者にソースの取得手段を提供することを求め、この差を埋めます。
この第13条が関わるのは、コアを改変した版を、ネットワーク越しに利用させる場合です。コアを改変せずに導入し、プラグインやテーマで機能を加える制作会社や一般の利用者に、この条項による公開義務は生じません(プラグインやテーマ自体のライセンスについては FAQ「プラグイン・テーマ例外条項(LICENSE-EXCEPTIONS)とは何ですか?」をご覧ください)。
将来的には、非公開のまま利用する道を商用ライセンスで用意する計画です(初期リリース時点では未提供。詳しくは FAQ「商用ライセンスはいつ提供されますか?」をご覧ください)。
Dixlase コアを改変し、その改変版をネットワーク越しに利用できる状態にすると、AGPL 第13条により、その稼働サイトのネットワーク利用者全員にソースコードの取得手段を提供する義務が生じます。この「利用者」には管理者やログインユーザーだけでなく、公開ページを閲覧するだけの一般訪問者も含まれます。コアを改変している限りサイト全体が「改変版」となるため、フロントページやプラグイン生成ページを見ているだけの訪問者も対象です。
開示義務が生じるかどうかは、コアを改変したかと、改変版をネットワーク越しに使う利用者がいるかの2点で決まります。具体的には次のとおりです。
- ローカル環境での試作・カスタマイズ・バグ修正・セキュリティパッチ開発など、手元で動かしているだけの段階 → 開示義務は発生しません
- 社内限定での運用 → 一般大衆への公開義務は発生しません(社内の利用者にソース取得手段を提供する形に限られます)
- 自社サイト・個人サイト・受託案件のいずれであっても、コアを改変したものを一般公開のウェブサイトとして運用 → 訪問者全員への開示義務が発生します(営利・非営利や運営主体は問われません)
- コアを改変せず、機能追加をプラグインやテーマで行う(プラグインやテーマ自体の改変を含む) → 開示義務は発生しません(プラグイン・テーマ例外条項の対象)
- 商用ライセンスを取得 → この開示義務は免除されます
機能追加はプラグインやテーマで行うのが Dixlase の前提であり、通常のクライアント案件でコアそのものを改変する必要が生じることはほとんどありません。コアの改変版を非公開のまま一般公開サイトで運用したい場合は、商用ライセンスの取得をご検討ください。
自社サイトの運用・社内利用・サイト構築の受託案件・OSS貢献を前提とした開発は、コアを改変しない限り AGPL で問題ありません。機能追加はプラグインやテーマで行うのが Dixlase の前提です。
コンテンツ生成機能や問い合わせフォームの追加は 公式プラグインの利用や開発を、デザイン変更は 公式テーマの利用や自作をおすすめします。いずれも GPL と商用ライセンスで提供され、そのまま使っても改変しても、一般大衆へのソース公開義務は発生しません。サードパーティ製を使う場合は配布元のライセンスをご確認ください。
一方、コアを改変したものをソース非公開のまま運用したい場合や、クローズドソース を前提とした商用製品へ組み込む場合は、商用ライセンスをご検討ください。開示義務の発生条件(ローカル開発や社内利用は対象外)は FAQ「コアを改変した場合、どんなときに開示義務が発生しますか?」を、判断に迷う場合はお問い合わせください。
商用ライセンスの提供は予定していますが、現時点では 契約条件・料金体系などを策定中 です。提供準備が整い次第、順次アナウンスいたします。
早期にご検討いただける場合は、お問い合わせください。導入予定の用途やご要望をお聞かせいただければ、提供開始時の優先案内などの対応も可能です。
初期リリース時点では、Dixlase本体に標準搭載される機能(セキュリティ、認証、フロントページ、監査ログなど)に加え、ページ作成・お問い合わせ・メニュー・SEO・Cookie 同意の 5 つの公式プラグインを同時に提供します。ブログ・カスタム投稿・カスタムフィールドなど、より高度な用途に向けたプラグインは、準備が整ったものから順次公開し、v1.0 以降も継続して拡充していきます。
サードパーティのプラグインエコシステムは、これからコミュニティとともに育てるフェーズです。プラグインAPIは公開済みのため、Laravel開発者の方ならすぐに開発を始められます。ベータ期間中の変更は CHANGELOG でお知らせします。
はい、新規開発が可能です。Dixlase では プラグイン・テーマ開発キット をプラグインとして提供予定です。これをインストールすると、雛形生成やビルド支援、APIリファレンスなどの開発支援機能が利用できるようになり、迅速に開発を始められます。
公開済みのプラグインAPIと組み合わせることで、Laravel開発者の方なら慣れ親しんだ書き方でそのまま機能を実装できます。
Plugin API の境界を守って実装する限り、プラグイン・テーマ例外条項により、派生物に該当するか否かにかかわらず AGPL の要件が適用されず、開発者は自身のコードの著作権を保持したまま、GPL・MIT・商用・プロプライエタリなど ライセンスを自由に設定 できます(詳しくは FAQ「プラグイン・テーマ例外条項(LICENSE-EXCEPTIONS)とは何ですか?」をご覧ください)。
サイトの運用者(管理画面からコンテンツを更新する方)にLaravelの知識は必要ありません。GUIだけで操作できます。
Laravelの知識が活きるのは、プラグインやテーマを開発する場合です。Laravel経験者であれば、慣れ親しんだ書き方でそのまま開発を始められます。Laravel未経験でも、PHPに触れたことがある方なら学習コストは比較的低めです。
現時点では、WordPress やほかのCMSからの自動移行ツールは提供していません。記事や固定ページの内容については、各CMSのエクスポート機能を使って書き出したデータを、手動でDixlaseに取り込むことは可能です。ただし、テーマ、プラグイン、ショートコードはそのまま動きません。
移行ツールやコンテンツ引っ越し支援プラグインについては、ご要望があれば提供を検討します。もしくは、ほかのユーザーの方に移行ツールやプラグインを開発していただくのも大歓迎です。
現時点では、GitHub Issues でのバグ報告・質問対応、コミュニティでの議論を歓迎しています。
法人向けの有償サポート(導入支援、優先対応、SLA保証など)は、v1.0 リリース後に体系的に整備していく予定です。早期にサポート契約をご希望の場合は、個別にご相談ください。
Dixlaseは exc-D inc. の中核事業として開発を進めており、AGPLによる無償提供と、商用ライセンス・有償プラグイン・サポート契約を組み合わせた、持続可能な収益モデルを構築していく計画です。
また、ソースコードは GitHub に公開しているため、仮に開発元の体制に変化があったとしても、第三者がフォークして開発を継続することが技術的に可能です。AGPLのソースコード公開義務は、長期利用者にとってのセーフティネットとして機能します。
現時点でサポートする言語は 日本語と英語のみ です。それ以外の言語については、ご要望が一定数集まった段階で順次検討します。
対応してほしい言語があれば、お気軽にご要望をお寄せください。
現在は、コードの Pull Request は外部から受け付けていません。
Issue でのバグ報告・機能提案・議論は引き続き歓迎しています。
機能のご提案の際は、コアに入れるべき機能か、プラグインとして実現できるかもあわせてご検討いただけると、議論がスムーズです。
受付を保留しているのは、次の理由からです。
- コア設計・プラグインAPIの安定化を優先しているため
- 初期リリース後の運用を安定させ、利用者からの反響や利用状況を見極めてから、受付を開始するタイミングを判断したいため
Dixlase のライセンスの性質上、コントリビューションの受付には CLA(コントリビューターライセンス契約)の用意が必要です。法務レビューを経た CLA を整えたうえで受付を開始し、その際に改めてお知らせします。コントリビューションの流れは CONTRIBUTING.md を、CLA については下記の FAQ「CLA とは何ですか?」をご覧ください。
CLA(Contributor License Agreement / コントリビューターライセンス契約)は、Dixlase のデュアルライセンス方式(AGPL + 商用ライセンス)を支えるための仕組みです。コアに取り込むコントリビューションを含めて再ライセンスできるよう、外部コントリビューターから同意をいただく必要があります。コードの著作権はコントリビューターに帰属し、デュアルライセンスを支えるためのライセンス許諾と、その行使を妨げない範囲での同意をいただく形です。
著作権の取り扱いについては COPYRIGHT-POLICY.md をご覧ください。CLA の全文は法務レビュー完了後、受付開始と同時に公開します。
CSP(Content Security Policy)は、Webサイト上で実行できるスクリプトや読み込めるリソースをブラウザレベルで制限する標準の仕組みです。Dixlase は最初から本番運用に耐える水準の CSP を強制送信します。
目的は、プラグイン・テーマやコンテンツに混入しうる悪意あるスクリプトの実行を防ぐ ことです。XSS(クロスサイトスクリプティング)によるサイト改ざん・情報漏えい・認証情報の盗取を未然にブロックします。
Dixlase が標準モードで送信する CSP の特徴:
- nonce ベースのスクリプト制御 — Dixlase 自身が発行したスクリプトのみ実行可能
- インラインイベントハンドラの完全ブロック —
onclick等の属性経由の攻撃を遮断 - 管理画面のクリックジャッキング対策 — 管理画面の iframe 埋め込みを既定で禁止
- 同一オリジン優先 — フォーム送信先・iframe 埋め込み先・ベース URI を自オリジンに限定
- 動的な許可 — CAPTCHA や外部 CDN は使用時のみ許可される
- 違反の可視化 — 違反レポートを管理画面で集約して確認できる
運用者は2つのモードを選べます。開発モードは違反を記録のみ(Report-Only)とし、開発時に違反箇所を発見しやすくします。標準モードは違反を強制ブロックし、本番運用に推奨されます。Dixlase は標準装備で、設定漏れのリスクを最小化します。
なお、最も厳しい 厳格モード(strict mode) は初期リリースには含まれていません。Alpine.js のバンドル切替、Trusted Types ポリシーの整備、独自ブートローダーの導入など、エコシステム全体に影響する作業が必要なため、今後のバージョンアップで対応予定です。
プラグインが利用できる API・データベース操作・ファイルアクセス・外部通信などを、プラグインごとに 明示的な権限 として宣言する仕組みです。コアはこの宣言と実際のコードを 静的解析 で照合し、宣言外の API 利用や危険な API 呼び出しを検出します。検出結果は 健全性スコア(0〜100点)に反映され、しきい値を下回るプラグインはインストール・有効化がブロックされます。
この仕組みは以下を目的とした 多層防御モデル です:
- プラグインが使う権限が事前に明示され、運用者が把握できる
- 危険な API(
exec、evalなど)の利用が静的解析で検出される - 署名検証と組み合わせ、改ざんやなりすましをインストール前に弾く
- プラグイン作者と利用者の間で「何ができるか」が明示的になり、監査が容易になる
他の CMS では、1つのプラグインの脆弱性でサイト全体が乗っ取られる事例も報告されています。完全な解決には サンドボックス化(WebAssembly や別プロセス分離などの実行隔離)が有効ですが、Dixlase では 現在まだ提供していません。その代わり 権限宣言・静的解析・署名検証・健全性スコア の組み合わせで、リスクのあるプラグインがそもそもインストールされないよう設計レベルでゲートしています。
サンドボックス化については こちらの FAQ をご覧ください。
サンドボックス化とは、プラグインが使える API・ファイル・メモリ・ネットワークなどを、OS・プロセス・仮想マシン・WebAssembly ランタイムなどのレベルで実行時に隔離する 仕組みです。プラグインに脆弱性や悪意あるコードがあっても、隔離環境の外に影響が及ばず、サイト全体やデータベースが構造的に守られます。
Dixlase は PHP ベースの CMS で、プラグインはコアと同じプロセス内で実行されるため(WordPress・Drupal など PHP ベース CMS に共通の特性)、完全なサンドボックス化はまだ提供していません。その代わり 多層防御モデル でリスクを管理しています:
- 権限宣言: プラグインが使う API を
plugin.jsonで明示 - 静的解析: 危険な API 呼び出しと宣言外の権限利用を自動検出
- 署名検証: Ed25519 で改ざんとなりすましを検出
- 健全性スコア: 0〜100点で評価、しきい値以下はインストールをブロック
今後のバージョンアップで、より強固な隔離(サンドボックス化)を段階的に進めてまいります。
プラグインやテーマは外部から入手するため、配布途中で 改ざん される、または なりすまし の偽物が出回るリスクがあります。Dixlase は配布元の電子署名を検証することで、提供されたコードが正規のものかをインストール前に確認します。署名検証に失敗したプラグインはインストールがブロックされます。
他の CMS では、改ざんされた偽物のプラグインやテーマがインストールされたことによる、実際の不正アクセス・情報漏えい・暗号通貨マイニング埋め込みなどの被害事例が報告されています。サプライチェーン攻撃と呼ばれるこの種の攻撃は、運用者が気付きにくいのが特徴です。
署名検証を標準の仕組みとして組み込むことで、こうした攻撃から運用者と訪問者を構造的に守ります。
AGPL のような「コピーレフト」ライセンスでは、AGPL のソフトウェアと連携するコードも AGPL の対象になる(ライセンスの伝搬)のが一般的です。これに対して Dixlase は、Plugin API を介してコアと連携するプラグインやテーマについて、それらが派生物に該当するか否かにかかわらず、AGPL の要件を適用せずに頒布できる という追加許可(例外条項)を独自に設けています。
この例外条項を適用できるプラグイン/テーマは、作者が 完全な著作権を保持 し、GPL、MIT、商用、プロプライエタリなど 独自のライセンスで自由に配布 できます。AGPL の義務を負いません。
ただし、これは 一方向の例外 です。コアコードを直接改変したものを「プラグイン」と再定義することで AGPL の義務を回避することはできません。例外条項の対象になるのは、Plugin API の境界を守って実装されたプラグイン・テーマだけです。
条項の正本は LICENSE-EXCEPTIONS に、Plugin API の境界定義は PLUGIN-API.md に記載されています。
Acknowledgments
謝辞
Dixlase は、優れたオープンソースとサービスの土台の上に成り立っています。
オープンソースの開発者とコミュニティに支えられて成り立つプロジェクトとして、感謝を込めてご紹介します。
Framework & Core
Laravel
PHP のモダンな Web フレームワーク。Dixlase のアプリケーションコア。
laravel.com →Symfony
PHP の再利用可能コンポーネント群と、それを束ねたフレームワーク。Laravel は HttpFoundation・Console・Routing など多数の Symfony コンポーネントを土台にしています。
symfony.com →Livewire
Laravel 上でリアクティブな UI を素直に書ける統合フレームワーク。
livewire.laravel.com →Alpine.js
軽量で宣言的な JavaScript フレームワーク。フロントエンドの即応性を支える。
alpinejs.dev →Tailwind CSS
ユーティリティファーストの CSS フレームワーク。一貫性ある UI の土台。
tailwindcss.com →Auth & Security
Laravel Fortify
Laravel 公式の認証スカフォールド。ログイン・登録・2要素の土台。
laravel.com/docs/fortify →Laravel Passkeys
Laravel 公式のパスキー(WebAuthn)対応パッケージ。パスワードレス認証を支える。
laravel/passkeys →Cloudflare Turnstile
プライバシーに配慮した非対話型 CAPTCHA。標準提供のドライバー。
cloudflare.com →Google reCAPTCHA
v2 / v3 / Enterprise を切替可能な、もうひとつの CAPTCHA 選択肢。
google.com/recaptcha →UI & Content
Font Awesome
管理画面・テーマで使用しているアイコンセットの定番。
fontawesome.com →Bunny Fonts
プライバシー配慮型のフォント配信。Figtree を読み込みに利用。
fonts.bunny.net →marked.js
高速・軽量な Markdown パーサ。コンテンツの Markdown レンダリングに利用。
marked.js.org →SortableJS
ドラッグ&ドロップによる並べ替え UI のための JavaScript ライブラリ。
sortablejs.github.io →Build & Toolchain
Node.js
JavaScript ランタイム
npm
JavaScript パッケージマネージャ
Composer
PHP パッケージマネージャ
Vite
フロントエンドビルドツール
Docker
コンテナ実行環境
これらに加え、Dixlase は数多くのライブラリとツールに支えられています。
すべての貢献者の皆さまへ、深く感謝いたします。
記載されている会社名・製品名・サービス名およびロゴは、各社の商標または登録商標です。
掲載は各プロジェクトへの謝意を示すものであり、提携・推奨関係を示すものではありません。