dsh-perm-gate 5.0.4 → 5.1.2-compat.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.ja.md +0 -2
- package/CHANGELOG.ko.md +0 -2
- package/CHANGELOG.md +4 -2
- package/INSTALL.ja.md +0 -15
- package/INSTALL.ko.md +0 -15
- package/INSTALL.md +0 -15
- package/INSTALL.zh.md +0 -15
- package/README.ja.md +6 -18
- package/README.ko.md +6 -18
- package/README.md +40 -19
- package/README.zh.md +34 -18
- package/assets/appcontainer-launcher.cs +703 -0
- package/dsh.plugin.json +2 -2
- package/lib/appcontainer/compile.d.ts +17 -0
- package/lib/appcontainer/compile.js +74 -0
- package/lib/appcontainer/exempt.d.ts +18 -0
- package/lib/appcontainer/exempt.js +71 -0
- package/lib/appcontainer/index.d.ts +85 -0
- package/lib/appcontainer/index.js +286 -0
- package/lib/appcontainer/probe.d.ts +44 -0
- package/lib/appcontainer/probe.js +66 -0
- package/lib/appcontainer/sid.d.ts +23 -0
- package/lib/appcontainer/sid.js +33 -0
- package/lib/appcontainer/wrap.d.ts +22 -0
- package/lib/appcontainer/wrap.js +40 -0
- package/lib/bridge.d.ts +34 -0
- package/lib/bridge.js +125 -0
- package/lib/client.js +1663 -1107
- package/lib/client.js.map +1 -1
- package/lib/config.d.ts +41 -1
- package/lib/config.js +6 -0
- package/lib/debug-generation.d.ts +21 -0
- package/lib/debug-generation.js +44 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.js +157 -7
- package/lib/runtime.d.ts +22 -0
- package/lib/runtime.js +24 -0
- package/locale/de.json +1 -0
- package/locale/en.json +1 -0
- package/locale/es.json +1 -0
- package/locale/fr.json +1 -0
- package/locale/it.json +1 -0
- package/locale/ja.json +1 -0
- package/locale/ko.json +1 -0
- package/locale/ru.json +1 -0
- package/locale/zh.json +1 -0
- package/package.json +25 -14
- package/README.de.md +0 -487
- package/README.es.md +0 -489
- package/README.fr.md +0 -498
- package/README.it.md +0 -490
- package/README.ru.md +0 -478
package/CHANGELOG.ja.md
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
# 変更履歴
|
|
2
2
|
|
|
3
|
-
言語: [English](./CHANGELOG.md) · [日本語](./CHANGELOG.ja.md) · [한국어](./CHANGELOG.ko.md) · [Français](./CHANGELOG.fr.md) · [Deutsch](./CHANGELOG.de.md) · [Italiano](./CHANGELOG.it.md) · [Русский](./CHANGELOG.ru.md) · [Español](./CHANGELOG.es.md)
|
|
4
|
-
|
|
5
3
|
このプロジェクトの重要な変更はすべてこのファイルに記録されます。
|
|
6
4
|
|
|
7
5
|
形式は [Keep a Changelog](https://keepachangelog.com/ja/1.1.0/) に従い、
|
package/CHANGELOG.ko.md
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
# 변경 로그
|
|
2
2
|
|
|
3
|
-
언어: [English](./CHANGELOG.md) · [日本語](./CHANGELOG.ja.md) · [한국어](./CHANGELOG.ko.md) · [Français](./CHANGELOG.fr.md) · [Deutsch](./CHANGELOG.de.md) · [Italiano](./CHANGELOG.it.md) · [Русский](./CHANGELOG.ru.md) · [Español](./CHANGELOG.es.md)
|
|
4
|
-
|
|
5
3
|
이 프로젝트의 중요한 변경 사항은 모두 이 파일에 기록됩니다.
|
|
6
4
|
|
|
7
5
|
형식은 [Keep a Changelog](https://keepachangelog.com/ko/1.1.0/)을 따르며,
|
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
Languages: [English](./CHANGELOG.md) · [日本語](./CHANGELOG.ja.md) · [한국어](./CHANGELOG.ko.md) · [Français](./CHANGELOG.fr.md) · [Deutsch](./CHANGELOG.de.md) · [Italiano](./CHANGELOG.it.md) · [Русский](./CHANGELOG.ru.md) · [Español](./CHANGELOG.es.md)
|
|
4
|
-
|
|
5
3
|
All notable changes to this project will be documented in this file.
|
|
4
|
+
## 统一 15-rc 枚举线:三宿主子包 peer 全量枚举(client-locale/client-ui-renderer/client-ui-settings),内容=保留场验证的 4.3.0-beta.2 同树,版本越过 compat 线 5.0.4。 — 2026-10-05
|
|
5
|
+
|
|
6
|
+
undefined
|
|
7
|
+
|
|
6
8
|
|
|
7
9
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
8
10
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
package/INSTALL.ja.md
CHANGED
|
@@ -4,28 +4,13 @@
|
|
|
4
4
|
- [中文 README](./README.zh.md)
|
|
5
5
|
- [日本語 README](./README.ja.md)
|
|
6
6
|
- [한국어 README](./README.ko.md)
|
|
7
|
-
- [Français README](./README.fr.md)
|
|
8
|
-
- [Deutsch README](./README.de.md)
|
|
9
|
-
- [Italiano README](./README.it.md)
|
|
10
|
-
- [Русский README](./README.ru.md)
|
|
11
|
-
- [Español README](./README.es.md)
|
|
12
7
|
- [Installation guide](./INSTALL.md)
|
|
13
8
|
- [中文安装指南](./INSTALL.zh.md)
|
|
14
9
|
- [日本語インストールガイド](./INSTALL.ja.md)
|
|
15
10
|
- [한국어 설치 안내](./INSTALL.ko.md)
|
|
16
|
-
- [Guide d'installation](./INSTALL.fr.md)
|
|
17
|
-
- [Installationsanleitung](./INSTALL.de.md)
|
|
18
|
-
- [Guida all'installazione](./INSTALL.it.md)
|
|
19
|
-
- [Руководство по установке](./INSTALL.ru.md)
|
|
20
|
-
- [Guía de instalación](./INSTALL.es.md)
|
|
21
11
|
- [Changelog](./CHANGELOG.md)
|
|
22
12
|
- [日本語 changelog](./CHANGELOG.ja.md)
|
|
23
13
|
- [한국어 changelog](./CHANGELOG.ko.md)
|
|
24
|
-
- [Français changelog](./CHANGELOG.fr.md)
|
|
25
|
-
- [Deutsch changelog](./CHANGELOG.de.md)
|
|
26
|
-
- [Italiano changelog](./CHANGELOG.it.md)
|
|
27
|
-
- [Русский changelog](./CHANGELOG.ru.md)
|
|
28
|
-
- [Español changelog](./CHANGELOG.es.md)
|
|
29
14
|
|
|
30
15
|
`dsh-perm-gate` バージョン **2.4.1**。判定チェーン、ルールファイル形式、自动审查
|
|
31
16
|
ティアについては [日本語 README](./README.ja.md) を参照してください。
|
package/INSTALL.ko.md
CHANGED
|
@@ -4,28 +4,13 @@
|
|
|
4
4
|
- [中文 README](./README.zh.md)
|
|
5
5
|
- [日本語 README](./README.ja.md)
|
|
6
6
|
- [한국어 README](./README.ko.md)
|
|
7
|
-
- [Français README](./README.fr.md)
|
|
8
|
-
- [Deutsch README](./README.de.md)
|
|
9
|
-
- [Italiano README](./README.it.md)
|
|
10
|
-
- [Русский README](./README.ru.md)
|
|
11
|
-
- [Español README](./README.es.md)
|
|
12
7
|
- [Installation guide](./INSTALL.md)
|
|
13
8
|
- [中文安装指南](./INSTALL.zh.md)
|
|
14
9
|
- [日本語インストールガイド](./INSTALL.ja.md)
|
|
15
10
|
- [한국어 설치 안내](./INSTALL.ko.md)
|
|
16
|
-
- [Guide d'installation](./INSTALL.fr.md)
|
|
17
|
-
- [Installationsanleitung](./INSTALL.de.md)
|
|
18
|
-
- [Guida all'installazione](./INSTALL.it.md)
|
|
19
|
-
- [Руководство по установке](./INSTALL.ru.md)
|
|
20
|
-
- [Guía de instalación](./INSTALL.es.md)
|
|
21
11
|
- [Changelog](./CHANGELOG.md)
|
|
22
12
|
- [日本語 changelog](./CHANGELOG.ja.md)
|
|
23
13
|
- [한국어 changelog](./CHANGELOG.ko.md)
|
|
24
|
-
- [Français changelog](./CHANGELOG.fr.md)
|
|
25
|
-
- [Deutsch changelog](./CHANGELOG.de.md)
|
|
26
|
-
- [Italiano changelog](./CHANGELOG.it.md)
|
|
27
|
-
- [Русский changelog](./CHANGELOG.ru.md)
|
|
28
|
-
- [Español changelog](./CHANGELOG.es.md)
|
|
29
14
|
|
|
30
15
|
`dsh-perm-gate` 버전 **2.4.1**. 결정 체인, 규칙 파일 형식, 自动审查 티어는
|
|
31
16
|
[한국어 README](./README.ko.md)를 참고하세요.
|
package/INSTALL.md
CHANGED
|
@@ -4,28 +4,13 @@
|
|
|
4
4
|
- [中文 README](./README.zh.md)
|
|
5
5
|
- [日本語 README](./README.ja.md)
|
|
6
6
|
- [한국어 README](./README.ko.md)
|
|
7
|
-
- [Français README](./README.fr.md)
|
|
8
|
-
- [Deutsch README](./README.de.md)
|
|
9
|
-
- [Italiano README](./README.it.md)
|
|
10
|
-
- [Русский README](./README.ru.md)
|
|
11
|
-
- [Español README](./README.es.md)
|
|
12
7
|
- [Installation guide](./INSTALL.md)
|
|
13
8
|
- [中文安装指南](./INSTALL.zh.md)
|
|
14
9
|
- [日本語インストールガイド](./INSTALL.ja.md)
|
|
15
10
|
- [한국어 설치 안내](./INSTALL.ko.md)
|
|
16
|
-
- [Guide d'installation](./INSTALL.fr.md)
|
|
17
|
-
- [Installationsanleitung](./INSTALL.de.md)
|
|
18
|
-
- [Guida all'installazione](./INSTALL.it.md)
|
|
19
|
-
- [Руководство по установке](./INSTALL.ru.md)
|
|
20
|
-
- [Guía de instalación](./INSTALL.es.md)
|
|
21
11
|
- [Changelog](./CHANGELOG.md)
|
|
22
12
|
- [日本語 changelog](./CHANGELOG.ja.md)
|
|
23
13
|
- [한국어 changelog](./CHANGELOG.ko.md)
|
|
24
|
-
- [Français changelog](./CHANGELOG.fr.md)
|
|
25
|
-
- [Deutsch changelog](./CHANGELOG.de.md)
|
|
26
|
-
- [Italiano changelog](./CHANGELOG.it.md)
|
|
27
|
-
- [Русский changelog](./CHANGELOG.ru.md)
|
|
28
|
-
- [Español changelog](./CHANGELOG.es.md)
|
|
29
14
|
|
|
30
15
|
`dsh-perm-gate` version **2.4.1**. Continue with the [README](./README.md) for the
|
|
31
16
|
decision chain, the rules file format and the 自动审查 tier.
|
package/INSTALL.zh.md
CHANGED
|
@@ -4,28 +4,13 @@
|
|
|
4
4
|
- [中文 README](./README.zh.md)
|
|
5
5
|
- [日本語 README](./README.ja.md)
|
|
6
6
|
- [한국어 README](./README.ko.md)
|
|
7
|
-
- [Français README](./README.fr.md)
|
|
8
|
-
- [Deutsch README](./README.de.md)
|
|
9
|
-
- [Italiano README](./README.it.md)
|
|
10
|
-
- [Русский README](./README.ru.md)
|
|
11
|
-
- [Español README](./README.es.md)
|
|
12
7
|
- [Installation guide](./INSTALL.md)
|
|
13
8
|
- [中文安装指南](./INSTALL.zh.md)
|
|
14
9
|
- [日本語インストールガイド](./INSTALL.ja.md)
|
|
15
10
|
- [한국어 설치 안내](./INSTALL.ko.md)
|
|
16
|
-
- [Guide d'installation](./INSTALL.fr.md)
|
|
17
|
-
- [Installationsanleitung](./INSTALL.de.md)
|
|
18
|
-
- [Guida all'installazione](./INSTALL.it.md)
|
|
19
|
-
- [Руководство по установке](./INSTALL.ru.md)
|
|
20
|
-
- [Guía de instalación](./INSTALL.es.md)
|
|
21
11
|
- [Changelog](./CHANGELOG.md)
|
|
22
12
|
- [日本語 changelog](./CHANGELOG.ja.md)
|
|
23
13
|
- [한국어 changelog](./CHANGELOG.ko.md)
|
|
24
|
-
- [Français changelog](./CHANGELOG.fr.md)
|
|
25
|
-
- [Deutsch changelog](./CHANGELOG.de.md)
|
|
26
|
-
- [Italiano changelog](./CHANGELOG.it.md)
|
|
27
|
-
- [Русский changelog](./CHANGELOG.ru.md)
|
|
28
|
-
- [Español changelog](./CHANGELOG.es.md)
|
|
29
14
|
|
|
30
15
|
`dsh-perm-gate` 版本 **2.4.1**。裁决链、规则文件格式与自动审查档位请见
|
|
31
16
|
[中文 README](./README.zh.md)。
|
package/README.ja.md
CHANGED
|
@@ -4,28 +4,13 @@
|
|
|
4
4
|
- [中文 README](./README.zh.md)
|
|
5
5
|
- [日本語 README](./README.ja.md)
|
|
6
6
|
- [한국어 README](./README.ko.md)
|
|
7
|
-
- [Français README](./README.fr.md)
|
|
8
|
-
- [Deutsch README](./README.de.md)
|
|
9
|
-
- [Italiano README](./README.it.md)
|
|
10
|
-
- [Русский README](./README.ru.md)
|
|
11
|
-
- [Español README](./README.es.md)
|
|
12
7
|
- [Installation guide](./INSTALL.md)
|
|
13
8
|
- [中文安装指南](./INSTALL.zh.md)
|
|
14
9
|
- [日本語インストールガイド](./INSTALL.ja.md)
|
|
15
10
|
- [한국어 설치 안내](./INSTALL.ko.md)
|
|
16
|
-
- [Guide d'installation](./INSTALL.fr.md)
|
|
17
|
-
- [Installationsanleitung](./INSTALL.de.md)
|
|
18
|
-
- [Guida all'installazione](./INSTALL.it.md)
|
|
19
|
-
- [Руководство по установке](./INSTALL.ru.md)
|
|
20
|
-
- [Guía de instalación](./INSTALL.es.md)
|
|
21
11
|
- [Changelog](./CHANGELOG.md)
|
|
22
12
|
- [日本語 changelog](./CHANGELOG.ja.md)
|
|
23
13
|
- [한국어 changelog](./CHANGELOG.ko.md)
|
|
24
|
-
- [Français changelog](./CHANGELOG.fr.md)
|
|
25
|
-
- [Deutsch changelog](./CHANGELOG.de.md)
|
|
26
|
-
- [Italiano changelog](./CHANGELOG.it.md)
|
|
27
|
-
- [Русский changelog](./CHANGELOG.ru.md)
|
|
28
|
-
- [Español changelog](./CHANGELOG.es.md)
|
|
29
14
|
|
|
30
15
|
> **互換性に関する注記:** v2.0.0 は `ja` / `ko` 辞書を同梱しますが、公式 DSH の
|
|
31
16
|
> `LocaleRuntime` が公開するのは `zh` / `en` のみです(`LOCALE_IDS = ["zh", "en"]`)。
|
|
@@ -77,6 +62,11 @@ DeepSeek Harness 向けの、単一・自己完結・決定論優先・fail-clos
|
|
|
77
62
|
fail-closed を徹底します:P0 の判定は、grant・ルール・分類器・人間のいずれにも
|
|
78
63
|
上書きされません。
|
|
79
64
|
|
|
65
|
+
<!-- host-compat:begin — generated by scripts/sync-hosts.mjs from scripts/hosts.mjs; DO NOT EDIT -->
|
|
66
|
+
- **対応する DSH ホスト:** `0.1.0-rc.2` `0.1.0-rc.3` `0.1.0-rc.6` `0.1.0-rc.7` `0.1.0-rc.8` `0.1.1-rc.1` `0.1.1-rc.2` `0.1.2-rc.1` `0.1.5-rc.1` `0.1.5-rc.2` `0.1.5-rc.3` `0.1.7-rc.1` `0.1.7-rc.2` `0.2.0-rc.1` `0.2.0-rc.2`(0.1.0 / 0.1.1 / 0.1.2 / 0.1.5 / 0.1.7 / 0.2.0 の 15 rc)
|
|
67
|
+
- **ランタイム検証済み:** `0.2.0-rc.2`(証跡は `.compat-results/`)
|
|
68
|
+
<!-- host-compat:end -->
|
|
69
|
+
|
|
80
70
|
## 背景
|
|
81
71
|
|
|
82
72
|
DSH の安全まわりのエコシステムでは、この役割が `dsh-permission-rules` /
|
|
@@ -119,9 +109,7 @@ dsh plugin --profile web add dsh-perm-gate
|
|
|
119
109
|
|
|
120
110
|
インストール・アップグレード・移行・トラブルシューティングの詳細は
|
|
121
111
|
[日本語インストールガイド](./INSTALL.ja.md)([English](./INSTALL.md) /
|
|
122
|
-
[中文](./INSTALL.zh.md) / [한국어](./INSTALL.ko.md)
|
|
123
|
-
[Deutsch](./INSTALL.de.md) / [Italiano](./INSTALL.it.md) / [Русский](./INSTALL.ru.md) /
|
|
124
|
-
[Español](./INSTALL.es.md))にあります。
|
|
112
|
+
[中文](./INSTALL.zh.md) / [한국어](./INSTALL.ko.md))にあります。
|
|
125
113
|
|
|
126
114
|
## 設定
|
|
127
115
|
|
package/README.ko.md
CHANGED
|
@@ -4,28 +4,13 @@
|
|
|
4
4
|
- [中文 README](./README.zh.md)
|
|
5
5
|
- [日本語 README](./README.ja.md)
|
|
6
6
|
- [한국어 README](./README.ko.md)
|
|
7
|
-
- [Français README](./README.fr.md)
|
|
8
|
-
- [Deutsch README](./README.de.md)
|
|
9
|
-
- [Italiano README](./README.it.md)
|
|
10
|
-
- [Русский README](./README.ru.md)
|
|
11
|
-
- [Español README](./README.es.md)
|
|
12
7
|
- [Installation guide](./INSTALL.md)
|
|
13
8
|
- [中文安装指南](./INSTALL.zh.md)
|
|
14
9
|
- [日本語インストールガイド](./INSTALL.ja.md)
|
|
15
10
|
- [한국어 설치 안내](./INSTALL.ko.md)
|
|
16
|
-
- [Guide d'installation](./INSTALL.fr.md)
|
|
17
|
-
- [Installationsanleitung](./INSTALL.de.md)
|
|
18
|
-
- [Guida all'installazione](./INSTALL.it.md)
|
|
19
|
-
- [Руководство по установке](./INSTALL.ru.md)
|
|
20
|
-
- [Guía de instalación](./INSTALL.es.md)
|
|
21
11
|
- [Changelog](./CHANGELOG.md)
|
|
22
12
|
- [日本語 changelog](./CHANGELOG.ja.md)
|
|
23
13
|
- [한국어 changelog](./CHANGELOG.ko.md)
|
|
24
|
-
- [Français changelog](./CHANGELOG.fr.md)
|
|
25
|
-
- [Deutsch changelog](./CHANGELOG.de.md)
|
|
26
|
-
- [Italiano changelog](./CHANGELOG.it.md)
|
|
27
|
-
- [Русский changelog](./CHANGELOG.ru.md)
|
|
28
|
-
- [Español changelog](./CHANGELOG.es.md)
|
|
29
14
|
|
|
30
15
|
> **호환성 안내:** v2.0.0은 `ja` / `ko` 사전을 포함하지만, 공식 DSH의 `LocaleRuntime`은
|
|
31
16
|
> `zh` / `en`만 노출합니다(`LOCALE_IDS = ["zh", "en"]`). 기본 DSH에서 `ja` / `ko`를
|
|
@@ -75,6 +60,11 @@ DeepSeek Harness용 단일·자족적·결정론 우선·fail-closed 권한 게
|
|
|
75
60
|
엄격하게 fail-closed입니다: P0 판정은 grant·규칙·분류기·사람 누구에게도
|
|
76
61
|
덮어써지지 않습니다.
|
|
77
62
|
|
|
63
|
+
<!-- host-compat:begin — generated by scripts/sync-hosts.mjs from scripts/hosts.mjs; DO NOT EDIT -->
|
|
64
|
+
- **지원하는 DSH 호스트:** `0.1.0-rc.2` `0.1.0-rc.3` `0.1.0-rc.6` `0.1.0-rc.7` `0.1.0-rc.8` `0.1.1-rc.1` `0.1.1-rc.2` `0.1.2-rc.1` `0.1.5-rc.1` `0.1.5-rc.2` `0.1.5-rc.3` `0.1.7-rc.1` `0.1.7-rc.2` `0.2.0-rc.1` `0.2.0-rc.2` (0.1.0 / 0.1.1 / 0.1.2 / 0.1.5 / 0.1.7 / 0.2.0 라인의 15개 rc)
|
|
65
|
+
- **런타임 검증됨:** `0.2.0-rc.2` (증적은 `.compat-results/`)
|
|
66
|
+
<!-- host-compat:end -->
|
|
67
|
+
|
|
78
68
|
## 배경
|
|
79
69
|
|
|
80
70
|
DSH 안전 생태계에서는 이 역할이 `dsh-permission-rules` / `dsh-auto-mode` /
|
|
@@ -116,9 +106,7 @@ dsh plugin --profile web add dsh-perm-gate
|
|
|
116
106
|
|
|
117
107
|
설치·업그레이드·이전·문제 해결의 전체 절차는
|
|
118
108
|
[한국어 설치 안내](./INSTALL.ko.md)([English](./INSTALL.md) /
|
|
119
|
-
[中文](./INSTALL.zh.md) / [日本語](./INSTALL.ja.md)
|
|
120
|
-
[Deutsch](./INSTALL.de.md) / [Italiano](./INSTALL.it.md) / [Русский](./INSTALL.ru.md) /
|
|
121
|
-
[Español](./INSTALL.es.md))에 있습니다.
|
|
109
|
+
[中文](./INSTALL.zh.md) / [日本語](./INSTALL.ja.md))에 있습니다.
|
|
122
110
|
|
|
123
111
|
## 설정
|
|
124
112
|
|
package/README.md
CHANGED
|
@@ -4,28 +4,13 @@
|
|
|
4
4
|
- [中文 README](./README.zh.md)
|
|
5
5
|
- [日本語 README](./README.ja.md)
|
|
6
6
|
- [한국어 README](./README.ko.md)
|
|
7
|
-
- [Français README](./README.fr.md)
|
|
8
|
-
- [Deutsch README](./README.de.md)
|
|
9
|
-
- [Italiano README](./README.it.md)
|
|
10
|
-
- [Русский README](./README.ru.md)
|
|
11
|
-
- [Español README](./README.es.md)
|
|
12
7
|
- [Installation guide](./INSTALL.md)
|
|
13
8
|
- [中文安装指南](./INSTALL.zh.md)
|
|
14
9
|
- [日本語インストールガイド](./INSTALL.ja.md)
|
|
15
10
|
- [한국어 설치 안내](./INSTALL.ko.md)
|
|
16
|
-
- [Guide d'installation](./INSTALL.fr.md)
|
|
17
|
-
- [Installationsanleitung](./INSTALL.de.md)
|
|
18
|
-
- [Guida all'installazione](./INSTALL.it.md)
|
|
19
|
-
- [Руководство по установке](./INSTALL.ru.md)
|
|
20
|
-
- [Guía de instalación](./INSTALL.es.md)
|
|
21
11
|
- [Changelog](./CHANGELOG.md)
|
|
22
12
|
- [日本語 changelog](./CHANGELOG.ja.md)
|
|
23
13
|
- [한국어 changelog](./CHANGELOG.ko.md)
|
|
24
|
-
- [Français changelog](./CHANGELOG.fr.md)
|
|
25
|
-
- [Deutsch changelog](./CHANGELOG.de.md)
|
|
26
|
-
- [Italiano changelog](./CHANGELOG.it.md)
|
|
27
|
-
- [Русский changelog](./CHANGELOG.ru.md)
|
|
28
|
-
- [Español changelog](./CHANGELOG.es.md)
|
|
29
14
|
|
|
30
15
|
> **Compatibility note:** v2.0.0 ships `ja` / `ko` dictionaries, but official DSH exposes
|
|
31
16
|
> only `zh` / `en` through `LocaleRuntime` (`LOCALE_IDS = ["zh", "en"]`). On stock DSH,
|
|
@@ -42,7 +27,6 @@
|
|
|
42
27
|
> | --- | --- | --- | --- |
|
|
43
28
|
> | 0.1.0-rc.7 ~ 0.1.1-rc.x | `legacy` | `1.x` | `@legacy` |
|
|
44
29
|
> | 0.1.2-alpha.1+ (incl. 0.1.5-rc.2) | `main` | `2.x` | `@latest` / `@dsh-0.1.2` (`@2.x` is a range) |
|
|
45
|
-
> | 0.2.0-rc.1 (0.2.0 line) | `compat/0.2.0` | `5.x` | `@dsh-0.2.0` |
|
|
46
30
|
>
|
|
47
31
|
> The series number tracks the **DSH line** (`1.x` = DSH ≤ 0.1.1, `2.x` = DSH 0.1.2+),
|
|
48
32
|
> and the majors fence each other: a `^1.x` install never resolves a `2.x` release and
|
|
@@ -74,6 +58,11 @@ A single, self-sufficient, deterministic-first, fail-closed permission gate for
|
|
|
74
58
|
|
|
75
59
|
Strictly fail-closed: a P0 decision is never overridden by a grant, a rule, the classifier, or a human.
|
|
76
60
|
|
|
61
|
+
<!-- host-compat:begin — generated by scripts/sync-hosts.mjs from scripts/hosts.mjs; DO NOT EDIT -->
|
|
62
|
+
- **Supported DSH hosts:** `0.1.0-rc.2` `0.1.0-rc.3` `0.1.0-rc.6` `0.1.0-rc.7` `0.1.0-rc.8` `0.1.1-rc.1` `0.1.1-rc.2` `0.1.2-rc.1` `0.1.5-rc.1` `0.1.5-rc.2` `0.1.5-rc.3` `0.1.7-rc.1` `0.1.7-rc.2` `0.2.0-rc.1` `0.2.0-rc.2` (15 rc releases across lines 0.1.0 / 0.1.1 / 0.1.2 / 0.1.5 / 0.1.7 / 0.2.0)
|
|
63
|
+
- **Runtime-verified:** `0.2.0-rc.2` — evidence in `.compat-results/`
|
|
64
|
+
<!-- host-compat:end -->
|
|
65
|
+
|
|
77
66
|
## Why
|
|
78
67
|
|
|
79
68
|
The DSH safety ecosystem splits this across several plugins (`dsh-permission-rules`,
|
|
@@ -130,12 +119,44 @@ dsh plugin --profile web add dsh-perm-gate
|
|
|
130
119
|
|
|
131
120
|
Full install, upgrade, migration and troubleshooting steps live in the
|
|
132
121
|
[Installation guide](./INSTALL.md) — also available in
|
|
133
|
-
[中文](./INSTALL.zh.md) / [日本語](./INSTALL.ja.md) / [한국어](./INSTALL.ko.md)
|
|
134
|
-
[Français](./INSTALL.fr.md) / [Deutsch](./INSTALL.de.md) / [Italiano](./INSTALL.it.md) /
|
|
135
|
-
[Русский](./INSTALL.ru.md) / [Español](./INSTALL.es.md).
|
|
122
|
+
[中文](./INSTALL.zh.md) / [日本語](./INSTALL.ja.md) / [한국어](./INSTALL.ko.md).
|
|
136
123
|
|
|
137
124
|
## Configuration
|
|
138
125
|
|
|
126
|
+
### AppContainer sandbox (Windows; beta)
|
|
127
|
+
|
|
128
|
+
`dsh-perm-gate` can run gate-allowed shell commands inside a **Windows AppContainer** instead of
|
|
129
|
+
handing them back unconfined. The container token is created with **zero network capabilities**, so
|
|
130
|
+
non-loopback egress is blocked by Windows Firewall (WFP) itself — not by an advisory environment
|
|
131
|
+
variable. The container SID is OS-derived from the fixed name `dsh-perm-gate.ac`, so the one-time
|
|
132
|
+
`CheckNetIsolation LoopbackExempt` (which lets the container reach `127.0.0.1`) is a per-machine
|
|
133
|
+
step, not a per-session one. Egress is therefore possible **only** through the network proxy:
|
|
134
|
+
|
|
135
|
+
- `sandboxEnabled` (default `false`) — master switch. When on, every **auto-allowed** shell call is
|
|
136
|
+
rewritten into the launcher invocation; a human-approved call is out of scope (the user approved
|
|
137
|
+
it consciously). If the launcher cannot be built or the OS rejects the container launch, the call
|
|
138
|
+
is **denied** (fail-closed) with reason `sandbox: …` — never run unconfined.
|
|
139
|
+
- `sandboxMode` — `workspace-write` (default; workspace gets Modify + private temp FullControl,
|
|
140
|
+
system dirs stay readable through the stock ALL APPLICATION PACKAGES ACEs) or `read-only`.
|
|
141
|
+
- `sandboxProxy` — **the proxy parameter**: empty (default) follows the builtin filtered proxy's
|
|
142
|
+
actual `127.0.0.1:<port>` when `networkEnabled`; an explicit URL must be loopback-bound (the
|
|
143
|
+
container cannot reach anything else) and destination filtering is that proxy's job.
|
|
144
|
+
- `sandboxLoopback` — `exempt` (default; attempt the one-time exemption, warn with the exact
|
|
145
|
+
elevated command if denied) or `off`.
|
|
146
|
+
|
|
147
|
+
The launcher is a small C# program shipped as source (`assets/appcontainer-launcher.cs`) and
|
|
148
|
+
compiled on first use by the .NET Framework compiler every Windows carries (`csc.exe`); the plugin
|
|
149
|
+
itself keeps zero native dependencies. Verify a machine end-to-end with:
|
|
150
|
+
|
|
151
|
+
```
|
|
152
|
+
node scripts/smoke-appcontainer.mjs
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
Known boundary: on Windows 11 25H2+ builds where the classic AppContainer creation APIs have been
|
|
156
|
+
removed (verified on 26200) and the mxc replacement is not yet exposed (26600+), the launcher fails
|
|
157
|
+
closed at the kernel step; the sandbox then denies sandboxed calls with a clear reason instead of
|
|
158
|
+
running them unconfined. On Windows 10 / 11 ≤ 24H2 the documented classic path applies.
|
|
159
|
+
|
|
139
160
|
Add the plugin to `cordis.yml`:
|
|
140
161
|
|
|
141
162
|
```yaml
|
package/README.zh.md
CHANGED
|
@@ -4,28 +4,13 @@
|
|
|
4
4
|
- [中文 README](./README.zh.md)
|
|
5
5
|
- [日本語 README](./README.ja.md)
|
|
6
6
|
- [한국어 README](./README.ko.md)
|
|
7
|
-
- [Français README](./README.fr.md)
|
|
8
|
-
- [Deutsch README](./README.de.md)
|
|
9
|
-
- [Italiano README](./README.it.md)
|
|
10
|
-
- [Русский README](./README.ru.md)
|
|
11
|
-
- [Español README](./README.es.md)
|
|
12
7
|
- [Installation guide](./INSTALL.md)
|
|
13
8
|
- [中文安装指南](./INSTALL.zh.md)
|
|
14
9
|
- [日本語インストールガイド](./INSTALL.ja.md)
|
|
15
10
|
- [한국어 설치 안내](./INSTALL.ko.md)
|
|
16
|
-
- [Guide d'installation](./INSTALL.fr.md)
|
|
17
|
-
- [Installationsanleitung](./INSTALL.de.md)
|
|
18
|
-
- [Guida all'installazione](./INSTALL.it.md)
|
|
19
|
-
- [Руководство по установке](./INSTALL.ru.md)
|
|
20
|
-
- [Guía de instalación](./INSTALL.es.md)
|
|
21
11
|
- [Changelog](./CHANGELOG.md)
|
|
22
12
|
- [日本語 changelog](./CHANGELOG.ja.md)
|
|
23
13
|
- [한국어 changelog](./CHANGELOG.ko.md)
|
|
24
|
-
- [Français changelog](./CHANGELOG.fr.md)
|
|
25
|
-
- [Deutsch changelog](./CHANGELOG.de.md)
|
|
26
|
-
- [Italiano changelog](./CHANGELOG.it.md)
|
|
27
|
-
- [Русский changelog](./CHANGELOG.ru.md)
|
|
28
|
-
- [Español changelog](./CHANGELOG.es.md)
|
|
29
14
|
|
|
30
15
|
> **兼容性说明:** v2.0.0 自带 `ja` / `ko` 字典,但官方 DSH 的 `LocaleRuntime`
|
|
31
16
|
> 只暴露 `zh` / `en`(`LOCALE_IDS = ["zh", "en"]`)。在原版 DSH 上选择 `ja` / `ko`
|
|
@@ -70,6 +55,11 @@
|
|
|
70
55
|
|
|
71
56
|
严格 fail-closed:P0 永不因 grant / 规则 / 分类器 / 人工而放行。
|
|
72
57
|
|
|
58
|
+
<!-- host-compat:begin — generated by scripts/sync-hosts.mjs from scripts/hosts.mjs; DO NOT EDIT -->
|
|
59
|
+
- **支持的 DSH 宿主:** `0.1.0-rc.2` `0.1.0-rc.3` `0.1.0-rc.6` `0.1.0-rc.7` `0.1.0-rc.8` `0.1.1-rc.1` `0.1.1-rc.2` `0.1.2-rc.1` `0.1.5-rc.1` `0.1.5-rc.2` `0.1.5-rc.3` `0.1.7-rc.1` `0.1.7-rc.2` `0.2.0-rc.1` `0.2.0-rc.2`(覆盖 0.1.0 / 0.1.1 / 0.1.2 / 0.1.5 / 0.1.7 / 0.2.0 六条线共 15 个 rc)
|
|
60
|
+
- **运行时已验证:** `0.2.0-rc.2`(证据见 `.compat-results/`)
|
|
61
|
+
<!-- host-compat:end -->
|
|
62
|
+
|
|
73
63
|
## 特性
|
|
74
64
|
|
|
75
65
|
- **命令白/黑名单** — 基于 **argv 分解**匹配(非裸字符串),递归下钻 `sh -c`/`bash -c`、识别管道、重定向目标、递归/强制(`rm -rf`)。
|
|
@@ -89,12 +79,38 @@ dsh plugin --profile web add dsh-perm-gate
|
|
|
89
79
|
```
|
|
90
80
|
|
|
91
81
|
完整的安装、升级、迁移与排查步骤见[中文安装指南](./INSTALL.zh.md)(另有
|
|
92
|
-
[English](./INSTALL.md) / [日本語](./INSTALL.ja.md) / [한국어](./INSTALL.ko.md)
|
|
93
|
-
[Français](./INSTALL.fr.md) / [Deutsch](./INSTALL.de.md) / [Italiano](./INSTALL.it.md) /
|
|
94
|
-
[Русский](./INSTALL.ru.md) / [Español](./INSTALL.es.md))。
|
|
82
|
+
[English](./INSTALL.md) / [日本語](./INSTALL.ja.md) / [한국어](./INSTALL.ko.md))。
|
|
95
83
|
|
|
96
84
|
## 配置
|
|
97
85
|
|
|
86
|
+
### AppContainer 沙盒(Windows;beta)
|
|
87
|
+
|
|
88
|
+
`dsh-perm-gate` 可以把门控放行的 shell 命令放进 **Windows AppContainer** 里执行,而不是裸交还
|
|
89
|
+
宿主。容器 token **不带任何网络能力**,非回环出网被 Windows 防火墙(WFP)直接封死——不是环境
|
|
90
|
+
变量那种可绕过的软约束。容器 SID 由 OS 从固定名 `dsh-perm-gate.ac` 派生,因此
|
|
91
|
+
`CheckNetIsolation LoopbackExempt`(放行容器访问 `127.0.0.1`)是**每台机器一次**的步骤,不是每次
|
|
92
|
+
会话都要做出网因此**只能**走网络代理:
|
|
93
|
+
|
|
94
|
+
- `sandboxEnabled`(默认 `false`)——总开关。开启后每条**自动放行**的 shell 调用会被重写成启动器
|
|
95
|
+
调用;人工批准的调用不在沙盒范围(用户已明确知情)。启动器无法编译、或 OS 拒绝容器启动时,
|
|
96
|
+
该调用被**拒绝**(fail-closed),理由带 `sandbox: …` 前缀——绝不退回裸执行。
|
|
97
|
+
- `sandboxMode`——`workspace-write`(默认:工作区 Modify + 私有 temp FullControl,系统目录靠
|
|
98
|
+
ALL APPLICATION PACKAGES 默认 ACE 保持可读)或 `read-only`。
|
|
99
|
+
- `sandboxProxy`——**代理参数**:空(默认)跟随内置过滤代理实际绑定的 `127.0.0.1:<port>`(需
|
|
100
|
+
`networkEnabled`);显式 URL 必须绑定回环(容器只可达回环),出网对象的过滤由该代理完成。
|
|
101
|
+
- `sandboxLoopback`——`exempt`(默认:尝试一次性豁免,被拒时给出精确提权命令)或 `off`。
|
|
102
|
+
|
|
103
|
+
启动器是一小段 C# 源码(`assets/appcontainer-launcher.cs`),首次使用时由 Windows 全系自带的
|
|
104
|
+
.NET Framework 编译器(`csc.exe`)按需编译;插件本体保持零原生依赖。真机端到端验证:
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
node scripts/smoke-appcontainer.mjs
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
已知边界:在经典 AppContainer 创建 API 已被移除的 Windows 11 25H2+ 新构建上(26200 实测),
|
|
111
|
+
mxc 替代尚未暴露(26600+),启动器在内核步 fail-closed;此时沙盒调用一律明确拒绝,不裸跑。
|
|
112
|
+
Windows 10 / 11 ≤ 24H2 走文档化的经典路径。
|
|
113
|
+
|
|
98
114
|
`cordis.yml`:
|
|
99
115
|
|
|
100
116
|
```yaml
|