... |
... |
@@ -18,15
+18,40 @@ |
18 |
18 |
|
19 |
19 |
== Plugin-Konfiguration == |
20 |
20 |
|
21 |
|
-Am Plugin selber kann konfiguriert werden, ob das Deploy-Servlet durch ein Passwort geschützt werden soll. Dazu gibt es die eine Plugin-Eigenschaft //token//, diese hat das folgende Format |
|
21 |
+Am Plugin selber kann konfiguriert werden, ob das Deploy-Servlet durch ein Passwort geschützt werden soll. Dieses Passwort muss dann im Klartext beim HTTP-POST-Request mit angegeben werden. |
22 |
22 |
|
23 |
|
-> hash_method:hashed_value |
|
23 |
+Zur Konfiguration des Passworts gibt es die eine Plugin-Eigenschaft //token//, diese hat das folgende Format |
24 |
24 |
|
|
25 |
+{{code language="none"}} |
|
26 |
+hash_method:hashed_value |
|
27 |
+{{/code}} |
|
28 |
+ |
25 |
25 |
Folgende Hash-Methoden stehen zur Verfügung: |
26 |
26 |
|
27 |
27 |
; plain |
28 |
|
-: asd |
|
32 |
+: Identitätsfunktion, das Passwort im Klartext angegeben. |
|
33 |
+; sha256 |
|
34 |
+: SHA-256-Algorithmus. |
|
35 |
+; sha384 |
|
36 |
+: SHA-384-Algorithmus. |
|
37 |
+; sha512 |
|
38 |
+: SHA-512-Algorithmus. |
29 |
29 |
|
|
40 |
+Um das Passwort im Klartext beispielsweise auf //admin// festzulegen, wird der folgende Wert für die Plugin-Eigenschaft //token// eingegeben: |
|
41 |
+ |
|
42 |
+{{code language="none"}} |
|
43 |
+plain:admin |
|
44 |
+{{/code}} |
|
45 |
+ |
|
46 |
+Um das Passwort mit SHA-256 beispielsweise auf //admin// festzulegen, wird der folgende Wert für die Plugin-Eigenschaft //token// eingegeben: |
|
47 |
+ |
|
48 |
+{{code language="none"}} |
|
49 |
+sha256:S+32GI3fWXwHHulUMtWmjpQ15EqMvgVYguuO9SKxfNw+ckAGQljP6tKlf1EITnU7 |
|
50 |
+{{/code}} |
|
51 |
+ |
|
52 |
+Der Hash ist gesalzen. Ein gültiger Hash für ein bestimmtes Passwort kann mit dem //create-token//-Servlet erzeugt werden, siehe unten. |
|
53 |
+ |
|
54 |
+ |
30 |
30 |
== Deploy-Servlet == |
31 |
31 |
|
32 |
32 |
Im Folgenden wird der Aufbau des HTTP-Requests beschrieben, um ein Plugin zu installieren, zu aktualisieren oder zu löschen. |
... |
... |
@@ -33,7
+33,9 @@ |
33 |
33 |
|
34 |
34 |
Es muss immer ein HTTP-Post-Request verwendet werden und [[sich an folgende URL richten>>doc:Formcycle.PluginDevelopment.Types.IPluginServletAction]] (Namen des FORMCYCLE-Servers entsprechend anpassen): |
35 |
35 |
|
36 |
|
-> POST http://localhost:8080/formcycle/plugin?name=deploy-plugin&client-id=154 HTTP/1.1 |
|
61 |
+{{code language="none"}} |
|
62 |
+POST http://localhost:8080/formcycle/plugin?name=deploy-plugin&client-id=154 HTTP/1.1 |
|
63 |
+{{/code}} |
37 |
37 |
|
38 |
38 |
Die //client-id// muss nicht angegeben werden, wenn das Plugin als System-Plugin installiert ist. |
39 |
39 |
|
... |
... |
@@ -314,5
+314,37 @@ |
314 |
314 |
{{/code}} |
315 |
315 |
|
316 |
316 |
|
|
344 |
+== Create-Token-Servlet == |
|
345 |
+ |
|
346 |
+Mit diesem Servlet kann ein Hash für ein bestimmtes Klartextpasswort erzeugt werden, welcher dann in der Plugin-Eigenschaft //token// hinterlegt werden kann. Es muss hierbei ein HTTP-GET-Request verwendet werden (Pfad auf den FORMCYCLE-Servet und die Mandant-ID entsprechend ersetzen): |
|
347 |
+ |
|
348 |
+{{code language="none"}} |
|
349 |
+http://localhost:8080/formcycle/plugin?client-id=1&name=create-token&token=<PASSWORT>&method=<METHOD> |
|
350 |
+{{/code}} |
|
351 |
+ |
|
352 |
+; token |
|
353 |
+: Der Klartext des Passwort, zu dem ein Hash ermittelt werden soll. |
|
354 |
+; method |
|
355 |
+: Methode zum Berechnen des Hashes. Erlaubte Werte sind //plain//, //sha256//, //sha384// und //sha512//. Optional, Standardwert ist //sha256//. |
|
356 |
+ |
|
357 |
+Als Antwort wird ein JSON zurückgeliefert, welches das gleiche Format wie die Antwort des Deploy-Plugins hat. Beispiel für eine Antwort: |
|
358 |
+ |
|
359 |
+{{code language="json"}} |
|
360 |
+{ |
|
361 |
+ "success": true, |
|
362 |
+ "requestParameters": { |
|
363 |
+ "name": ["create-token"], |
|
364 |
+ "client-id": ["1"], |
|
365 |
+ "token": ["admin"] |
|
366 |
+ }, |
|
367 |
+ "details": { |
|
368 |
+ "method": "sha256", |
|
369 |
+ "token": "sha256:S+32GI3fWXwHHulUMtWmjpQ15EqMvgVYguuO9SKxfNw+ckAGQljP6tKlf1EITnU7" |
|
370 |
+ }, |
|
371 |
+ "message": "Hash token created successfully", |
|
372 |
+ "statusCode": 200 |
|
373 |
+} |
|
374 |
+{{/code}} |
|
375 |
+ |
317 |
317 |
== Beispiel für Maven == |
318 |
318 |
|