FastComments.com

Шта је контрола приступа? Internal Link

With FastComments SSO Access Control, ponekad називано RBAC, корисницима се може ограничити приступ само одређеним страницама или нитима коментара. Додатно, корисници могу @mention једни друге само у истој групи.

У детаљу

Можемо ставити Users и по избору Pages у групе.

Када су Users стављени у групе, и када је у Widget Settings омогућено Limit Comments by SSO User Groups, тада ће корисници видети само коментаре од корисника из својих група и моћи ће да @mention само кориснике из истих група.

Додатно, Pages се могу ставити у групе, и онда корисници могу приступати коментарима само за странице за које имају приступ.

Ово називамо „групе на нивоу корисника“ у односу на „групе на нивоу странице“.

Па која је права за вас?

Користите групе на нивоу корисника ако...

  • Желите да користите исту вредност urlId (URL странице или ID чланка), али да огранчите коментаре по групи.
  • На пример, желите да имате групе „Нови корисник“ и „Ветеран корисник“, и оне никада не треба да виде коментаре једна друге на истим страницама.

Користите групе на нивоу странице ако...

  • Ваше групе имају специфичне странице.
  • На пример, корисници у групи „Јавне странице“ не би требало никада да прегледају чланке у групи „Врло тајне“.

Како функционише Internal Link

FastComments Access Control ради тако што додељује Pages и Users у жељене групе.

Група је једноставно идентификатор у облику низа, као што је GREEN или abc-123.

Users and Pages are not just limited to one group. They are limited to 100 and 1000 groups, respectively.

Приступ неовлашћеним страницама

Ако корисник покуша да приступи страници за коју нема дозволу, видеће поруку о грешци, као доле:

Пример неуспеле ауторизације
Пример неуспеле ауторизације

Текст поруке може бити прилагођен.


Спецификација Internal Link

Дефинисање начина на који више корисника међусобно интерагује, и тестирање тога, је компликовано. Ево следеће спецификације коју пратимо за контролу приступа, коју можете користити за тестирање ваше имплементације:

Страница са null ид-овима група, корисник са null ид-овима група - треба да има приступ.
Страница са null ид-овима група, корисник са ид-овима група - треба да има приступ.
Страница са ид-овима група, корисник са null ид-овима група - треба да има приступ.
Страница са ид-овима група, корисник са празном листом - НЕ би требало да има приступ.
Страница са ид-овима група, корисник са ид-овима група - постоји пресек - треба да има приступ.
Страница са ид-овима група, корисник са ид-овима група - пресек не постоји - НЕ би требало да има приступ.
Страница са празном листом ид-ова група (нико нема приступ), корисник са null - НЕ би требало да има приступ.

SSO корисник A = ид-ови група нису дефинисани (null = пун приступ).
SSO корисник B = ид-ови група нису дефинисани (null = пун приступ).
A може да @B.

SSO корисник A = ид-ови група нису дефинисани (null = пун приступ).
SSO корисник B = ид-ови група дефинисани.
A може да @B.

SSO корисник A = ид-ови група дефинисани.
SSO корисник B = ид-ови група нису дефинисани (null = пун приступ).
A може да @B.

SSO корисник A = ид-ови група = [a].
SSO корисник B = ид-ови група = [b].
A НЕ може да @B.

SSO корисник A = ид-ови група = [a].
SSO корисник B = ид-ови група = [a, b].
A може да @B.

Имплементација Internal Link

Помена корисника у другим групама

Ако два корисника припадају два различита скупа група, и не постоји пресек, неће моћи да се међусобно @mention.

Ако корисник ручно унесе @mention и пошаље свој коментар, тај @mention ће остати као обичан текст. Други корисник неће бити означен.

Одржавање група

Groups се дефинишу коришћењем Pages и SSOUsers API ресурса, респективно.

Pages API може бити позван да дефинише скуп група којима је дозвољен приступ страници. Подразумевано, све групе, и корисници који не припадају ниједној групи, имају приступ.

Слично, SSOUsers API може бити позван да дефинише групе повезане са сваким корисником.

За оба ресурса не постоје ограничења када групе могу бити подешене или ажуриране.

Ако је жеља само да се ограничи корисницима да се међусобно @mention'ing, онда Pages не морају бити узете у обзир.

Напомена!

Дефинисање и ажурирање SSO корисничких група не захтева коришћење API-ја, и уместо тога може се аутоматски ажурирати дефинисањем group ids у SSO payload који се прослеђује видгету за коментаре. Међутим, за велике спискове група, ово се не препоручује јер би корисник морао да пошаље овај payload при сваком учитавању странице.