Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
DevUI is ontworpen als voorbeeldtoepassing voor lokale ontwikkeling. Op deze pagina worden beveiligingsoverwegingen en aanbevolen procedures behandeld als u DevUI buiten localhost beschikbaar wilt maken.
Waarschuwing
DevUI is niet bedoeld voor productiegebruik. Voor productie-implementaties bouwt u uw eigen aangepaste interface met behulp van de Agent Framework SDK met de juiste beveiligingsmaatregelen.
Binnenkort beschikbaar
De DevUI-documentatie voor C# is binnenkort beschikbaar. Kom later terug of raadpleeg de Python-documentatie voor conceptuele richtlijnen.
UI-modi
DevUI biedt twee modi waarmee de toegang tot functies wordt beheerd:
Ontwikkelaarsmodus (standaard)
Volledige toegang tot alle functies:
- Foutopsporingsvenster met traceringsgegevens
- Dynamisch opnieuw laden voor snelle ontwikkeling (
/v1/entities/{id}/reload) - Implementatiehulpprogramma's (
/v1/deployments) - Uitgebreide foutberichten voor foutopsporing
devui ./agents # Developer mode is the default
Gebruikersmodus
Vereenvoudigde, beperkte interface:
- Chatinterface en gespreksbeheer
- Entiteitsvermelding en basisgegevens
- Ontwikkelaars-API's uitgeschakeld (hot reload, implementatie)
- Algemene foutberichten (details vastgelegd aan de serverzijde)
devui ./agents --mode user
Authenticatie
Bearer-tokenverificatie inschakelen met de --auth vlag:
devui ./agents --auth
Wanneer verificatie is ingeschakeld:
- Voor localhost: Een token wordt automatisch gegenereerd en weergegeven in de console
- Voor netwerkimplementaties : U moet een token opgeven via
DEVUI_AUTH_TOKENomgevingsvariabele of--auth-tokenvlag
# Auto-generated token (localhost only)
devui ./agents --auth
# Custom token via CLI
devui ./agents --auth --auth-token "your-secure-token"
# Custom token via environment variable
export DEVUI_AUTH_TOKEN="your-secure-token"
devui ./agents --auth --host 0.0.0.0
Alle API-aanvragen moeten een geldig Bearer-token bevatten in de Authorization header:
curl http://localhost:8080/v1/entities \
-H "Authorization: Bearer your-token-here"
Aanbevolen implementatieconfiguratie
Als u DevUI beschikbaar moet maken voor eindgebruikers (niet aanbevolen voor productie):
devui ./agents --mode user --auth --host 0.0.0.0
Deze configuratie:
- Beperk ontwikkelaarsgerichte API's
- Vereist authenticatie
- Bindt aan alle netwerkinterfaces
Beveiligingsfuncties
DevUI bevat verschillende beveiligingsmaatregelen:
| Eigenschap | Description |
|---|---|
| localhostbinding | Wordt standaard gebonden aan 127.0.0.1 |
| Gebruikersmodus | Hiermee beperkt u api's voor ontwikkelaars |
| Bearer-authenticatie | Optionele verificatie op basis van tokens |
| Laden van lokale entiteit | Alleen entiteiten uit lokale mappen of in het geheugen laden |
| Geen externe uitvoering | Geen mogelijkheden voor uitvoering van externe code |
Beste praktijken
Referentiesbeheer
- API-sleutels en -geheimen opslaan in
.envbestanden - Nooit bestanden doorvoeren
.envin broncodebeheer - Gebruik
.env.examplebestanden om vereiste variabelen te documenteren
# .env.example (safe to commit)
OPENAI_API_KEY=your-api-key-here
AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/
# .env (never commit)
OPENAI_API_KEY=sk-actual-key
AZURE_OPENAI_ENDPOINT=https://my-resource.openai.azure.com/
Netwerkbeveiliging
- DevUI gebonden houden aan localhost voor ontwikkeling
- Gebruik een omgekeerde proxy (nginx, Caddy) als externe toegang nodig is
- HTTPS inschakelen via de omgekeerde proxy
- De juiste verificatie implementeren op proxyniveau
Entiteitsbeveiliging
- Alle agent-/werkstroomcode controleren voordat u deze uitvoert
- Alleen entiteiten uit vertrouwde bronnen laden
- Wees voorzichtig met hulpprogramma's met bijwerkingen (bestandstoegang, netwerkaanroepen)
Opschonen van middelen
Registreer schoonmaakhooks om referenties en bronnen goed af te sluiten bij het afsluiten.
from azure.identity.aio import DefaultAzureCredential
from agent_framework import Agent
from agent_framework.azure import AzureOpenAIChatClient
from agent_framework_devui import register_cleanup, serve
credential = DefaultAzureCredential()
client = AzureOpenAIChatClient()
agent = Agent(name="MyAgent", chat_client=client)
# Register cleanup hook - credential will be closed on shutdown
register_cleanup(agent, credential.close)
serve(entities=[agent])
Overwegingen voor MCP-hulpprogramma's
Wanneer u MCP-hulpprogramma's (Model Context Protocol) gebruikt met DevUI:
# Correct - DevUI handles cleanup automatically
mcp_tool = MCPStreamableHTTPTool(url="http://localhost:8011/mcp", chat_client=chat_client)
agent = Agent(tools=mcp_tool)
serve(entities=[agent])
Belangrijk
Gebruik geen async with contextbeheerders bij het maken van agents met MCP-hulpprogramma's voor DevUI. Verbindingen worden gesloten voordat ze worden uitgevoerd. MCP-hulpprogramma's maken gebruik van luie initialisatie en maken automatisch verbinding bij eerste gebruik.
Volgende stappen
- Voorbeelden - Door voorbeeldagents en werkstromen bladeren
- API-naslaginformatie - Meer informatie over de API-eindpunten