Changes for page DigDash API REST
Last modified by Aurelie Bertrand on 2025/05/15 16:29
From version 79.1
edited by Aurelie Bertrand
on 2025/04/29 14:06
on 2025/04/29 14:06
Change comment:
There is no comment for this version
To version 93.1
edited by Aurelie Bertrand
on 2025/04/29 15:37
on 2025/04/29 15:37
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 1 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -68,9 +68,14 @@ 68 68 1. Entrez votre nom d'utilisateur et mot de passe Digdash. 69 69 1. Cliquez sur le bouton **Authorize** puis, une fois l'authentification effectuée, sur **Close**. 70 70 ➡ Le cadenas est à présent fermé, signifiant que vous êtes autorisé. 71 +Vous pouvez à présent créer un jeton JWT ou un clé API pour vous connecter. 71 71 72 -== Créerun jetondesécurité==73 +== S'authentifier via BearerAuth == 73 73 75 +Une fois connecté via BasicAuth, vous pouvez générer un jeton de sécurité pour vous identifier via la méthode BearerAuth. 76 + 77 +=== Créer un jeton de sécurité === 78 + 74 74 Nous allons créer ici un jeton de sécurité Json Web Token (JWT) : 75 75 76 76 1. Allez dans la section **Authentication**. ... ... @@ -94,8 +94,10 @@ 94 94 ➡ La réponse s'affiche dans la section **Server response** en-dessous. 95 95 [[image:DigDash_API_token_creation_response_FR.png||alt="Réponse serveur"]] 96 96 1. Copiez le jeton JWT. 102 + 97 97 98 -=== Signature du jeton de sécurité === 104 +(% class="wikigeneratedid" id="HSignaturedujetondesE9curitE9" %) 105 +**Signature du jeton de sécurité** 99 99 100 100 Une clé privée utilisée pour signer le JWT est générée par défaut. Cette clé est temporaire et est régénérée à chaque redémarrage du serveur. 101 101 ... ... @@ -118,8 +118,22 @@ 118 118 openssl rsa -in /path/to/privatekey.pem -pubout -out /path/to/publickey.crt 119 119 {{/code}} 120 120 121 -== Créeruneclé API==128 +=== S'authentifier === 122 122 130 +Une fois le jeton de sécurité généré, vous pouvez vous authentifier avec cette méthode : 131 + 132 +1. Cliquez sur le bouton **Authorize**. 133 +1. Dans la section **BasicAuth**, déconnectez-vous en cliquant sur le bouton **Logout**. 134 +1. Dans la section **BearerAuth**, collez le jeton JWT dans le champ **Value**. 135 +1. Cliquez sur **Authorize**. 136 + 137 +== S'authentifier via ApiKeyAuth == 138 + 139 + 140 +Une fois connecté via BasicAuth, vous pouvez générer un jeton de sécurité pour vous identifier via la méthode BearerAuth. 141 + 142 +=== Créer une clé API === 143 + 123 123 Nous allons créer ici une clé API : 124 124 125 125 1. Allez dans la section **Authentication**. ... ... @@ -144,14 +144,17 @@ 144 144 [[image:1745928288556-250.png||alt="Réponse serveur"]] 145 145 1. Copiez la clé API. 146 146 147 -== S'authentifier via BearerAuth == 168 +(% class="wikigeneratedid" %) 169 +La clé API est stockée côté serveur dans un fichier csv //apikeys.csv, //situé par défaut dans le répertoire //appdata/EnterpriseServer/ddenterpriseapi/config. //Vous pouvez modifier le répertoire, ou spécifier les répertoires dans le cas de plusieurs domaines, dans le fichier //digdash.properties// en les ajoutant sous la forme suivante //: ddenterprise.api_keys_path=/chemin/vers/fichier.csv.// 170 +La clé est hashée et ne peut donc être récupérée. 148 148 149 -(% class="wikigeneratedid" id="HUnefoislejetondesE9curitE9gE9nE9rE92CvouspouvezvousauthentifieraveccettemE9thode:" %) 150 -(% style="font-size:14px" %)Une fois le jeton de sécurité généré, vous pouvez vous authentifier avec cette méthode : 172 +=== S'authentifier === 151 151 174 +Une fois la clé API générée, vous pouvez vous authentifier avec cette méthode : 175 + 152 152 1. Cliquez sur le bouton **Authorize**. 153 153 1. Dans la section **BasicAuth**, déconnectez-vous en cliquant sur le bouton **Logout**. 154 -1. Dans la section ** BearerAuth**, collez lejetonJWTdans le champ**Value**.178 +1. Dans la section **ApiKeyAuth**, collez la clé API dans le champ Value. 155 155 1. Cliquez sur **Authorize**. 156 156 157 157 = Ressources API disponibles{{id name="ressources"/}} = ... ... @@ -214,10 +214,12 @@ 214 214 |(% style="width:173px" %)id (obligatoire)|(% style="width:608px" %)Spécifiez le nom de l'utilisateur, rôle.. selon l'API à utiliser pour l'opération. 215 215 |(% style="width:173px" %)resolveProfiles|(% style="width:608px" %)Si défini à //true//, si l'utilisateur a un profil, ce sont les informations du profil qui seront affichées. 216 216 Par exemple, si l'utilisateur a des rôles issus d'un profil, ce sont les rôles du profil qui seront affichés et non pas les rôles propres à l'utilisateur. 217 -|(% style="width:173px" %) |(% style="width:608px" %) 218 -|(% style="width:173px" %) |(% style="width:608px" %) 219 -|(% style="width:173px" %) |(% style="width:608px" %) 220 -|(% style="width:173px" %) |(% style="width:608px" %) 241 +|(% colspan="2" style="background-color:grey; text-align:center; width:173px" %)(% style="color:#ffffff" %)**Session management** 242 +|(% style="width:173px" %)users|(% style="width:608px" %) 243 +|(% colspan="2" style="background-color:grey; text-align:center; width:173px" %)(% style="color:#ffffff" %)**Connection management** 244 +|(% style="width:173px" %)itemRole|(% style="width:608px" %) 245 +|(% style="width:173px" %)nameFilter|(% style="width:608px" %) 246 +|(% style="width:173px" %)typeFilter|(% style="width:608px" %) 221 221 |(% colspan="2" style="background-color:grey; text-align:center; width:782px" %)(% style="color:#ffffff" %)**License management** 222 222 |(% style="width:173px" %)pattern|(% style="width:608px" %)Vous pouvez spécifier une expression régulière permettant de filtrer les utilisateurs à récupérer. 223 223 Par exemple, le pattern test.* va récupérer tous les utilisateurs dont le nom commence par test. ... ... @@ -225,10 +225,33 @@ 225 225 = Expiration de l'authentification = 226 226 227 227 (% style="line-height:1.7142857142857142; background-color:#ffffff" %) 228 -(% style="color:#182027; font-family:Arial,sans-serif; font-size:10.5pt; font-style:normal; font-variant:normal; font-weight:400; text-decoration:none; white-space:pre-wrap" %)Lorsque le jeton de sécurité (JWT) expire, vous recevez une réponse (% style="color:#182027; font-family:~"Roboto Mono~",monospace; font-size:10pt; font-style:normal; font-variant:normal; font-weight:400; text-decoration:none; white-space:pre-wrap" %)401:(%%) "Unauthorized". 254 +(% style="color:#182027; font-family:Arial,sans-serif; font-size:10.5pt; font-style:normal; font-variant:normal; font-weight:400; text-decoration:none; white-space:pre-wrap" %)Lorsque le jeton de sécurité (JWT) ou la clé API expire, vous recevez une réponse (% style="color:#182027; font-family:~"Roboto Mono~",monospace; font-size:10pt; font-style:normal; font-variant:normal; font-weight:400; text-decoration:none; white-space:pre-wrap" %)401:(%%) "Unauthorized". 229 229 (% style="color:#182027; font-family:Arial,sans-serif; font-size:10.5pt; font-style:normal; font-variant:normal; font-weight:400; text-decoration:none; white-space:pre-wrap" %)L'en-tête d'autorisation du porteur est toujours présent pour vos demandes, mais le jeton a expiré. Lorsque cela se produit, vous devez vous déconnecter de (%%)BearerAuth** **(% style="color:#182027; font-family:Arial,sans-serif; font-size:10.5pt; font-style:normal; font-variant:normal; font-weight:400; text-decoration:none; white-space:pre-wrap" %)et générer un nouveau jeton d'accès. 230 230 231 231 1. (% style="color:#182027; font-family:Arial,sans-serif; font-size:10.5pt; font-style:normal; font-variant:normal; font-weight:400; text-decoration:none; white-space:pre-wrap" %)Cliquez sur le bouton **Authorize** pour ouvrir la fenêtre **Available authorizations**. 232 -1. Cliquez sur le bouton **Logout** en dessous de** BearerAuth**. 258 +1. Cliquez sur le bouton **Logout** en dessous de** BearerAuth **ou **ApiKeyAuth**. 233 233 1. Cliquez sur** Close** pour **Fermer**. 234 -1. Générez un nouveau jeton d'accès comme décrit dans le paragraphe [[S'authentifier>>doc:||anchor="Auth"]]. 260 +1. Générez un nouveau jeton d'accès ou une nouvelle clé API comme décrit dans le paragraphe [[S'authentifier>>doc:||anchor="Auth"]]. 261 + 262 += Invalider un jeton JWT ou une clé API = 263 + 264 +== Invalider un jeton JWT == 265 + 266 +Pour un jeton JWT, l'invalidation se fait de manière globale seulement en changeant la clé privée utilisée pour signer et la clé publique associée utilisée pour valider les signatures. 267 + 268 +== Invalider une clé API == 269 + 270 +Pour une clé API, l'invalidation se fait de manière individuelle et globale. 271 + 272 +Pour invalider une ou plusieurs clés : 273 + 274 +(% start="1" %) 275 +1. Vous pouvez tout d'abord récupérer la liste des clés API ave leur identifiant en utilisant **GET /api/v1/auth/apikeys**. Vous obtenez la liste sous la forme suivante : 276 +[[image:1745932166616-318.png||alt="Liste clés API"]] 277 + 278 +1. Utilisez ensuite **DELETE /api/v1/auth/apikeys **: entrez l'identifiant de la clé API à invalider ou, dans le cas de plusieurs clés, les identifiants séparés par des virgules. 279 + 280 +Pour invalider toutes les clés API, supprimez toutes les clés comme ci-dessus ou supprimer le fichier csv //apikeys.csv //contenant les clés avec le serveur éteint. 281 + 282 + 283 +
- 1745932166616-318.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.aureliebertranddigdashbiz - Size
-
... ... @@ -1,0 +1,1 @@ 1 +44.5 KB - Content