Skip to content

Commit 0d5e7e2

Browse files
authored
feat(fs): scope-*-recursive permission allows read dir, closes #1307 (#1696)
We could instead document that you should also enable `scope-*-index`, it is more a matter of semantics.
1 parent 01c913e commit 0d5e7e2

27 files changed

+135
-26
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"fs": patch:enhance
3+
---
4+
5+
The `scope-*-recursive` permissions now also allow reading the contents of the directory.

plugins/fs/build.rs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,13 +111,17 @@ fn main() {
111111
identifier = "scope-{lower}-recursive"
112112
description = "This scope permits recursive access to the complete `${upper}` folder, including sub directories and files."
113113
114+
[[permission.scope.allow]]
115+
path = "${upper}"
114116
[[permission.scope.allow]]
115117
path = "${upper}/**"
116118
117119
[[permission]]
118120
identifier = "scope-{lower}"
119121
description = "This scope permits access to all files and list content of top level directories in the `${upper}`folder."
120122
123+
[[permission.scope.allow]]
124+
path = "${upper}"
121125
[[permission.scope.allow]]
122126
path = "${upper}/*"
123127
@@ -126,7 +130,7 @@ identifier = "scope-{lower}-index"
126130
description = "This scope permits to list all files and folders in the `${upper}`folder."
127131
128132
[[permission.scope.allow]]
129-
path = "${upper}/"
133+
path = "${upper}"
130134
131135
# Sets Section
132136
# This section combines the scope elements with enablement of commands

plugins/fs/permissions/autogenerated/base-directories/app.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,17 @@
99
identifier = "scope-app-recursive"
1010
description = "This scope permits recursive access to the complete `$APP` folder, including sub directories and files."
1111

12+
[[permission.scope.allow]]
13+
path = "$APP"
1214
[[permission.scope.allow]]
1315
path = "$APP/**"
1416

1517
[[permission]]
1618
identifier = "scope-app"
1719
description = "This scope permits access to all files and list content of top level directories in the `$APP`folder."
1820

21+
[[permission.scope.allow]]
22+
path = "$APP"
1923
[[permission.scope.allow]]
2024
path = "$APP/*"
2125

@@ -24,7 +28,7 @@ identifier = "scope-app-index"
2428
description = "This scope permits to list all files and folders in the `$APP`folder."
2529

2630
[[permission.scope.allow]]
27-
path = "$APP/"
31+
path = "$APP"
2832

2933
# Sets Section
3034
# This section combines the scope elements with enablement of commands

plugins/fs/permissions/autogenerated/base-directories/appcache.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,17 @@
99
identifier = "scope-appcache-recursive"
1010
description = "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files."
1111

12+
[[permission.scope.allow]]
13+
path = "$APPCACHE"
1214
[[permission.scope.allow]]
1315
path = "$APPCACHE/**"
1416

1517
[[permission]]
1618
identifier = "scope-appcache"
1719
description = "This scope permits access to all files and list content of top level directories in the `$APPCACHE`folder."
1820

21+
[[permission.scope.allow]]
22+
path = "$APPCACHE"
1923
[[permission.scope.allow]]
2024
path = "$APPCACHE/*"
2125

@@ -24,7 +28,7 @@ identifier = "scope-appcache-index"
2428
description = "This scope permits to list all files and folders in the `$APPCACHE`folder."
2529

2630
[[permission.scope.allow]]
27-
path = "$APPCACHE/"
31+
path = "$APPCACHE"
2832

2933
# Sets Section
3034
# This section combines the scope elements with enablement of commands

plugins/fs/permissions/autogenerated/base-directories/appconfig.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,17 @@
99
identifier = "scope-appconfig-recursive"
1010
description = "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files."
1111

12+
[[permission.scope.allow]]
13+
path = "$APPCONFIG"
1214
[[permission.scope.allow]]
1315
path = "$APPCONFIG/**"
1416

1517
[[permission]]
1618
identifier = "scope-appconfig"
1719
description = "This scope permits access to all files and list content of top level directories in the `$APPCONFIG`folder."
1820

21+
[[permission.scope.allow]]
22+
path = "$APPCONFIG"
1923
[[permission.scope.allow]]
2024
path = "$APPCONFIG/*"
2125

@@ -24,7 +28,7 @@ identifier = "scope-appconfig-index"
2428
description = "This scope permits to list all files and folders in the `$APPCONFIG`folder."
2529

2630
[[permission.scope.allow]]
27-
path = "$APPCONFIG/"
31+
path = "$APPCONFIG"
2832

2933
# Sets Section
3034
# This section combines the scope elements with enablement of commands

plugins/fs/permissions/autogenerated/base-directories/appdata.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,17 @@
99
identifier = "scope-appdata-recursive"
1010
description = "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files."
1111

12+
[[permission.scope.allow]]
13+
path = "$APPDATA"
1214
[[permission.scope.allow]]
1315
path = "$APPDATA/**"
1416

1517
[[permission]]
1618
identifier = "scope-appdata"
1719
description = "This scope permits access to all files and list content of top level directories in the `$APPDATA`folder."
1820

21+
[[permission.scope.allow]]
22+
path = "$APPDATA"
1923
[[permission.scope.allow]]
2024
path = "$APPDATA/*"
2125

@@ -24,7 +28,7 @@ identifier = "scope-appdata-index"
2428
description = "This scope permits to list all files and folders in the `$APPDATA`folder."
2529

2630
[[permission.scope.allow]]
27-
path = "$APPDATA/"
31+
path = "$APPDATA"
2832

2933
# Sets Section
3034
# This section combines the scope elements with enablement of commands

plugins/fs/permissions/autogenerated/base-directories/applocaldata.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,17 @@
99
identifier = "scope-applocaldata-recursive"
1010
description = "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files."
1111

12+
[[permission.scope.allow]]
13+
path = "$APPLOCALDATA"
1214
[[permission.scope.allow]]
1315
path = "$APPLOCALDATA/**"
1416

1517
[[permission]]
1618
identifier = "scope-applocaldata"
1719
description = "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA`folder."
1820

21+
[[permission.scope.allow]]
22+
path = "$APPLOCALDATA"
1923
[[permission.scope.allow]]
2024
path = "$APPLOCALDATA/*"
2125

@@ -24,7 +28,7 @@ identifier = "scope-applocaldata-index"
2428
description = "This scope permits to list all files and folders in the `$APPLOCALDATA`folder."
2529

2630
[[permission.scope.allow]]
27-
path = "$APPLOCALDATA/"
31+
path = "$APPLOCALDATA"
2832

2933
# Sets Section
3034
# This section combines the scope elements with enablement of commands

plugins/fs/permissions/autogenerated/base-directories/applog.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,17 @@
99
identifier = "scope-applog-recursive"
1010
description = "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files."
1111

12+
[[permission.scope.allow]]
13+
path = "$APPLOG"
1214
[[permission.scope.allow]]
1315
path = "$APPLOG/**"
1416

1517
[[permission]]
1618
identifier = "scope-applog"
1719
description = "This scope permits access to all files and list content of top level directories in the `$APPLOG`folder."
1820

21+
[[permission.scope.allow]]
22+
path = "$APPLOG"
1923
[[permission.scope.allow]]
2024
path = "$APPLOG/*"
2125

@@ -24,7 +28,7 @@ identifier = "scope-applog-index"
2428
description = "This scope permits to list all files and folders in the `$APPLOG`folder."
2529

2630
[[permission.scope.allow]]
27-
path = "$APPLOG/"
31+
path = "$APPLOG"
2832

2933
# Sets Section
3034
# This section combines the scope elements with enablement of commands

plugins/fs/permissions/autogenerated/base-directories/audio.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,17 @@
99
identifier = "scope-audio-recursive"
1010
description = "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files."
1111

12+
[[permission.scope.allow]]
13+
path = "$AUDIO"
1214
[[permission.scope.allow]]
1315
path = "$AUDIO/**"
1416

1517
[[permission]]
1618
identifier = "scope-audio"
1719
description = "This scope permits access to all files and list content of top level directories in the `$AUDIO`folder."
1820

21+
[[permission.scope.allow]]
22+
path = "$AUDIO"
1923
[[permission.scope.allow]]
2024
path = "$AUDIO/*"
2125

@@ -24,7 +28,7 @@ identifier = "scope-audio-index"
2428
description = "This scope permits to list all files and folders in the `$AUDIO`folder."
2529

2630
[[permission.scope.allow]]
27-
path = "$AUDIO/"
31+
path = "$AUDIO"
2832

2933
# Sets Section
3034
# This section combines the scope elements with enablement of commands

plugins/fs/permissions/autogenerated/base-directories/cache.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,17 @@
99
identifier = "scope-cache-recursive"
1010
description = "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files."
1111

12+
[[permission.scope.allow]]
13+
path = "$CACHE"
1214
[[permission.scope.allow]]
1315
path = "$CACHE/**"
1416

1517
[[permission]]
1618
identifier = "scope-cache"
1719
description = "This scope permits access to all files and list content of top level directories in the `$CACHE`folder."
1820

21+
[[permission.scope.allow]]
22+
path = "$CACHE"
1923
[[permission.scope.allow]]
2024
path = "$CACHE/*"
2125

@@ -24,7 +28,7 @@ identifier = "scope-cache-index"
2428
description = "This scope permits to list all files and folders in the `$CACHE`folder."
2529

2630
[[permission.scope.allow]]
27-
path = "$CACHE/"
31+
path = "$CACHE"
2832

2933
# Sets Section
3034
# This section combines the scope elements with enablement of commands

0 commit comments

Comments
 (0)