Access Tags
Ierobežojiet zināšanu vienumus tikai pilnvarotiem apmeklētājiem — nodrošināts mūsu serveros, nevis ar MI
Pārskats
Ne viss saturs ir visiem: dokumenti tikai biedriem, konkrēta reģiona materiāli, maksas līmeņu resursi. Ar Access Tags viens tērzēšanas robots droši apkalpo dažādas auditorijas. Jūs pievienojat birku zināšanu vienumam, un no šī brīža vienums ir neredzams ikvienam apmeklētājam — izņemot tos, kuru lapa uzrāda šo birku, ko parakstījis jūsu pašu serveris. Ierobežojums tiek nodrošināts mūsu meklēšanas vaicājumā, pirms MI modelis vispār iesaistās. Apmeklētājs bez birkas saturu ar viltīgiem jautājumiem neizvilks, jo viņam tas nekad netika izgūts.
Kā tas darbojas
- Jūs birkojat zināšanu vienumus - Access Tags lapā vai tieši caur API; vienumi bez birkām turpina darboties visiem
- Jūsu serveris paraksta katra apmeklētāja birkas - kad pieteicies biedrs ielādē jūsu lapu, jūsu aizmugursistēma nosaka viņa tiesības un paraksta tās ar slepenu atslēgu, kas ir tikai jums
- Logrīks nosūta parakstīto apliecinājumu - tas ceļo ar katru tērzēšanas ziņu; pārlūks to tikai pārnes un nevar mainīt, nesabojājot parakstu
- Mēs pārbaudām un filtrējam - derīgs paraksts atslēdz vienumus ar atbilstošām birkām; trūkstošs, viltots vai beidzies apliecinājums nozīmē, ka apmeklētājs saņem tikai publisku saturu
Iestatīšana
Ieslēdziet funkciju paneļa Access Tags lapā — parakstīšanas atslēga tiek ģenerēta automātiski. Glabājiet to tikai savā serverī; ikviens, kam tā ir, var veidot derīgus apliecinājumus.
Birkojiet saturu tajā pašā lapā vai sūtot vienumus caur API:
POST /api/v1/knowledge/text/
{
"title": "Members-only price list",
"content": "...",
"website_id": "123",
"access_tags": ["premium"]
}
Pēc tam lieciet savam serverim izvadīt parakstīto apliecinājumu blakus logrīka fragmentam. Parakstāmā ziņa ir ar komatiem atdalīts birku saraksts, savienots ar vertikālu svītru ar derīguma beigu laiku, ja to izmantojat:
<?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>
Tas pats paraksts Node.js un 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()
Bez derīguma termiņa parakstiet tikai pašu birku virkni. Ar to apliecinājums pārstāj darboties termiņa beigu brīdī — noderīgi, kad tiesības var atsaukt, jo apmeklētājam jāpārlādē jūsu kontrolēta lapa, lai saņemtu svaigu apliecinājumu.
Kas tiek garantēts
- Nodrošināšana servera pusē - filtrs darbojas mūsu datubāzes vaicājumā izgūšanas laikā; nepilnvarotiem apmeklētājiem birkotie vienumi MI kontekstā vispār nenonāk, tāpēc nav kam noplūst
- Visur fail-closed - nav paraksta, nepareizs paraksts, beidzies apliecinājums, izslēgta funkcija, pazemināts plāns: katrā no šiem gadījumiem apmeklētājs saņem tikai publisku saturu, nekad vairāk
- Pārlūks nevar viltot piekļuvi - birku rediģēšana izstrādātāja rīkos sabojā parakstu; atslēga ir tikai jūsu serverim
- Jūsu tiesību loģika paliek jūsu - mēs nekad neuzzinām, kā izlemjat, kurš saņem kuru birku; mēs tikai pārbaudām, ka jūsu serveris to apliecinājis
Der zināt
- Access Tags ir autorizācija, User Context ir personalizācija - izmantojiet User Context, lai pastāstītu MI par biedru; izmantojiet Access Tags, lai kontrolētu, no kādām zināšanām MI drīkst smelties
- Pārmeklētais vietnes saturs vienmēr ir publisks - tas nāk no jūsu publiskās vietnes, tāpēc nav ko ierobežot; birkas attiecas uz teksta, failu un API vienumiem
- Apmeklētājam pietiek ar vienu atbilstošu birku - vienums ar divām birkām ir pieejams apmeklētājam, kuram ir jebkura no tām
- Atslēgas atkārtota ģenerēšana padara nederīgus visus vecos apliecinājumus - dariet to, ja atslēga varēja noplūst, un pēc tam atjauniniet lapas, lai tās parakstītu ar jauno
- Birku nosaukumus izvēlaties jūs - līdz 20 vienumam, katrs 50 rakstzīmes, bez komatiem un vertikālām svītrām; apmeklētājiem redzamajā tērzēšanā tās nekad neparādās
Sader ar User Context: viena funkcija kontrolē, kādas zināšanas MI drīkst izmantot šim apmeklētājam, otra pasaka MI, kas apmeklētājs ir.
Lietotāja konteksts Nododiet pieteikušos lietotāju datus savam MI tērzēšanas robotam personalizētām sarunāmPiezīme: Access Tags ir Enterprise līguma daļa. Rakstiet uz [email protected], un mēs visu izskaidrosim.