Terug naar dashboard

Documentatie

Leer hoe u Asyntai kunt gebruiken

Access Tags

Beperk kennisitems tot geautoriseerde bezoekers — afgedwongen op onze servers, niet door de AI

Naar Access Tags
Enterprise

Overzicht

Niet alle content is voor iedereen: documenten alleen voor leden, regiospecifiek materiaal, bronnen voor betaalde niveaus. Met Access Tags bedient één chatbot veilig verschillende doelgroepen. Je zet een tag op een kennisitem en vanaf dat moment is het item onzichtbaar voor elke bezoeker — behalve voor wie op zijn pagina die tag toont, ondertekend door je eigen server. De beperking wordt afgedwongen in onze opvraagquery, nog voordat het AI-model erbij betrokken is. Een bezoeker zonder de tag kan de content niet met slimme vragen ontfutselen, want voor hem is die nooit opgehaald.

Hoe het werkt

  1. Jij tagt kennisitems - op de Access Tags-pagina of direct via de API; items zonder tags blijven voor iedereen werken
  2. Je server ondertekent de tags van elke bezoeker - wanneer een ingelogd lid je pagina laadt, bepaalt je back-end zijn rechten en ondertekent ze met een geheime sleutel die alleen jij bezit
  3. De widget stuurt het ondertekende bewijs mee - het reist met elk chatbericht mee; de browser vervoert het alleen en kan het niet wijzigen zonder de handtekening te breken
  4. Wij verifiëren en filteren - een geldige handtekening ontgrendelt items met bijpassende tags; een ontbrekend, vervalst of verlopen bewijs betekent dat de bezoeker alleen openbare content krijgt

Instellen

Schakel de functie in op de Access Tags-pagina in je dashboard — er wordt een ondertekeningssleutel voor je gegenereerd. Bewaar hem alleen op je server; iedereen die hem heeft kan geldige bewijzen aanmaken.

Tag je content op dezelfde pagina, of bij het versturen van items via de API:

POST /api/v1/knowledge/text/
{
  "title": "Members-only price list",
  "content": "...",
  "website_id": "123",
  "access_tags": ["premium"]
}

Laat daarna je server het ondertekende bewijs afdrukken naast het widget-snippet. Het te ondertekenen bericht is de door komma's gescheiden taglijst, met een verticale streep gekoppeld aan de vervaltijd wanneer je die gebruikt:

<?php
$tags    = "members,premium";          // this visitor's entitlements
$expires = time() + 3600;              // unix seconds, optional but recommended
$sig     = hash_hmac("sha256", $tags . "|" . $expires, $SECRET);
?>
<script>
window.Asyntai = window.Asyntai || {};
window.Asyntai.accessTags = "<?php echo $tags; ?>";
window.Asyntai.accessTagsExpires = "<?php echo $expires; ?>";
window.Asyntai.accessTagsSignature = "<?php echo $sig; ?>";
</script>

Dezelfde handtekening in Node.js en Python:

// Node.js
const crypto = require("crypto");
const sig = crypto.createHmac("sha256", SECRET)
                  .update(tags + "|" + expires).digest("hex");

# Python
import hmac, hashlib
sig = hmac.new(SECRET.encode(), f"{tags}|{expires}".encode(),
               hashlib.sha256).hexdigest()

Zonder vervaltijd onderteken je alleen de tagreeks zelf. Met vervaltijd werkt een bewijs niet meer zodra die verstreken is — handig wanneer rechten ingetrokken kunnen worden, omdat de bezoeker een pagina moet herladen die jij beheert om een vers bewijs te krijgen.

Wat gegarandeerd is

  • Server-side handhaving - het filter draait in onze databasequery bij het opvragen; getagde items ontbreken in de context van de AI voor ongeautoriseerde bezoekers, dus er is niets dat kan weglekken
  • Overal fail-closed - geen handtekening, verkeerde handtekening, verlopen bewijs, functie uitgeschakeld, abonnement verlaagd: in elk van deze gevallen krijgt de bezoeker alleen openbare content, nooit meer
  • De browser kan geen toegang vervalsen - de tags aanpassen in de ontwikkeltools breekt de handtekening; alleen jouw server bezit de sleutel
  • Je rechtenlogica blijft van jou - wij weten nooit hoe je bepaalt wie welke tag krijgt; we controleren alleen dat jouw server het heeft bevestigd

Goed om te weten

  • Access Tags is autorisatie, User Context is personalisatie - gebruik User Context om de AI over het lid te vertellen; gebruik Access Tags om te bepalen uit welke kennis de AI mag putten
  • Gecrawlde website-content is altijd openbaar - die komt van je openbare website, dus er valt niets te beperken; tags gelden voor tekst-, bestands- en API-items
  • Eén passende tag is genoeg - een item met twee tags is beschikbaar voor een bezoeker die een van beide draagt
  • De sleutel opnieuw genereren maakt elk oud bewijs ongeldig - doe dit als de sleutel gelekt kan zijn en werk daarna je pagina's bij zodat ze met de nieuwe ondertekenen
  • Tagnamen bepaal je zelf - maximaal 20 per item, elk 50 tekens, zonder komma's of verticale strepen; ze verschijnen nooit in de chat die bezoekers zien

Werkt samen met User Context: de ene functie bepaalt welke kennis de AI voor deze bezoeker mag gebruiken, de andere vertelt de AI wie de bezoeker is.

Gebruikerscontext Geef gegevens van ingelogde gebruikers door aan uw AI-chatbot voor gepersonaliseerde gesprekken

Opmerking: Access Tags is onderdeel van een Enterprise-overeenkomst. Mail naar [email protected] en we leggen alles uit.