Résultats de recherche :

×

Guide étape par étape pour configurer l'authentification API REST sur Confluence

Confluence fournit des API REST pour effectuer un certain nombre d'opérations telles que Créer une page, Supprimer une page, Ajouter un commentaire, Créer un espace, etc. Cependant, il ne prend en charge que deux méthodes d'authentification pour les API REST :

  1. L'authentification de base
  2. Utiliser Confluence comme fournisseur OAuth 1.0

Le plugin d'authentification API REST pour Confluence vous permet d'utiliser n'importe quel fournisseur OAuth 2.0 tiers/connexion OpenID pour authentifier les API REST.

 

Avantages de l'utilisation du module complémentaire d'authentification de l'API REST :

  1. Sécurisé: Cette méthode est plus sécurisée que l'authentification de base, car les informations d'identification de l'utilisateur ne sont pas transmises à chaque requête API. Le module complémentaire nécessite uniquement un jeton d'accès généré par le fournisseur OAuth 2.0 tiers/OpenID Connect.
  2. Flexible:  Il vous permet d'utiliser n'importe quel fournisseur OAuth 2.0/OpenID Connect tiers pour l'authentification et pas seulement Confluence.
  3. Protection globale: Le plugin peut également bloquer les demandes d'authentification de base de sorte que personne sans jeton d'accès valide ne puisse utiliser une API REST.
  4. Compatible SSO: Si vous utilisez l'authentification unique pour Confluence, vous pouvez configurer votre fournisseur d'identité pour qu'il fournisse également l'authentification pour les API REST.

 

Le flux d'authentification de l'API REST implique ces deux étapes simples :

  1. Demander un jeton d'accès au fournisseur OAuth 2.0/OIDC
  2. Appelez l'API REST Confluence à l'aide de ce jeton d'accès

Étapes pour configurer l'authentification OAuth 2.0/OpenID Connect à l'aide du module complémentaire d'authentification API REST miniOrange pour Confluence :

Remarque: J'ai utilisé le fournisseur miniOrange OAuth comme exemple ici. Le module complémentaire prend en charge tout fournisseur de connexion OAuth 2.0/OpenID personnalisé tel que Azure AD, Keycloak, Okta, Gsuite (applications Google), AWS Cognito, Github, Gitlab, etc.

Étape 1 : Configurez le flux OAuth entre votre application client et le fournisseur OAuth 2.0/OpenID Connect :

    1. Application client: Il s'agit d'un service ou d'un utilisateur qui souhaite accéder à l'API REST Confluence.
    2. Vous devrez configurer un flux OAuth entre miniOrange et votre application client. L'application client est tout service ou utilisateur appelant l'API REST Confluence.
    3. Il sera utilisé pour autoriser l'utilisateur et obtenir un jeton d'accès.  Notes: Ce flux sera mis en place entre votre application client et le fournisseur miniOrange OAuth. Le module complémentaire d'authentification de l'API REST n'est pas impliqué dans ce processus. Si votre application ne prend pas en charge OAuth 2.0, envoyez-nous simplement un e-mail à info@xecurify.com.
    4. Configurez miniOrange en tant que fournisseur OpenID en utilisant le guide étape par étape sur ce lien : Configurez miniOrange en tant que fournisseur OpenID Connect.
    5. Après avoir configuré miniOrange en tant que fournisseur OAuth, accédez à Applications Gérer les applications. Cliquez sur le lien Modifier à côté de l'application que vous avez créée dans miniOrange.
    6. Copiez le Point de terminaison des informations utilisateur.

Étape 2 : Configurez Introspection Endpoint dans le module complémentaire d'authentification de l'API REST :

    1. Point final de l'introspection: Un point de terminaison d'introspection est un point de terminaison du fournisseur OAuth/OpenID qui peut être appelé à l'aide d'un jeton d'accès ainsi que le renvoie le nom d'utilisateur en réponse.
    2. Sélectionnez Fournisseur OAuth personnalisé dans le Fournisseur OAuth Onglet Paramètres
    3. Entrer le Point de terminaison des informations utilisateur copié à l’étape 1 dans le champ du point de terminaison d’Introspection. Cela ressemble à ceci.
      https://login.xecurify.com/moas/rest/oauth/getuserinfo
    4. Le point de terminaison des informations utilisateur de miniOrange renvoie une réponse comme celle-ci :
      { "sub": "demouser", "firstname": "Demo", "email": "demo@example.com", "username": "demouser", "lastname": "User" }
    5. Attribut de nom d'utilisateur: Cette clé dans la réponse du point de terminaison d'introspection indique au plugin quel utilisateur effectue l'appel d'API.
    6. Dans la réponse ci-dessus, Nom d'utilisateur L'attribut contient le nom d'utilisateur Confluence de la personne effectuant l'appel API. Par conséquent, le nom d'utilisateur est saisi comme attribut de nom d'utilisateur. Ainsi, le plugin saura que l'utilisateur Confluence « démouser » effectue un appel API.

Étape 3 : Récupérer le jeton d'accès auprès du fournisseur miniOrange OAuth :

    1. Lancez le flux OAuth avec miniOrange. Ce flux OAuth ressemble à ceci.

2. A la fin de ce flux, un jeton d'accès sera renvoyé à l'URI de redirection de vos applications configuré dans miniOrange.

3. Un exemple de jeton d'accès du fournisseur miniOrange OAuth ressemble à ceci.

  A834c0606ba71336423013699db8e971

Étape 4 : Utilisez l'API REST Confluence à l'aide du jeton d'accès :

    1. Appelez Confluence n’importe quelle API REST. Incluez le jeton d’accès dans l’en-tête Authorization. Voici un exemple de création d'API Page.

Demande:

     curl \ -X POST \ -H "Autorisation : Porteur " \ -H "Type de contenu : application/json" \ --data {voir ci-dessous} \ http://localhost:8090/confluence/rest/api/content/|phython-mjson.tool \

 

Des données d'entrée:

     { "type": "page", "title": "nouvelle page", "space": { "key": "TST" }, "body": { "storage": { "value": C'est une nouvelle page ", "représentation": "stockage" } } }

2. Le module complémentaire validera le jeton d'accès.
3. Le problème sera créé si le jeton d'accès n'est pas valide.
4. Si le jeton est invalide ou manquant, l'appel renverra une réponse 401 non autorisée.

Voici l'organigramme de l'authentification API REST à l'aide du plugin miniOrange.

Bonjour!

Besoin d'aide? Nous sommes ici !

Support
Contacter l'assistance miniOrange
succès

Merci pour votre demande.

Si vous n'avez pas de nouvelles de nous dans les 24 heures, n'hésitez pas à envoyer un e-mail de suivi à info@xecurify.com