User Tools

Site Tools


module:rest-getting-started

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
module:rest-getting-started [2023/11/28 15:02]
lars
module:rest-getting-started [2023/12/04 11:35] (current)
alexandra [C) Application Keys]
Line 12: Line 12:
 zum Beispiel Postman: https://​www.postman.com. zum Beispiel Postman: https://​www.postman.com.
  
-Für eine Benutzung der Schnittstelle müssen Sie sich Authentifizieren,​ siehe +===== Authentifizierung ===== 
 + 
 +Für eine Benutzung der Schnittstelle müssen Sie sich Authentifizieren,​ siehe
  
 <​file>​ <​file>​
Line 21: Line 23:
  
 {{:​module:​bearer.png?​800|}} {{:​module:​bearer.png?​800|}}
 +
 +Damit ist ein Nutzer in Projectile durch die Anmeldung identifiziert. ​
 +
 +
 +===== Zugriff auf REST-Schnittstelle =====
 +
 +Jetzt muss der Nutzer aber auch Rechte haben, die REST-Schnittstelle zu benutzen.
 +
 +Dies ist hier beschrieben: ​
 +
 +<​file>​
 +http://​YOUR_SERVER/​projectile/​wiki/​rest/​credential
 +</​file>​
 +
 +Sie können diese Rechte auf verschiedene Weise vergeben:
 +
 +==== A) Entwicklungsserver ohne Rechteprüfung ====
 +
 +Sie deaktivieren die Rechteprüfung komplett. Dies ist zum Beispiel für
 +ein Entwicklungssystem akzeptabel. Dazu müssen Sie in der Datei config/​bsm.properties
 +den Eintrag
 +
 +<​file>​
 +bsm.rest.needCredential=false
 +</​file>​
 +
 +einfügen und Projectile neu starten.
 +
 +==== B) Spezieller REST-User ====
 +
 +Sie geben ihrem angemeldeten Nutzer die Rechte. Dies wird in der Regel für REST-Zugriff
 +benutzt, der eine Schnittstelle zu einem anderen System bildet. Der Nutzer, der hierfür
 +verwendet wird, ist in der Regel kein normaler Projectile-Nutzer,​ der auch eine konkrete
 +Person repräsentiert,​ sondern ein reiner REST-Nutzer.
 +
 +Wenn Sie so einen Nutzer haben, können Sie diesen in der Projectile-Oberfläche ​
 +den ACL-Eintrag unter:
 +
 +<​file>​
 +Administration > Rechtesystem > ACL > credentials > RESTUser
 +</​file>​
 +
 +zuweisen. Der Nutzer sollte dort als Owner eingetragen werden oder Mitglied einer
 +REST-Benutzergruppe sein, die Sie unter Relatives oder Friends dem ACL-Eintrag zuweisen.
 +
 +Sollte es diesen ACL-Eintrag noch nicht geben, dann können Sie diesen im Script-Interpreter
 +von Projectile mit dem Script **CreateRESTUserCredential.java** anlegen. Am besten machen
 +Sie das auch gleich mit dem REST-User, dann ist dieser automatisch Owner.
 +
 +==== C) Application Keys ====
 +
 +Sie verwenden Application-Keys. Dies wird in der Regel benutzt, wenn sich alle
 +Mitarbeiter via REST in Projectile anmelden können sollen, dies aber über eine App oder ähnliches
 +geschieht. Dann muss ein Application-Key generiert und in der App hinterlegt werden.
 +
 +Sie können einen neuen Application-Key unter Administration > System > REST > Create REST application
 +anlegen. Geben Sie Ihrer App eine frei gewählte ID und speichern Sie diese. Dann können Sie
 +unter Aktionen mit "​GenerateApplicationKey"​ einen neuen Key erzeugen.
 +
 +Diesen kopieren Sie bitte und übermitteln diesen als Parameter XXXXXXXXXXXX - wie folgt - bei jedem Request:
 +
 +<​file>​
 +x-application-key:​ XXXXXXXXXXXX
 +</​file>​
 +
 +{{:​module:​application-keys.png?​800|}}
 +
 +===== Zugriff auf die Daten =====
 +
 +Jetzt können Sie auf die Daten Ihrer Projectile-Instanz zugreifen.
 +
 +Laden Sie zum Beispiel eine Liste der Projekte mit einem GET-Request auf
 +diese URL.
 +
 +<​file>​
 +https://​YOUR_SERVER/​projectile/​rest/​api/​json/​0/​projects
 +</​file>​
 +
 +Beachten Sie, dass der Request die oben beschriebenen Header für Autorization
 +und application-key enthält.
 +
 +Alle zugreifbaren Daten finden Sie auch in der Referenzdokumentation unter "​Modules & Entities"​.
 +
 +<​file>​
 +https://​YOUR_SERVER/​projectile/​wiki/​rest/​index
 +</​file>​
 +
 +
 +
 +
 +
  
  
module/rest-getting-started.1701180138.txt.gz · Last modified: 2023/11/28 15:02 by lars