FastComments.com

Šta je kontrola pristupa? Internal Link

Sa FastComments SSO Access Control, ponekad nazvanim RBAC, korisnicima se može ograničiti pristup samo određenim stranicama ili nitima komentara. Dodatno, korisnici mogu @mention jedni druge samo u istoj grupi.

Detaljno

Možemo smestiti Users i opciono Pages u grupe.

Kada su Users smešteni u grupe, i Limit Comments by SSO User Groups je omogućen u Podešavanjima widgeta, tada će korisnici videti samo komentare od korisnika u njihovim istim grupama i moći će da @mention samo korisnike u istim grupama.

Dodatno, Pages se mogu smestiti u grupe, i tada korisnici mogu pristupati komentarima samo za stranice kojima imaju pristup.

Ovo nazivamo "Grupe na nivou korisnika" naspram "Grupe na nivou stranice".

Pa koja je prava za vas?

Koristite grupe na nivou korisnika ako...

  • Želite da koristite istu vrednost urlId (URL stranice, ili ID članka), ali da ograničite komentare po grupi.
  • Na primer, želite da imate grupe "Novi korisnik" i "Veteran korisnik", i da oni nikada ne vide komentare jedni drugih na istim stranicama.

Koristite grupe na nivou stranice ako...

  • Vaše grupe imaju specifične stranice.
  • Na primer, korisnici u grupi "Javne stranice" nikada ne bi smeli da vide članke iz grupe "Tajni članci".

Kako funkcioniše Internal Link

FastComments kontrola pristupa radi tako što dodeljuje Pages i Users u željene grupe.

Grupa je jednostavno tekstualni identifikator, na primer GREEN ili abc-123.

Users i Pages nisu ograničeni na samo jednu grupu. Ograničeni su na 100 odnosno 1000 grupa.

Pristup neovlašćenim stranicama

Ako korisnik pokuša da pristupi stranici za koju nema pristup, videće poruku o grešci, kao u nastavku:

Primer neuspešne autorizacije
Primer neuspešne autorizacije

Tekst poruke može biti prilagođen.


Specifikacija Internal Link

Definisanje načina na koji više korisnika međusobno interaguje i testiranje toga je komplikovano. Evo sledeće specifikacije koju primenjujemo za kontrolu pristupa, koju možete koristiti za testiranje vaše implementacije:

Page with null group ids, user with null group ids - treba da ima pristup.
Page with null group ids, user with group ids - treba da ima pristup.
Page with group ids, user with null group ids - treba da ima pristup.
Page with group ids, user with empty list - NE bi trebalo da ima pristup.
Page with group ids, user with group ids - postoji presek - treba da ima pristup.
Page with group ids, user with group ids - presek ne postoji - NE bi trebalo da ima pristup.
Page with empty list of group ids (nobody has access), user with null - NE bi trebalo da ima pristup.

SSO User A = No group ids defined (null = puni pristup).
SSO User B = No group ids defined (null = puni pristup).
A može @B.

SSO User A = No group ids defined (null = puni pristup).
SSO User B = Group ids defined.
A može @B.

SSO User A = Group ids defined.
SSO User B = No group ids defined (null = puni pristup).
A može @B.

SSO User A = Group ids = [a].
SSO User B = Group ids = [b].
A NE može @B.

SSO User A = Group ids = [a].
SSO User B = Group ids = [a, b].
A može @B.

Implementacija Internal Link

Spominjanje korisnika iz drugih grupa

Ako dva korisnika pripadaju dvema različitim skupovima grupa, i nema preklapanja, neće moći međusobno da @mention.

Ako korisnik ručno otkuca @mention i pošalje komentar, to će ostati običan tekst. Drugi korisnik neće biti označen.

Održavanje grupa

Groups se definišu korišćenjem API resursa Pages i SSOUsers, redom.

API Pages može biti pozvan da definiše skup grupa kojima je dozvoljen pristup stranici. Podrazumevano, sve grupe, kao i korisnici koji ne pripadaju nijednoj grupi, imaju pristup.

Slično, API SSOUsers može biti pozvan da definiše grupe povezane sa svakim korisnikom.

Za oba resursa ne postoje ograničenja u pogledu kada grupe mogu biti postavljene ili ažurirane.

Ako je cilj samo da se ograniči mogućnost da se korisnici međusobno koriste @mention, onda se Pages ne moraju uzimati u obzir.

Napomena!

Definisanje i ažuriranje SSO korisničkih grupa ne zahteva korišćenje API-ja, i umesto toga može biti ažurirano automatski definisanjem group ids u SSO payload-u koji se prosleđuje comment widget-u. Međutim, za velike liste grupa, ovo se ne preporučuje jer bi korisnik morao da pošalje ovaj payload pri svakom učitavanju stranice.