wip: add install extensions to policy.

This commit is contained in:
Miroslav Šedivý
2023-04-14 23:21:32 +02:00
parent 4cf0e0c0c8
commit d992ab993c
4 changed files with 33 additions and 2 deletions
+8 -1
View File
@@ -46,7 +46,14 @@ func Generate(policies types.BrowserPolicyContent) (string, error) {
policiesTmpl["ExtensionInstallForcelist"] = ExtensionInstallForcelist
policiesTmpl["ExtensionInstallAllowlist"] = ExtensionInstallAllowlist
policiesTmpl["ExtensionInstallBlocklist"] = []interface{}{"*"}
if policies.InstallExtensions {
// Allow installation of extensions
policiesTmpl["ExtensionInstallBlocklist"] = []interface{}{}
} else {
// Disallow installation of extensions
policiesTmpl["ExtensionInstallBlocklist"] = []interface{}{"*"}
}
//
// Developer Tools
+8
View File
@@ -35,6 +35,14 @@ func Parse(policiesJson string) (*types.BrowserPolicyContent, error) {
}
}
//
// Install Extensions
//
if val, ok := policiesTmpl["ExtensionInstallBlocklist"]; ok {
policies.InstallExtensions = len(val.([]interface{})) == 0
}
//
// Developer Tools
//
+10 -1
View File
@@ -20,13 +20,22 @@ func Generate(policies types.BrowserPolicyContent) (string, error) {
return "", err
}
//
// Install Extensions
//
installationMode := "blocked"
if policies.InstallExtensions {
installationMode = "allowed"
}
//
// Extensions
//
ExtensionSettings := map[string]interface{}{}
ExtensionSettings["*"] = map[string]interface{}{
"installation_mode": "blocked",
"installation_mode": installationMode,
}
for _, e := range policies.Extensions {
+7
View File
@@ -32,6 +32,13 @@ func Parse(policiesJson string) (*types.BrowserPolicyContent, error) {
policies.Extensions = []types.BrowserPolicyExtension{}
for id, val := range extensions.(map[string]interface{}) {
if id == "*" {
//
// Install Extensions
//
if val, ok := val.(map[string]interface{})["installation_mode"]; ok {
policies.InstallExtensions = val.(string) == "allowed"
}
continue
}