mirror of
https://github.com/apache/superset.git
synced 2026-04-28 04:25:07 +00:00
Implements a comprehensive security system for Superset extensions: Backend: - Add EXTENSIONS_TRUST_CONFIG to superset_config.py for admin control - Create ExtensionSecurityManager for trust validation and signature verification - Support Ed25519 signatures for extension manifests - Integrate trust validation into extension loading pipeline CLI: - Add `generate-keys` command for creating Ed25519 signing keypairs - Add `sign` command and `--sign` option to `bundle` for manifest signing Frontend: - Add WASM support to webpack config for QuickJS sandbox - Update Extension interface with trust-related fields - ExtensionsManager now uses backend-validated trust levels Documentation: - Add Administrator Configuration guide for trust settings - Add Extension Signing guide for developers - Update security.md and sandbox.md with cross-references - Add Security subcategory to sidebar Tests: - Add 21 unit tests for trust validation and signature verification Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
76 lines
2.0 KiB
JavaScript
76 lines
2.0 KiB
JavaScript
/**
|
|
* Licensed to the Apache Software Foundation (ASF) under one
|
|
* or more contributor license agreements. See the NOTICE file
|
|
* distributed with this work for additional information
|
|
* regarding copyright ownership. The ASF licenses this file
|
|
* to you under the Apache License, Version 2.0 (the
|
|
* "License"); you may not use this file except in compliance
|
|
* with the License. You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing,
|
|
* software distributed under the License is distributed on an
|
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
* KIND, either express or implied. See the License for the
|
|
* specific language governing permissions and limitations
|
|
* under the License.
|
|
*/
|
|
|
|
module.exports = {
|
|
developerPortalSidebar: [
|
|
'index',
|
|
{
|
|
type: 'category',
|
|
label: 'Contributing',
|
|
collapsed: true,
|
|
items: [
|
|
'contributing/overview',
|
|
],
|
|
},
|
|
{
|
|
type: 'category',
|
|
label: 'Extensions',
|
|
collapsed: true,
|
|
items: [
|
|
'extensions/overview',
|
|
'extensions/quick-start',
|
|
'extensions/architecture',
|
|
'extensions/dependencies',
|
|
'extensions/contribution-types',
|
|
{
|
|
type: 'category',
|
|
label: 'Extension Points',
|
|
collapsed: true,
|
|
items: [
|
|
'extensions/extension-points/sqllab',
|
|
],
|
|
},
|
|
'extensions/development',
|
|
'extensions/deployment',
|
|
'extensions/mcp',
|
|
{
|
|
type: 'category',
|
|
label: 'Security',
|
|
collapsed: true,
|
|
items: [
|
|
'extensions/security',
|
|
'extensions/sandbox',
|
|
'extensions/signing',
|
|
'extensions/admin-configuration',
|
|
],
|
|
},
|
|
'extensions/registry',
|
|
],
|
|
},
|
|
{
|
|
type: 'category',
|
|
label: 'Testing',
|
|
collapsed: true,
|
|
items: [
|
|
'testing/overview',
|
|
],
|
|
},
|
|
],
|
|
};
|