Zugriffskontrolle
IronFlock verwendet ein feingranulares Berechtigungssystem, um zu steuern, wer Assets innerhalb deiner Projekte lesen, bearbeiten und verwalten kann. Berechtigungen werden pro Benutzer und pro Asset verfolgt und sind vollständig versioniert.
Wie Berechtigungen funktionieren
Eigentümerschaft
Nur Projekte und Apps haben ein Eigentumskonzept. Der Eigentümer eines Projekts ist ein Superuser: Er hat automatisch die vollständige Kontrolle über alle Assets innerhalb dieses Projekts — Geräte, Gruppen, Boards und Daten-Backends — unabhängig von den einzelnen Asset-Einstellungen. Auch wenn andere Benutzer Geräte zu einem Projekt hinzufügen, behält der Projekteigentümer den Superuser-Zugriff auf diese Geräte.
Der Eigentümer einer App hat entsprechend die vollständige Kontrolle über den Code, die Releases und die Verteilung dieser App.
Feingranulare Asset-Berechtigungen
Innerhalb eines Projekts kannst du einzelnen Projektmitgliedern feingranulare Berechtigungen für vier Asset-Typen erteilen:
| Asset-Typ | Beschreibung |
|---|---|
| Gerät | Ein physisches oder virtuelles Edge-Gerät |
| Gerätegruppe | Eine logische Gruppierung von Geräten innerhalb eines Projekts |
| Benutzer-Board | Ein Daten-Visualisierungs-Dashboard |
| Daten-Backend | Eine Zeitreihendatenbank, die pro Projekt bereitgestellt wird |
Berechtigungen können nur Benutzern zugewiesen werden, die bereits ins Projekt eingeladen wurden. Asset-Berechtigungen können nicht an Benutzer außerhalb des Projekts vergeben werden.
Standard-Projektmitgliedsberechtigungen
Innerhalb eines Projekts kannst du Standardberechtigungen festlegen, die für alle Projektmitglieder pro Asset-Typ gelten. So kannst du z.B. allen Projektmitgliedern standardmäßig Lesezugriff auf alle Boards geben, ohne jedem einzeln Zugriff gewähren zu müssen.
Projektberechtigungen
Der Projekteigentümer hat vollen Superuser-Zugriff auf das Projekt und alle seine Assets. Anderen Benutzern können folgende Berechtigungen auf Projektebene erteilt werden:
| Berechtigung | Beschreibung |
|---|---|
| Geräte erstellen | Neue Geräte zum Projekt hinzufügen |
| Gruppen erstellen | Neue Gerätegruppen erstellen |
| Aktualisieren | Projektname, Beschreibung und Metadaten bearbeiten |
| Berechtigungen vergeben | Berechtigungen für andere Benutzer zuweisen oder ändern |
| Löschen | Das gesamte Projekt dauerhaft löschen |
Geräteberechtigungen
| Berechtigung | Beschreibung |
|---|---|
| Bedienen | Steuerbefehle senden und mit dem Gerät interagieren |
| Entwickeln | Auf Entwicklungsfunktionen und -container auf dem Gerät zugreifen |
| Installieren | Apps auf dem Gerät installieren und entfernen |
| Aktualisieren | Namen, Beschreibung und andere Metadaten bearbeiten |
| Netzwerk | Netzwerkeinstellungen konfigurieren (WLAN, Ethernet) |
| Warten | Auf Wartungsfunktionen, Terminal und Systemdiagnosen zugreifen |
| Löschen | Das Gerät dauerhaft aus dem Projekt entfernen |
| Berechtigungen vergeben | Berechtigungen für andere Benutzer auf diesem Gerät zuweisen oder ändern |
Gerätegruppenberechtigungen
| Berechtigung | Beschreibung |
|---|---|
| Aktualisieren | Gruppenname, Beschreibung und Mitgliedschaft bearbeiten |
| Löschen | Die Gruppe dauerhaft entfernen |
| Berechtigungen vergeben | Berechtigungen für andere Benutzer auf dieser Gruppe zuweisen oder ändern |
App-Berechtigungen
| Berechtigung | Beschreibung |
|---|---|
| Lesen | Die App, Beschreibung und Dashboards ansehen |
| Entwickeln | Quellcode aufrufen, die App bearbeiten und App Studio nutzen |
| Code einsehen | Schreibgeschützter Zugriff auf den App-Quellcode |
| Aktualisieren | App-Metadaten bearbeiten (Name, Beschreibung, Bild) |
| Löschen | Die App dauerhaft löschen |
| Berechtigungen vergeben | Berechtigungen für andere Benutzer auf dieser App zuweisen oder ändern |
| Release erstellen | Neue Versionen im App Store veröffentlichen |
| Nutzen | Die App in einem Projekt installieren (erforderlich für private Apps) |
| App Store | App-Store-Eintrag und Sichtbarkeit verwalten |
Board- und Daten-Backend-Berechtigungen
| Berechtigung | Beschreibung |
|---|---|
| Aktualisieren | Inhalt oder Konfiguration bearbeiten |
| Berechtigungen vergeben | Berechtigungen für andere Benutzer zuweisen |
| Löschen | Das Board oder Daten-Backend dauerhaft entfernen |
Benutzer einladen
So vergibst du Berechtigungen an einen anderen Benutzer innerhalb eines Projekts:
- Navigiere zum Bereich Berechtigungen eines Assets (Projekt, Gerät, Gruppe, Board oder Daten-Backend).
- Klicke auf Benutzer einladen.
- Suche den Benutzer nach E-Mail-Adresse.
- Wähle die zu erteilenden Berechtigungen aus.
- Klicke auf Einladen.
Nur Benutzer, die bereits Projektmitglieder sind, können Asset-Berechtigungen innerhalb dieses Projekts erhalten.
Eigentumsübertragung
Ein Projekt übertragen
Der Projekteigentümer kann die Eigentümerschaft auf einen anderen IronFlock-Benutzer übertragen. Der neue Eigentümer erhält vollen Superuser-Zugriff; der bisherige Eigentümer hat danach nur noch die verbleibenden Berechtigungen, die er im Projekt besitzt.
Um die Projekteigentümerschaft zu übertragen, öffne die Projekteinstellungen und navigiere zum Tab Berechtigungen.
Eine App übertragen
Der App-Eigentümer kann die Eigentümerschaft auf einen anderen IronFlock-Benutzer übertragen. Dabei wird die vollständige Kontrolle über Code, Releases, Preisgestaltung und Verteilung der App an den neuen Eigentümer übergeben.
Um die App-Eigentümerschaft zu übertragen, öffne die App in App Studio und navigiere zum Tab Berechtigungen.
Geräteübertragung und Beanspruchen
Ein Gerät in ein anderes Projekt übertragen
Ein Gerät kann von einem Projekt in ein anderes übertragen werden. Dabei wird das Gerät — zusammen mit seiner Konfiguration — in das Zielprojekt verschoben. Nur Benutzer mit der Berechtigung Geräte erstellen im Zielprojekt können eine Übertragung initiieren oder empfangen.
Beanspruchbare Geräte
Ein Gerät kann als beanspruchbar markiert werden. Wenn ein Gerät beanspruchbar ist, kann jeder IronFlock-Benutzer, der die Geräte-ID kennt, es aktiv beanspruchen — d.h. es in ein Projekt übertragen, in dem er die Berechtigung Geräte erstellen hat. Dies ist nützlich für:
- Self-Provisioning-Workflows — Außendiensttechniker registrieren Geräte ohne Administratorbeteiligung
- Out-of-Box-Aktivierung — Endkunden scannen eine Geräte-ID (z.B. von einem QR-Code-Etikett), um das Gerät in ihr eigenes Projekt zu übernehmen
Sobald ein Gerät beansprucht wurde, wird es in das Projekt des Beanspruchers verschoben und ist nicht mehr beanspruchbar.
Berechtigungsvererbung
- Projekteigentümer — Hat automatisch die vollständige Kontrolle über alle Geräte, Gruppen, Boards und Daten-Backends im Projekt. Einzelne Asset-Zuweisungen sind nicht notwendig.
- Standard-Mitgliedsberechtigungen — Gelten für alle Projektmitglieder für einen bestimmten Asset-Typ, sofern nicht durch eine individuelle Zuweisung überschrieben.
- Geräteberechtigungen sind unabhängig von Gruppenberechtigungen. Das Zuweisen von Berechtigungen auf einer Gruppe wird nicht auf einzelne Geräteeinstellungen übertragen.
Prüfprotokoll
Jede Berechtigungsänderung wird aufgezeichnet mit:
- Wer die Änderung vorgenommen hat (Gewährende Person)
- Was sich geändert hat (welche Berechtigungen hinzugefügt oder entfernt wurden)
- Wen es betroffen hat (der Benutzer, dessen Berechtigungen geändert wurden)
- Wann die Änderung erfolgte
Diese zeitliche Prüfspur ist im Bereich Prüfprotokolle verfügbar und nützlich für Compliance-Überprüfungen und Sicherheitsuntersuchungen.