FastComments.com

Τι είναι ο έλεγχος πρόσβασης; Internal Link

Με το FastComments SSO Access Control, που μερικές φορές αναφέρεται ως RBAC, οι χρήστες μπορούν να περιοριστούν ώστε να έχουν πρόσβαση μόνο σε ορισμένες σελίδες ή σε συγκεκριμένα νήματα σχολίων. Επιπλέον, οι χρήστες μπορούν να @mention ο ένας τον άλλο μόνο στην ίδια ομάδα.

Λεπτομέρειες

Μπορούμε να τοποθετήσουμε Users και προαιρετικά Pages σε ομάδες.

Όταν οι Users τοποθετούνται σε ομάδες, και το Limit Comments by SSO User Groups είναι ενεργοποιημένο στις Ρυθμίσεις Widget, τότε οι χρήστες θα βλέπουν μόνο σχόλια από χρήστες στην ίδια ομάδα και θα μπορούν να @mention μόνο χρήστες στην ίδια ομάδα.

Επιπλέον, οι Pages μπορούν να τοποθετηθούν σε ομάδες, και τότε οι χρήστες μπορούν να έχουν πρόσβαση μόνο στα σχόλια για τις σελίδες στις οποίες έχουν πρόσβαση.

Αυτό το ονομάζουμε ομάδες "User-Level" σε αντίθεση με ομάδες "Page-Level".

So which one is right for you?

Use User-Level Groups if...

  • Θέλετε να χρησιμοποιήσετε την ίδια τιμή urlId (διεύθυνση σελίδας, ή αναγνωριστικό άρθρου), αλλά να περιορίσετε τα σχόλια ανά ομάδα.
  • Για παράδειγμα, θέλετε να έχετε ομάδες "New User" και "Veteran User", και να μην βλέπουν ποτέ τα σχόλια ο ένας του άλλου στις ίδιες σελίδες.

Use Page-Level Groups if...

  • Οι ομάδες σας περιλαμβάνουν συγκεκριμένες σελίδες.
  • Για παράδειγμα, οι χρήστες στην ομάδα "Public Pages" δεν θα πρέπει ποτέ να βλέπουν άρθρα στις σελίδες "Top Secret".

Πώς λειτουργεί Internal Link

Το FastComments Access Control λειτουργεί αναθέτοντας τις Pages και Users στις επιθυμητές ομάδες.

Μια ομάδα είναι απλά ένας αναγνωριστής συμβολοσειράς, όπως GREEN ή abc-123.

Users και Pages δεν περιορίζονται μόνο σε μία ομάδα. Περιορίζονται σε 100 και 1000 ομάδες, αντίστοιχα.

Πρόσβαση σε μη εξουσιοδοτημένες σελίδες

Εάν ένας χρήστης προσπαθήσει να αποκτήσει πρόσβαση σε μια σελίδα στην οποία δεν έχει πρόσβαση, θα δει ένα μήνυμα σφάλματος, όπως παρακάτω:

Παράδειγμα αποτυχίας εξουσιοδότησης
Παράδειγμα αποτυχίας εξουσιοδότησης

Το κείμενο του μηνύματος μπορεί να προσαρμοστεί.


Η προδιαγραφή Internal Link


Ο καθορισμός του τρόπου με τον οποίο πολλαπλοί χρήστες αλληλεπιδρούν, και η δοκιμή του, είναι περίπλοκος. Εδώ είναι η παρακάτω προδιαγραφή που ακολουθούμε για τον έλεγχο πρόσβασης, την οποία μπορείτε να χρησιμοποιήσετε για να δοκιμάσετε την υλοποίησή σας:

Page with null group ids, user with null group ids - should have access.
Page with null group ids, user with group ids - should have access.
Page with group ids, user with null group ids - should have access.
Page with group ids, user with empty list - should NOT have access.
Page with group ids, user with group ids - intersection exists - should have access.
Page with group ids, user with group ids - intersection does not exist - should NOT have access.
Page with empty list of group ids (nobody has access), user with null - should NOT have access.

SSO User A = No group ids defined (null = full access).
SSO User B = No group ids defined (null = full access).
A can @B.

SSO User A = No group ids defined (null = full access).
SSO User B = Group ids defined.
A can @B.

SSO User A = Group ids defined.
SSO User B = No group ids defined (null = full access).
A can @B.

SSO User A = Group ids = [a].
SSO User B = Group ids = [b].
A can NOT @B.

SSO User A = Group ids = [a].
SSO User B = Group ids = [a, b].
A can @B.

Υλοποίηση Internal Link

Αναφορά χρηστών σε άλλες ομάδες

Εάν δύο χρήστες ανήκουν σε δύο διαφορετικά σύνολα ομάδων και δεν υπάρχει επικάλυψη, δεν θα μπορούν να @mention ο ένας τον άλλο.

Εάν ένας χρήστης πληκτρολογήσει χειροκίνητα ένα @mention και υποβάλει το σχόλιό του, αυτό θα παραμείνει ως απλό κείμενο. Ο άλλος χρήστης δεν θα επισημανθεί.

Διαχείριση ομάδων

Groups ορίζονται χρησιμοποιώντας τους πόρους API Pages και SSOUsers, αντίστοιχα.

Το API Pages μπορεί να κληθεί για να ορίσει το σύνολο των ομάδων που επιτρέπεται να έχουν πρόσβαση στη σελίδα. Από προεπιλογή, όλες οι ομάδες, καθώς και οι χρήστες που δεν ανήκουν σε κάποια ομάδα, έχουν πρόσβαση.

Ομοίως, το API SSOUsers μπορεί να κληθεί για να ορίσει τις ομάδες που σχετίζονται με κάθε χρήστη.

Για και τους δύο πόρους, δεν υπάρχουν περιορισμοί ως προς το πότε οι ομάδες μπορούν να οριστούν ή να ενημερωθούν.

Αν επιθυμείται μόνο να περιοριστεί η δυνατότητα των χρηστών να @mention'ουν ο ένας τον άλλο, τότε οι Pages δεν χρειάζεται να ληφθούν υπόψη.

Σημείωση!

Ο ορισμός και η ενημέρωση των ομάδων χρηστών SSO δεν απαιτεί τη χρήση του API, και αντίθετα μπορεί να ενημερωθεί αυτόματα ορίζοντας τα ids των ομάδων στο payload του SSO που περνάει στο widget σχολίων. Ωστόσο, για μεγάλες λίστες ομάδων, αυτό δεν συνιστάται καθώς ο χρήστης θα πρέπει να υποβάλει αυτό το payload σε κάθε φόρτωση σελίδας.