Authentifizierungsfehlermeldungen
Endpunkte, die Elemente zurückgeben
Ist bei Endpunkten, die Elemente zurückgeben, eine bestimmte Ressource nicht vorhanden, gibt die Cloud-API eine NotFoundException mit einer Benutzermeldung aus, die ähnlich ist wie „Keine Ressource unter Pfad ... gefunden". Wenn eine bestimmte Ressource zwar vorhanden ist, der Benutzer jedoch nicht über einen ausreichenden Ressourcenzugriff verfügt, gibt die Cloud-API dieselbe Ausnahme mit derselben Benutzernachricht aus. Dieser Ansatz gilt als sicherer, da so verhindert wird, dass böswillige Aufrufer das Vorhandensein von Daten überprüfen können, auf die sie keinen Zugriff haben.
Beispiel: Angenommen,ein Benutzer führt GET /activities/xc:20 aus. Nehmen wir außerdem an, dass die Aktivität xc:20 zwar vorhanden ist, der Benutzer jedoch nicht über einen ausreichenden Ressourcenzugriff verfügt, so wird der folgende Fehler zurückgegeben:
"status": 404,
"errorCode": "gw.api.rest.exceptions.NotFoundException",
"userMessage": "No resource was found at path /activities/xc:20"
Endpunkte, die Sammlungen zurückgeben
Für Endpunkte, die Sammlungen zurückgeben, gibt die Cloud-API alle Ressourcen zurück, die den Kriterien entsprechen und für die der Benutzer über den ausreichenden Ressourcenzugriff verfügt. Wenn eine Ressource vorhanden ist, der Benutzer jedoch nicht über einen ausreichenden Ressourcenzugang verfügt, wird sie von der Cloud-API nicht in den Ergebnissen berücksichtigt. Dieser Ansatz gilt als sicherer, da so verhindert wird, dass böswillige Aufrufer das Vorhandensein von Daten überprüfen können, auf die sie keinen Zugriff haben.
Beispiel: Angenommen, ein Benutzer führt GET /activities aus. Nehmen wir außerdem an, dass es drei Aktivitäten in der Datenbank gibt: xc:10, xc:20 und xc:30. Der Benutzer hat einen ausreichenden Ressourcenzugriff, um sich xc:10 und xc:30 anzuzeigen zu lassen, jedoch nicht xc:20. Der Aufruf gibt folgende Informationen aus:
{
"count": 2
"data": [
{
"attributes": {
"id": "xc:10",
... },
...
},
{
"attributes": {
"id": "xc:30",
... },
...
}
"links": { ... }
}