En Chrome Extension (Manifest V3) för att hantera Azure Function Apps direkt från Azure Portal.
- ✅ Läser aktiv URL för att identifiera Function App (Subscription, Resource Group, App Name)
- ✅ Hämtar Bearer Token från Azure Portal session (via localStorage)
- ✅ Listar alla funktioner i den aktuella appen
- ✅ Visar status (Enabled/Disabled) för varje funktion
azure-bulk-toggle/
├── manifest.json # Extension manifest (Manifest V3)
├── popup.html # UI för popup
├── popup.js # Huvudlogik för popup
├── content.js # Content script (körs på portal.azure.com)
├── background.js # Service worker
├── styles.css # Styling för popup
└── README.md # Denna fil
- Öppna Chrome och gå till
chrome://extensions/ - Aktivera "Developer mode" (högst upp till höger)
- Klicka på "Load unpacked"
- Välj mappen
azure-bulk-toggle - Extensionen är nu installerad!
- Navigera till en Function App i Azure Portal
- Klicka på extension-ikonen i Chrome toolbar
- Extensionen visar automatiskt:
- Function App namn
- Resource Group
- Subscription ID
- Lista över alla funktioner med deras status
Extensionen extraherar Azure Management API token från localStorage på portal.azure.com. Tokens följer MSAL-formatet och söker efter:
- Nycklar som innehåller
accesstokenochhttps://management - Fältet
secretsom innehåller själva Bearer token - Verifierar att token inte har gått ut
Extensionen parsar Azure Portal URL enligt mönstret:
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Web/sites/{appName}
Använder Azure Management API endpoint:
GET https://management.azure.com/subscriptions/{id}/resourceGroups/{rg}/providers/Microsoft.Web/sites/{app}/functions?api-version=2022-03-01
properties.config.disabled === true→ Funktionen är disabledproperties.config.disabled === falseellerundefined→ Funktionen är enabled
- Bara läsning av funktioner (ingen toggle-funktionalitet än)
- Fungerar bara när du är på en Function App-sida i Azure Portal
- Kräver giltig Azure Portal session
- Toggle individual functions (enable/disable)
- Bulk toggle (enable/disable alla funktioner)
- Batch operations med progress bar
- Cache för funktionslista
- Support för Function App Slots
"Kunde inte hämta Azure token"
- Kontrollera att du är inloggad på Azure Portal
- Försök ladda om sidan
"Kunde inte identifiera Function App från URL"
- Se till att du är på en Function App-sida (inte översiktssida eller annan resurs)
"Azure API error (401)"
- Token har gått ut, ladda om Azure Portal
MIT
Byggd med vanilla JavaScript för enkelhetens skull.