Autentisering för agenter
Lär dig hur du skyddar åtkomsten till dina konversationsagenter
Översikt
När du bygger konversationsagenter kan du behöva begränsa åtkomsten till vissa agenter eller konversationer. ElevenLabs erbjuder flera autentiseringsmekanismer för att säkerställa att endast behöriga användare kan interagera med dina agenter.
Autentiseringsmetoder
ElevenLabs erbjuder två huvudsakliga metoder för att säkra dina konversationsagenter:
Använd signerade URL:er
Signerade URL:er är den rekommenderade metoden för applikationer på klientsidan. Med den här metoden kan du autentisera användare utan att exponera din API-nyckel.
Guiderna nedan använder JS-klienten och Python SDK.
Så fungerar signerade URL:er
- Din server begär en signerad URL från ElevenLabs med din API-nyckel.
- ElevenLabs genererar en tillfällig token och returnerar en signerad WebSocket-URL.
- Din klientapplikation använder denna signerade URL för att upprätta en WebSocket-anslutning.
- Den signerade URL:en upphör att gälla efter 15 minuter.
Generera en signerad URL via API:et
För att få en signerad URL gör du en begäran till get_signed_url-slutpunkten med ditt agent-ID:
Curl-svaret har följande format:
Anslut till din agent med en signerad URL
Hämta den servergenererade signerade URL:en från klienten och använd den för att ansluta till WebSocket.
Signerad URL upphör att gälla
Signerade URL:er är giltiga i 15 minuter. Konversationssessionen kan pågå längre, men konversationen måste startas inom 15-minutersfönstret.
Använd tillåtelselistor
Tillåtelselistor gör det möjligt att begränsa åtkomsten till dina konversationsagenter baserat på ursprungsdomänen. Detta säkerställer att endast begäranden från godkända domäner kan ansluta till din agent.
Så fungerar tillåtelselistor
- Du konfigurerar en lista med godkända värdnamn för din agent.
- När en klient försöker ansluta kontrollerar ElevenLabs om begärans ursprung matchar ett tillåtet värdnamn.
- Om ursprunget finns i tillåtelselistan tillåts anslutningen, annars avvisas den.
Konfigurera tillåtelselistor
Tillåtelselistor konfigureras som en del av agentens autentiseringsinställningar. Du kan ange upp till 10 unika värdnamn som får ansluta till din agent.
Exempel: konfigurera en tillåtelselista
Konfigurera via kontrollpanelen
Konfigurera via CLI
Konfigurera via API:et
Öppna din agent i kontrollpanelen och gå till fliken Säkerhet. Lägg till varje godkänt värdnamn (t.ex. example.com, app.example.com, localhost:3000) i tillåtelselistan.
Välj en autentiseringsmetod
Konfigurera en autentiseringsmetod per agent:
- Använd signerade URL:er (
enable_auth) för autentiserade klientsessioner. - Använd tillåtelselistor (
allowlist) för åtkomstkontroll baserad på värdnamn.
Konfigurera inte signerade URL:er och tillåtelselistor tillsammans för samma agent. Välj den metod som passar din driftsättningsmodell.
Exempel: endast signerade URL:er
Använd enable_auth utan en allowlist:
Exempel: endast tillåtelselista
Använd allowlist utan att aktivera signerade URL:er:
Vanliga frågor
Kan jag använda samma signerade URL för flera användare?
Det är möjligt, men vi rekommenderar att du genererar en ny signerad URL för varje användarsession.
Vad händer om den signerade URL:en upphör att gälla under en konversation?
Om den signerade URL:en upphör att gälla (efter 15 minuter) stängs inte WebSocket-anslutningar som skapats med den signerade URL:en, men försök att skapa en ny anslutning med den signerade URL:en misslyckas.
Kan jag begränsa åtkomsten till specifika användare?
Mekanismen för signerade URL:er verifierar endast att begäran kommer från en behörig källa. Om du vill begränsa åtkomsten till specifika användare ska du implementera användarautentisering i din applikation innan du begär den signerade URL:en.
Finns det en gräns för hur många signerade URL:er jag kan generera?
Det finns ingen specifik gräns för antalet signerade URL:er du kan generera.
Hur hanterar tillåtelselistor underdomäner?
Tillåtelselistor utför exakt matchning av värdnamn. Om du vill tillåta både en domän och dess underdomäner måste du lägga till var och en separat (t.ex. “example.com” och “app.example.com”).
Måste jag använda båda autentiseringsmetoderna?
Nej. Konfigurera antingen signerade URL:er eller en tillåtelselista för varje agent. För applikationer på klientsidan är signerade URL:er det rekommenderade standardvalet.
Vilka andra säkerhetsåtgärder bör jag implementera?
Utöver signerade URL:er och tillåtelselistor bör du överväga att implementera:
- Användarautentisering innan signerade URL:er begärs
- Hastighetsbegränsning för API-begäranden
- Användningsövervakning för misstänkta mönster
- Korrekt felhantering vid autentiseringsfel