Μοντέλο πρόσβασης στα workspaces: έρευνα και πρόταση
Έρευνα για τον διαχωρισμό δικαιωμάτων εγκατάστασης, ρόλων workspace και πρόσβασης στα δεδομένα του CRM.
Έρευνα που ελέγχθηκε στις 23 Σεπτεμβρίου 2026. Πρόκειται για σημείωμα σχεδιασμού, όχι για προδιαγραφή του API. Ο οδηγός Authentication και ρόλοι περιγράφει όσα υλοποιεί σήμερα το Bubllio.
Το επιχειρηματικό ερώτημα
Ένας IT operator εγκαθιστά το Bubllio για μια εταιρεία. Πρέπει όλοι όσοι μπορούν να δημιουργούν workspace να γίνονται και superuser της εγκατάστασης; Όχι. Η αρχική ρύθμιση της εγκατάστασης, η διαχείριση του deployment, η διαχείριση workspace και η πρόσβαση στα δεδομένα CRM είναι διαφορετικές αρμοδιότητες.
Installation
├─ installation administrator: ρυθμίσεις deployment και πρόσβαση IT
├─ installation administrator: δημιουργία κοινόχρηστων workspaces
└─ workspaces: ανεξάρτητα memberships και επιχειρηματικά δεδομένα
├─ Owner: τελική ευθύνη για το workspace
├─ Admin: καθημερινή διαχείριση workspace
├─ Member: εργασία με τα δεδομένα CRM
└─ Viewer: πρόσβαση μόνο για ανάγνωσηΟ ρόλος στην εγκατάσταση και ο ρόλος membership πρέπει να είναι ανεξάρτητοι. Κάποιος μπορεί να δημιουργήσει ένα workspace χωρίς να είναι μέλος κάποιου άλλου· επίσης, μπορεί να έχει διαφορετικό ρόλο σε κάθε workspace. Ένα workspace δικαιολογείται όταν υπάρχει πραγματικό όριο στα δεδομένα ή στη διαχείριση — για παράδειγμα, διαφορετική επιχειρηματική μονάδα, θυγατρική, πελάτης ή ρύθμιση SMTP — και όχι απλώς επειδή υπάρχει μια εταιρεία πελάτη στο CRM.
Τι μαθαίνουμε από αντίστοιχα προϊόντα
| Προϊόν | Μοντέλο πρόσβασης | Τι κρατάμε για το Bubllio |
|---|---|---|
| Microsoft Dataverse / Power Platform | Η διαχείριση tenant, environment και δεδομένων Dataverse έχει διαφορετικό πεδίο εφαρμογής. Η διαχείριση tenant δεν συνεπάγεται αυτόματα πρόσβαση στα δεδομένα. | Διαχωρίζουμε τα δικαιώματα υποδομής και δημιουργίας workspaces από το membership στα δεδομένα. |
| HubSpot | Ο ρόλος Super Admin έχει πολύ ευρεία δικαιώματα. Η διαχείριση χρηστών και ομάδων μπορεί να ανατεθεί, αλλά μόνο Super Admin μπορεί να απονείμει αυτόν τον ρόλο. | Δεν δίνουμε δικαιώματα superuser μόνο και μόνο για να προσκληθούν χρήστες ή να δημιουργηθούν workspaces. |
| Pipedrive | Τα permission sets ορίζουν τι μπορούν να κάνουν οι χρήστες· οι visibility groups ορίζουν ποια records μπορούν να δουν. | Δεν συγχέουμε τα δικαιώματα ενεργειών με την ορατότητα των records. Σήμερα το Bubllio παρέχει ορατότητα σε όλο το workspace. |
| Salesforce | Τα profiles και permission sets ορίζουν πρόσβαση σε objects και fields· το sharing και η ιεραρχία ρόλων ορίζουν πρόσβαση σε records. | Η λεπτομερής διαβάθμιση είναι εφικτή, αλλά θα πρόσθετε σημαντική πολυπλοκότητα χωρίς τεκμηριωμένη ανάγκη. |
| Odoo | Οι ρόλοι και οι ομάδες ορίζουν πρόσβαση στις εφαρμογές. Η πρόσβαση σε πολλές εταιρείες ρυθμίζεται ανά εταιρεία. | Πολλές επιχειρηματικές οντότητες μπορούν να συνυπάρχουν σε μία εγκατάσταση, χωρίς όλοι οι χρήστες να γίνονται installation administrators. |
| SuiteCRM | Οι ρόλοι ορίζουν τις ενέργειες ανά module και record· οι security groups περιορίζουν την ορατότητα των records. | Τα δικαιώματα ενεργειών και η ορατότητα δεδομένων είναι ξεχωριστές έννοιες. Προσθέτουμε τη δεύτερη μόνο όταν υπάρξει συγκεκριμένη ανάγκη. |
Τα προϊόντα αυτά χρησιμοποιούν διαφορετικά τους όρους organization, account και environment. Συγκρίνουμε τα όρια πρόσβασης· δεν υποστηρίζουμε ότι τα αντίστοιχα αντικείμενα ταυτίζονται με το Organization του Bubllio. Οι λεπτομέρειες και οι λειτουργίες μπορεί να αλλάξουν, γι’ αυτό ελέγξτε ξανά την τεκμηρίωση των προμηθευτών πριν βασίσετε σε αυτήν μια υλοποίηση.
Τι ισχύει σήμερα και τι μπορεί να αλλάξει αργότερα
| Αρμοδιότητα | Υλοποίηση σήμερα | Πιθανή μελλοντική βελτίωση |
|---|---|---|
| Πρώτη εγκατάσταση | Το αρχικό setup δημιουργεί Django superuser, το πρώτο workspace και το Owner membership του. | Διατηρούμε την εφάπαξ διαδικασία bootstrap. |
| Πρόσθετοι IT operators | Οι installation admins προσκαλούν άλλον installation admin. Η πρόσκληση και η αποδοχή της καταγράφονται στο audit log. | Η πρόσβαση αυτή παραμένει σπάνια και ελέγχεται τακτικά. |
| Δημιουργία κοινόχρηστου workspace | Μόνο installation administrator μπορεί να καλέσει το POST /api/v1/organizations/. | Η δημιουργία workspaces σε managed εγκαταστάσεις παραμένει κεντρικά ελεγχόμενη. |
| Ορισμός business owner | Ο δημιουργός ορίζει owner_email. Αν πρόκειται για διαφορετικό email, το workspace παραμένει απομονωμένο μέχρι να γίνει αποδοχή της πρόσκλησης. Τότε αφαιρείται το προσωρινό membership του δημιουργού και ενεργοποιείται ο business owner. | Μπορεί να προστεθεί πολιτική λήξης ή ανάκτησης πρόσκλησης, αν τη χρειαστούν enterprise εγκαταστάσεις. |
| Διαχείριση workspace | Owner και Admin αλλάζουν ρυθμίσεις και SMTP και διαχειρίζονται τα επιτρεπόμενα μέλη. Μόνο ο Owner μεταβιβάζει την ιδιοκτησία ή διαγράφει το workspace. | Κρατάμε τους τέσσερις απλούς ρόλους μέχρι να προκύψουν πραγματικές ανάγκες για λεπτομερέστερα permissions. |
| Ανάγνωση δεδομένων workspace | Κάθε μέλος μπορεί να διαβάσει όλες τις companies, contacts, automations και runs του workspace. | Εξετάζουμε ορατότητα ανά record ή ομάδα μόνο αν οι απαιτήσεις ορίζουν ποιος δεν πρέπει να βλέπει τι. |
| Personal workspace | Από προεπιλογή είναι απενεργοποιημένο. Αν ενεργοποιηθεί, κάθε χρήστης μπορεί να δημιουργήσει ένα. | Σε εταιρικά διαχειριζόμενη εγκατάσταση παραμένει απενεργοποιημένο, εκτός αν υπάρχει σαφής επιχειρηματικός λόγος και πολιτική διαχείρισης δεδομένων. |
Προτεινόμενη διαδικασία δημιουργίας workspace
- Το IT ολοκληρώνει το αρχικό setup και προσκαλεί έναν δεύτερο έμπιστο IT admin για επιχειρησιακή συνέχεια.
- Το IT δημιουργεί το workspace και ορίζει τον business owner.
- Ο νέος Owner αποδέχεται πρόσκληση που έχει σταλεί στο email του πριν αποκτήσει πρόσβαση. Δεν απαιτείται δημόσιο self-signup.
- Ο Owner προσκαλεί έναν ή περισσότερους workspace Admins. Εκείνοι ρυθμίζουν το workspace και το SMTP και προσκαλούν Members ή Viewers. Ένας Admin δεν μπορεί να ορίσει άλλον Admin.
- Για κανονική πρόσβαση στο CRM API απαιτείται membership. Η δημιουργία ενός workspace δεν δίνει στον δημιουργό μόνιμη πρόσβαση σε άλλα workspaces.
Η διαδικασία αυτή έχει υλοποιηθεί. Όσο εκκρεμεί η πρόσκληση του Owner, ο δημιουργός έχει μόνο προσωρινό Owner membership και τα κανονικά CRM endpoints δεν εμφανίζουν το workspace ούτε σε αυτόν. Ο δημιουργός ή ένας installation admin μπορεί να στείλει ξανά την πρόσκληση ή να ακυρώσει το workspace. Το backend επιβάλλει αυτόν τον περιορισμό ανεξάρτητα από το React frontend.
Επιπτώσεις στην ασφάλεια και εκκρεμείς εργασίες
- Το Django superuser παρακάμπτει τον περιορισμό πρόσβασης μέσω REST membership. Το product API περιορίζει την πρόσβαση των IT χρηστών βάσει membership, αλλά το
/admin/παρέχει στους superusers ευρεία πρόσβαση στη βάση δεδομένων. Δεν πρέπει να υποσχεθούμε ότι το IT δεν μπορεί να δει δεδομένα CRM πριν σχεδιαστεί και περιοριστεί σκόπιμα αυτή η προνομιακή πρόσβαση. - Κρατάμε περιορισμένα τα δικαιώματα του δημιουργού. Του δίνουμε
create_workspace, όχι καθολική πρόσβαση σε ρυθμίσεις, SMTP secrets, προσκλήσεις IT, memberships άλλων workspaces ή μόνιμη ιδιοκτησία κάθε workspace. - Αποφεύγουμε workspaces χωρίς Owner. Η διαδικασία χρησιμοποιεί προσωρινό Owner membership και σαφή δυνατότητα επανάληψης ή ακύρωσης της πρόσκλησης. Η βάση δεδομένων επιβάλλει το πολύ έναν Owner, όχι όμως ότι θα υπάρχει πάντα ένας Owner μετά από κάθε δυνατή απευθείας διοικητική παρέμβαση.
- Καταγράφουμε αλλαγές δικαιωμάτων. Η απονομή και ανάκληση δικαιωμάτων, η δημιουργία workspace, η επανάληψη ή ακύρωση προσκλήσεων, η αποδοχή Owner, οι αλλαγές membership ή ιδιοκτησίας, οι αλλαγές SMTP και η προαγωγή installation administrator καταγράφονται στο
WorkspaceAccessEvent. Η ανάκληση πρόσκλησης δεν έχει υλοποιηθεί. - Διατηρούμε απλό το προεπιλεγμένο μοντέλο. Δεν προσθέτουμε αυθαίρετους custom roles, ιεραρχίες records τύπου Salesforce ή personal workspaces από προεπιλογή. Προσθέτουμε λεπτομερέστερα permissions μόνο για ανάγκες που έχουν επιβεβαιωθεί στην πράξη.
Απόφαση
Χρησιμοποιούμε δύο ανεξάρτητα επίπεδα: installation privileges για deployment και δημιουργία workspaces, και membership roles για κάθε workspace. Διατηρούμε τους τέσσερις ρόλους workspace και τον κεντρικό έλεγχο δημιουργίας από installation admins. Δεν προσθέτουμε custom roles ή ασφάλεια σε επίπεδο record μέχρι να υπάρξει συγκεκριμένη ανάγκη πελάτη.
