Intégrer Atlassian Confluence Server à Google SecOps
Ce document explique comment intégrer Atlassian Confluence Server à Google Security Operations (Google SecOps).
Version de l'intégration : 3.0
Prérequis
Pour vous authentifier auprès de Confluence Server, choisissez l'une des options suivantes :
- Nom d'utilisateur et mot de passe d'un compte dédié.
- Jeton d'accès personnel (PAT).
Si les deux options d'authentification sont fournies pour l'intégration, le jeton d'accès personnel est prioritaire sur le nom d'utilisateur et le mot de passe.
L'authentification basée sur le nom d'utilisateur et le mot de passe nécessite la création d'un compte dédié qui sera utilisé pour l'intégration.
L'authentification basée sur le jeton d'accès nécessite la configuration des autorisations du compte. Une fois créé, le nouveau jeton d'accès personnel correspond au niveau d'autorisation actuel du compte.
Pour créer un jeton, procédez comme suit :
- Dans Confluence, accédez à Compte > Paramètres du compte > Jetons d'accès personnel.
- Sélectionnez Créer un jeton.
- Nommez le jeton que vous créez.
- (Facultatif) Pour plus de sécurité, vous pouvez configurer votre jeton pour qu'il expire automatiquement après un certain nombre de jours.
- Cliquez sur Créer.
Paramètres d'intégration
L'intégration nécessite les paramètres suivants :
Nom du paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Racine de l'API | Chaîne | https://ip_address | Vrai | Spécifiez la racine de l'API Confluence Server à laquelle vous souhaitez vous connecter. |
Nom d'utilisateur | Chaîne | N/A | Faux | Spécifiez un nom d'utilisateur à utiliser pour la connexion. L'intégration est compatible avec l'authentification par nom d'utilisateur et mot de passe, ou par jeton d'accès personnel. |
Mot de passe | Mot de passe | N/A | Faux | Spécifiez un mot de passe à utiliser pour la connexion. L'intégration est compatible avec l'authentification par nom d'utilisateur et mot de passe, ou par jeton d'accès personnel. |
Jeton d'accès personnel | Mot de passe | N/A | Faux | Spécifiez un jeton à utiliser pour la connexion. L'intégration est compatible avec l'authentification par nom d'utilisateur et mot de passe, ou par jeton d'accès personnel. |
Vérifier le protocole SSL | Case à cocher | Case cochée | Faux | Si cette option est activée, le certificat configuré pour la racine de l'API est validé. |
Pour obtenir des instructions sur la configuration d'une intégration dans Google SecOps, consultez Configurer des intégrations.
Vous pourrez apporter des modifications ultérieurement, si nécessaire. Une fois que vous avez configuré une instance d'intégration, vous pouvez l'utiliser dans des playbooks. Pour savoir comment configurer et prendre en charge plusieurs instances, consultez Prise en charge de plusieurs instances.
Actions
Pour en savoir plus sur les actions, consultez Répondre aux actions en attente depuis Votre bureau et Effectuer une action manuelle.
Ping
Tester la connectivité
Paramètres
N/A
Date d'exécution
L'action n'est pas en cours d'exécution sur les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
is_success | Vrai/Faux | is_success:False |
Si l'action aboutit (une réponse JSON est renvoyée et la réponse du serveur est "200"), is_success
doit être défini sur True
. Dans le cas contraire, False
.
Mur des cas
Type de résultat | Valeur/Description | Type (entité/général) |
---|---|---|
Message de sortie* | L'action ne doit pas échouer ni arrêter l'exécution d'un playbook :
L'action doit échouer et arrêter l'exécution d'un playbook :
|
Général |
Répertorier les pages
Lister les pages disponibles dans l'instance Atlassian Confluence Server en fonction des critères fournis.
Paramètres
Nom du paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Clé de filtre | LDD | Sélectionnez une option Valeurs possibles LDD :
|
Faux | Spécifiez la clé à utiliser pour filtrer les pages. |
Logique de filtrage | LDD | Non spécifié Valeurs possibles LDD :
|
Faux | Spécifiez la logique de filtrage à appliquer. La logique de filtrage fonctionne en fonction de la valeur fournie dans le paramètre Filter Key . |
Valeur du filtre | Chaîne | N/A | Faux | Spécifiez la valeur à utiliser dans le filtre. Si Equal est sélectionné, l'action tente de trouver la correspondance exacte parmi les résultats. Si Contains est sélectionné, l'action tente de trouver les résultats contenant cette sous-chaîne. Si aucune valeur n'est fournie pour ce paramètre, le filtre ne sera pas appliqué. La logique de filtrage fonctionne en fonction de la valeur fournie dans le paramètre Filter Key . |
Nombre maximal d'enregistrements à renvoyer | Int | 50 | Faux | Indiquez le nombre d'enregistrements à renvoyer. Si aucune valeur n'est fournie, l'action renvoie 50 enregistrements. |
Date d'exécution
L'action n'est pas en cours d'exécution sur les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
is_success | Vrai/Faux | is_success:False |
Si l'action s'exécute correctement (aucune erreur n'est renvoyée et la réponse du serveur est 200 OK), is_success
doit être défini sur True
.
Résultat JSON
{
"results": [
{
"id": "PAGE_ID",
"type": "page",
"status": "current",
"title": "Tell people what you think in a comment (step 8 of 9)",
"space": {
"id": 131073,
"key": "ds",
"name": "Demonstration Space",
"type": "global",
"_links": {
"webui": "/display/ds",
"self": "http://192.0.2.45:8090/rest/api/space/ds"
},
"_expandable": {
"metadata": "",
"icon": "",
"description": "",
"retentionPolicy": "",
"homepage": "/rest/api/content/PAGE_ID"
}
},
"extensions": {
"position": 7
},
"_links": {
"webui": "/pages/viewpage.action?pageId=PAGE_ID",
"edit": "/pages/resumedraft.action?draftId=DRAFT_ID",
"tinyui": "/x/AYAB",
"self": "http://192.0.2.45:8090/rest/api/content/PAGE_ID"
},
"_expandable": {
"container": "/rest/api/space/ds",
"metadata": "",
"operations": "",
"children": "/rest/api/content/PAGE_ID/child",
"restrictions": "/rest/api/content/PAGE_ID/restriction/byOperation",
"history": "/rest/api/content/PAGE_ID/history",
"ancestors": "",
"body": "",
"version": "",
"descendants": "/rest/api/content/PAGE_ID/descendant"
}
},
...
],
"start": 0,
"limit": 5,
"size": 5,
"_links": {
"self": "http://192.0.2.45:8090/rest/api/content?expand=space",
"next": "/rest/api/content?expand=space&limit=5&start=5",
"base": "http://192.0.2.45:8090",
"context": ""
}
}
Mur des cas
Type de résultat | Valeur/Description | Type (entité/général) |
---|---|---|
Message de sortie* | L'action ne doit pas échouer ni arrêter l'exécution d'un playbook :
L'action doit échouer et arrêter l'exécution d'un playbook :
Filter Key .
|
Général |
Tableau du mur des cas | Nom : Pages Confluence disponibles Colonnes :
|
Général |
Obtenir une page par ID
Obtenez la page du serveur Atlassian Confluence par ID.
Paramètres
Nom du paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
ID de page | Chaîne | N/A | Vrai | Spécifiez l'ID de la page à renvoyer. |
Développer | CSV | body.storage |
Faux | Spécifiez le paramètre "expand" pour renvoyer des informations supplémentaires sur la page. Le paramètre accepte plusieurs valeurs sous forme de liste d'éléments séparés par une virgule. Par défaut, le contenu de la page est récupéré avec body.storage . |
Date d'exécution
L'action n'est pas en cours d'exécution sur les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
is_success | Vrai/Faux | is_success:False |
Si l'action s'exécute correctement (la page est renvoyée et la réponse du serveur est 200 OK), is_success
doit être défini sur True
.
Résultat JSON
{
"id": "PAGE_ID",
"type": "page",
"status": "current",
"title": "title",
"body": {
"storage": {
"value": "<p>test page</p><p>11</p><p>aa</p><p>aa</p><p>aa</p><p><br /></p><p><br /></p>",
"representation": "storage",
"_expandable": {
"content": "/rest/api/content/PAGE_ID"
}
},
"_expandable": {
"editor": "",
"view": "",
"export_view": "",
"styled_view": "",
"anonymous_export_view": ""
}
},
"extensions": {
"position": "none"
},
"_links": {
"webui": "/display/SIEM/111",
"edit": "/pages/resumedraft.action?draftId=PAGE_ID&draftShareId=cf8b3a21-8e36-4a83-a696-51fcb4428d1c",
"tinyui": "/x/TIAB",
"collection": "/rest/api/content",
"base": "http://192.0.2.45:8090",
"context": "",
"self": "http://192.0.2.45:8090/rest/api/content/PAGE_ID"
},
"_expandable": {
"container": "/rest/api/space/SIEM",
"metadata": "",
"operations": "",
"children": "/rest/api/content/PAGE_ID/child",
"restrictions": "/rest/api/content/PAGE_ID/restriction/byOperation",
"history": "/rest/api/content/PAGE_ID/history",
"ancestors": "",
"version": "",
"descendants": "/rest/api/content/PAGE_ID/descendant",
"space": "/rest/api/space/SIEM"
}
}
Mur des cas
Type de résultat | Valeur/Description | Type (entité/général) |
---|---|---|
Message de sortie* | L'action ne doit pas échouer ni arrêter l'exécution d'un playbook :
L'action doit échouer et arrêter l'exécution d'un playbook :
|
Général |
Obtenir les pages enfants
Obtenez les pages enfants de la page Atlassian Confluence Server.
Paramètres
Nom du paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
ID de page | Chaîne | N/A | Vrai | Spécifiez l'ID de la page à renvoyer. |
Nombre maximal d'enregistrements à renvoyer | Int | 10 | Vrai | Spécifiez la limite de pages enfants à renvoyer. |
Date d'exécution
L'action n'est pas en cours d'exécution sur les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
is_success | Vrai/Faux | is_success:False |
Si l'action s'exécute correctement (la page est renvoyée et la réponse du serveur est 200 OK), is_success
doit être défini sur True
.
Résultat JSON
{
"results": [
{
"id": "PAGE_ID",
"type": "page",
"status": "current",
"title": "test child page!",
"extensions": {
"position": "none"
},
"_links": {
"webui": "/pages/viewpage.action?pageId=PAGE_ID",
"edit": "/pages/resumedraft.action?draftId=PAGE_ID&draftShareId=799fd068-5053-4889-9120-c1a3c970fdbd",
"tinyui": "/x/T4AB",
"self": "http://192.0.2.45:8090/rest/api/content/PAGE_ID"
},
"_expandable": {
"container": "/rest/api/space/SIEM",
"metadata": "",
"operations": "",
"children": "/rest/api/content/PAGE_ID/child",
"restrictions": "/rest/api/content/PAGE_ID/restriction/byOperation",
"history": "/rest/api/content/PAGE_ID/history",
"ancestors": "",
"body": "",
"version": "",
"descendants": "/rest/api/content/PAGE_ID/descendant",
"space": "/rest/api/space/SIEM"
}
}
],
"start": 0,
"limit": 1,
"size": 1,
"_links": {
"self": "http://192.0.2.45:8090/rest/api/content/PAGE_ID/child/page",
"base": "http://192.0.2.45:8090",
"context": ""
}
}
Mur des cas
Type de résultat | Valeur/Description | Type (entité/général) |
---|---|---|
Message de sortie* | L'action ne doit pas échouer ni arrêter l'exécution d'un playbook : Si des données sont disponibles (is_success = true) : print "Successfully found child pages for the provided Atlassian Confluence Server page id: <page_id>". Si aucune donnée n'est disponible (is_success=false) : print "No child pages were found for the provided Atlassian Confluence Server page id <page_id>" L'action doit échouer et arrêter l'exécution d'un playbook :
|
Général |
Obtenir les commentaires sur une page
Obtenez les commentaires pour la page Atlassian Confluence Server.
Paramètres
Nom du paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
ID de page | Chaîne | N/A | Vrai | Spécifiez l'ID de la page à renvoyer. |
Développer | CSV | body.storage |
Faux | Spécifiez le paramètre "expand" pour renvoyer des informations supplémentaires sur la page. Le paramètre accepte plusieurs valeurs sous forme de liste d'éléments séparés par une virgule. Par défaut, le contenu de la page est récupéré avec body.storage . |
Nombre maximal d'enregistrements à renvoyer | Int | 10 | Vrai | Spécifiez la limite de pages enfants à renvoyer. |
Date d'exécution
L'action n'est pas en cours d'exécution sur les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
is_success | Vrai/Faux | is_success:False |
Si l'action s'exécute correctement (les commentaires sont renvoyés et la réponse du serveur est 200 OK), is_success
doit être défini sur True
.
Résultat JSON
{
"results": [
{
"id": "ID",
"type": "comment",
"status": "current",
"title": "Re: 111",
"body": {
"storage": {
"value": "<p>comment1</p>",
"representation": "storage",
"_expandable": {
"content": "/rest/api/content/ID"
}
},
"_expandable": {
"editor": "",
"view": "",
"export_view": "",
"styled_view": "",
"anonymous_export_view": ""
}
},
"extensions": {
"location": "footer",
"_expandable": {
"resolution": ""
}
},
"_links": {
"webui": "/display/SIEM/111?focusedCommentId=98387#comment-ID",
"self": "http://203.0.113.1:8090/rest/api/content/ID"
},
"_expandable": {
"container": "/rest/api/content/ID",
"metadata": "",
"operations": "",
"children": "/rest/api/content/ID/child",
"restrictions": "/rest/api/content/ID/restriction/byOperation",
"history": "/rest/api/content/ID/history",
"ancestors": "",
"version": "",
"descendants": "/rest/api/content/ID/descendant",
"space": "/rest/api/space/SIEM"
}
},
...
],
"start": 0,
"limit": 10,
"size": 2,
"_links": {
"self": "http://203.0.113.1:8090/rest/api/content/ID/child/comment?expand=body.storage",
"base": "http://203.0.113.1:8090",
"context": ""
}
}
Mur des cas
Type de résultat | Valeur/Description | Type (entité/général) |
---|---|---|
Message de sortie* | L'action ne doit pas échouer ni arrêter l'exécution d'un playbook :
L'action doit échouer et arrêter l'exécution d'un playbook :
|
Général |
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.