Rollen und Zugriffsrechte können nicht über die Weboberfläche konfiguriert werden. Sie werden über eine nur für die Systemadministration zugängliche JSON-Datei konfiguriert. Diese Datei kann auf Anfrage für Private-Cloud- und On-Premise-Instanzen angepasst werden.
Die Konfiguration, welche Zugriffsrechte mit einer Rolle verbunden sind, erfolgt über die Zuordung von Schlüsseln zu jeder Art des Zugriffs auf vom System verwaltete Ressourcen. Die Zugriffsarten sind:
Das System verwaltet viele verschiedene Arten von Ressourcen. Jeder Ressourcentyp wird von einem eigenen Dienst verwaltet. Die folgenden Ressourcen-Arten sind standardmäßig im System konfiguriert:
Wenn eine Benutzerin oder ein Benutzer Zugriff auf eine Ressource anfragt, muss mindestens eine definierte Zugriffsbedingung für die Art des Zugriffs auf diese Ressource erfüllt sein. Das System unterstützt die folgenden Bedingungstypen:
{
"anonymous": {
"resource": {
"Bucket": {
"comment": {
"requires": "read"
},
"createNote": {
"requires": "read"
},
"editMetadata": {
"requires": "edit"
}
},
"Schema": {
"comment": {
"requires": "read"
},
"createNote": {
"requires": "read"
}
},
"Theme": {
"comment": {
"requires": "read"
},
"createNote": {
"requires": "read"
},
"editMetadata": {
"requires": "edit"
}
},
"TransformationProject": {
"comment": {
"requires": "read"
},
"createNote": {
"requires": "read"
},
"createTask": {
"requires": "edit"
},
"replyToTask": {
"requires": "read"
}
}
},
"application": {
"awsGrantAccess": false
}
},
"user": {
"extends": "anonymous",
"label": {
"en": "Registered user",
"de": "Standardnutzer"
},
"resources": {
"User": {
"read": true,
"edit": ["self"]
},
"Organisation": {
"read": true
}
}
},
"dataManager": {
"extends": "user",
"label": {
"en": "Data manager",
"de": "Daten-Manager"
},
"resources": {
"Bucket": {
"create": ["organisation"],
"read": ["organisation"],
"edit": ["organisation"],
"delete": ["organisation"]
},
"Theme": {
"read": ["organisation", "parentOrg"]
},
"Schema": {
"read": ["organisation", "parentOrg"]
},
"TransformationProject": {
"read": ["organisation", "parentOrg"]
}
}
},
"themeManager": {
"extends": "dataManager",
"label": {
"en": "Theme manager",
"de": "Themen-Manager"
},
"resources": {
"Theme": {
"create": ["organisation"],
"edit": ["organisation"],
"delete": ["organisation"],
"view": {
"requires": "read"
}
},
"Schema": {
"create": ["organisation"],
"edit": ["organisation"],
"delete": ["organisation"],
"view": {
"requires": "read"
}
},
"TransformationProject": {
"create": ["organisation"],
"edit": ["organisation"],
"delete": ["organisation"],
"view": {
"requires": "read"
}
}
}
},
"orgAdmin": {
"extends": "themeManager",
"label": {
"en": "Superuser",
"de": "Superanwender"
},
"resources": {
"User": {
"create": true,
"delete": ["organisation", "suborganisations"],
"disable": ["organisation", "suborganisations"],
"accessDisabled": true,
"accessNotActivated": true
},
"Organisation": {
"create": ["organisation", "suborganisations"],
"edit": ["organisation", "suborganisations"],
"delete": ["organisation", "suborganisations"],
"assignRole": ["organisation", "suborganisations"]
},
"Bucket": {
"create": ["suborganisations"],
"read": ["suborganisations"],
"edit": ["suborganisations"],
"delete": ["suborganisations"]
},
"Theme": {
"create": ["suborganisations"],
"edit": ["suborganisations"],
"delete": ["suborganisations"]
},
"Schema": {
"create": ["suborganisations"],
"edit": ["suborganisations"],
"delete": ["suborganisations"]
},
"TransformationProject": {
"create": ["suborganisations"],
"read": ["suborganisations"],
"edit": ["suborganisations"],
"delete": ["suborganisations"]
}
},
"application": {
"viewSystemInfo": true
}
}
}