From f383613cbdfaf35f2431550eb276d134f0ecd6c2 Mon Sep 17 00:00:00 2001 From: William Petit Date: Thu, 16 Nov 2017 16:27:09 +0100 Subject: [PATCH] Ajout supports formation DIIAGE (DEV & RES 3) --- .../Base_Connaissances/TP/Creation_fiche.md | 66 ++++++++++ diiage/Base_Connaissances/img/cycle.svg | 120 ++++++++++++++++++ diiage/Base_Connaissances/notes.md | 5 + diiage/Base_Connaissances/questionnaire.md | 48 +++++++ diiage/Base_Connaissances/slides.md | 50 ++++++++ .../prepa.md | 7 + .../Sécurité_Informatique_Entreprise/qcm.md | 80 ++++++++++++ .../rapport_secu.odt | Bin 0 -> 92866 bytes .../Sécurité_Informatique_Entreprise/tp.md | 21 +++ .../API/img/cycle.png | Bin 0 -> 20684 bytes .../API/img/request.png | Bin 0 -> 24575 bytes .../API/img/response.png | Bin 0 -> 22941 bytes .../API/prepa.md | 8 ++ .../API/qcm.md | 68 ++++++++++ .../API/slides.md | 71 +++++++++++ .../API/tp.md | 41 ++++++ 16 files changed, 585 insertions(+) create mode 100644 diiage/Base_Connaissances/TP/Creation_fiche.md create mode 100644 diiage/Base_Connaissances/img/cycle.svg create mode 100644 diiage/Base_Connaissances/notes.md create mode 100644 diiage/Base_Connaissances/questionnaire.md create mode 100644 diiage/Base_Connaissances/slides.md create mode 100644 diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/prepa.md create mode 100644 diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/qcm.md create mode 100644 diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/rapport_secu.odt create mode 100644 diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/tp.md create mode 100644 diiage/C3-4_Base_de_données_Big_Data_BI/API/img/cycle.png create mode 100644 diiage/C3-4_Base_de_données_Big_Data_BI/API/img/request.png create mode 100644 diiage/C3-4_Base_de_données_Big_Data_BI/API/img/response.png create mode 100644 diiage/C3-4_Base_de_données_Big_Data_BI/API/prepa.md create mode 100644 diiage/C3-4_Base_de_données_Big_Data_BI/API/qcm.md create mode 100644 diiage/C3-4_Base_de_données_Big_Data_BI/API/slides.md create mode 100644 diiage/C3-4_Base_de_données_Big_Data_BI/API/tp.md diff --git a/diiage/Base_Connaissances/TP/Creation_fiche.md b/diiage/Base_Connaissances/TP/Creation_fiche.md new file mode 100644 index 0000000..fa2c630 --- /dev/null +++ b/diiage/Base_Connaissances/TP/Creation_fiche.md @@ -0,0 +1,66 @@ +# Curation de contenu - Travaux pratiques + +## Objectifs + +**Créer de manière collaborative une fiche d'information** (1 à 3 pages) répondant à une problématique. La rédaction de la fiche d'information devra **prendre en compte un public cible** donné. + +La fiche d'information devra comprendre **une bibliographie** des sources d'informations +utilisées pour sa réalisation. Elle devra également **indiquer la fréquence estimée** (et/ou les événements déclencheurs) des mises à jour des informations la constituant. + +La fiche d'information fera ensuite l'objet d'**une présentation devant la classe** par +le groupe de travail. Le groupe devra **argumenter ses choix** de sélection des informations et le plan utilisé pour répondre à la problématique. + +## Temps + +- ~60min de travail préparatoire +- 10-15min de présentation et questions + +## Sujets proposés + +### 1. Les crypto monnaies: quelle adoption du grand public et quels usages internes dans l'entreprise ? + +#### Cible + +- **Profil** Directeur d'entreprise (niveau technique: faible) +- **Contexte** Grand groupe avec beaucoup d'échanges inter succursales. Recherche et développement. + +
+ +### 2. Quelles solutions pour l'hébergement des applications Web pour l'entreprise ? + +#### Cible + +- **Profil** Responsable de la Sécurité des Systèmes d'Information (niveau technique: élevé) +- **Contexte** Entreprise avec applicatifs vieillissants. Manque de moyens pour l'installation et la maintenance des serveurs. + +### 3. Quelle plateforme pour prototyper notre nouveau projet "Toutou 2000", l'application/collier GPS pour le suivi de chiens fugueurs ? + +- **Profil** Technico-commercial (niveau technique: moyen) +- **Contexte** Obligation de résultats sur un délai court. Contraintes financières fortes. + +### 4. Comment former nos salariés aux problématiques de sécurité informatique ? + +- **Profil** Directeur d'entreprise (niveau technique: faible) +- **Contexte** Vague massive d'attaque de type "phishing". Formation continue. Difficulté à bloquer du temps pour les salariés. + +### 5. Quelles solutions pour maintenir dans de bonnes conditions de sécurité nos applications vieillissantes ? + +- **Profil** Client/Directeur de service (niveau technique: moyen) +- **Contexte** Évolution du parc des serveurs. Maintien opérationnel d'applications non maintenue. Sécurité de l'infrastructure. Sauvegarde et restauration. + +
+ +### 6. Optimisation des coûts opérationnels: comment réduire les frais liés au fonctionnement de notre service en ligne ? + +- **Profil** Service financier (niveau technique: faible) +- **Contexte** Afflux important de nouveaux utilisateurs suite à une campagne de communication réussie. Application web 3 tiers classique avec usage important en lecture de la base de données. + +### 7. Sauvegarde des postes clients: comment sauvegarder/restaurer des données sur les postes des salariés ? + +- **Profil** Chef de service RH (niveau technique: faible) +- **Contexte** Perte de données critique des données d'un des postes de salarié. Transparence des opérations pour les utilisateurs. Facilité à restaurer les données d'un instant T en autonomie. + +### 8. Modernisation de la stack de développement: quels nouveaux langages pour quels usages pour nous développeurs Web ? + +- **Profil** Chef de projet (niveau technique: élevé) +- **Contexte** Évolution du socle technique d'une société de développement Web. Travail d'équipe. Nouvelles technologies. diff --git a/diiage/Base_Connaissances/img/cycle.svg b/diiage/Base_Connaissances/img/cycle.svg new file mode 100644 index 0000000..331bcdb --- /dev/null +++ b/diiage/Base_Connaissances/img/cycle.svg @@ -0,0 +1,120 @@ + + + + + + + + + + image/svg+xml + + + + + + + Aggréger + Éditorialiser + Rectifier + + + + + diff --git a/diiage/Base_Connaissances/notes.md b/diiage/Base_Connaissances/notes.md new file mode 100644 index 0000000..7d69827 --- /dev/null +++ b/diiage/Base_Connaissances/notes.md @@ -0,0 +1,5 @@ +# Notes + +- [Curation de contenu](https://fr.wikipedia.org/wiki/Curation_de_contenu) +- [Intelligence collective](https://fr.wikipedia.org/wiki/Intelligence_collective) +- [Gestion des connaissances](https://fr.wikipedia.org/wiki/Gestion_des_connaissances) diff --git a/diiage/Base_Connaissances/questionnaire.md b/diiage/Base_Connaissances/questionnaire.md new file mode 100644 index 0000000..d7545a2 --- /dev/null +++ b/diiage/Base_Connaissances/questionnaire.md @@ -0,0 +1,48 @@ + + +# Curation de contenu: questionnaire + +- **Nom** +- **Prénom** +- **Classe** +- **Date** + +## Consigne + +Pour chaque question, entourer **la ou les bonnes réponses, si il y en a**. + +## Questions + +### A. Dans la phase d'agrégation, quelle est l'opération qui permet de préparer la bibliographie ? + +1. L'indexation des références +2. La mise en forme +3. La synthétisation + +### B. Recouper les sources permet de... + +1. Vérifier la véridicité d'une information +2. S'assurer de l'importance d'une information +3. Multiplier les références + +### C. Identifier le public cible de la base de connaissance permet de... + +1. D'éviter de créer de la surcharge cognitive +2. Économiser du temps lors de la phase d'agrégation +3. Préparer son argumentaire + +### D. Quel(s) outil(s) créé(s) grâce à l'avènement d'Internet à/ont modifié profondément la rédaction de base de connaissances ? + +1. Les wiki +2. Les "pads" collaboratifs +3. Les éditeurs de texte + +### E. L'identification des passerelles permet de... + +1. Faciliter la navigation dans le corpus +2. Guider le lecteur dans sa lecture +3. Suggérer des sujets connexes potentiellement intéressants pour le lecteur diff --git a/diiage/Base_Connaissances/slides.md b/diiage/Base_Connaissances/slides.md new file mode 100644 index 0000000..4d12053 --- /dev/null +++ b/diiage/Base_Connaissances/slides.md @@ -0,0 +1,50 @@ + + + +# Créer et maintenir une base de connaissance + +--- + +> Un informaticien, c'est quelqu'un payé pour savoir chercher sur Stack Overflow/Exchange. +> +> **Auteur inconnu** + +--- + +# Qu'est ce qu'une base de connaissance ? + +--- +# Cycle de vie + +
+ +
+ +--- + +# Agréger + +## Collecter l'information +## Recouper les sources +## Indexer les références + +--- + +# Éditorialiser + +## Définir la cible et les objectifs +## Sélectionner l'information +## Mettre en forme et synthétiser +## Indexer les données + +--- + +# Rectifier + +## Évaluer la validité et la pertinence des informations +## Définir la fréquence de mise à jour et ses événements déclencheurs +## Identifier les sujets connexes et les passerelles + +--- + +# Mise en pratique diff --git a/diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/prepa.md b/diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/prepa.md new file mode 100644 index 0000000..8bc3066 --- /dev/null +++ b/diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/prepa.md @@ -0,0 +1,7 @@ +# DIIAGE Dev: préparation de la session du 17/11/2017 + +## Problématiques + +- Qu'est ce que la sécurité informatique dans l'entreprise ? +- Quels sont les objectifs de la sécurité informatique ? +- Quelles sont les principales failles touchant les applicatifs Web ? Quels sont les risques associés ? diff --git a/diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/qcm.md b/diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/qcm.md new file mode 100644 index 0000000..9288f2d --- /dev/null +++ b/diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/qcm.md @@ -0,0 +1,80 @@ + + +# Sécurité des SI et applications Web: questionnaire + +- **Nom** +- **Prénom** +- **Classe** +- **Date** + +## Consigne + +Pour chaque question, entourer **la ou les bonnes réponses, si il y en a**. + +**Attention**, certaines questions sont volontairement rédigées sous la forme plurielle. Cela n'implique pas forcément qu'il y a plusieurs bonnes réponses. + +## Questions + +### A. Dans le contexte de la sécurité informatique, que représente le concept général de "menace" ? + +1. Une cause potentielle d'incident, qui peut résulter en un dommage au système ou à l'organisation +2. Une faiblesse dans un système informatique permettant à un attaquant de porter atteinte à l'intégrité de ce système +3. Une mauvaise manipulation ou une malveillance entraînant une perte de matériel et/ou de données + +### B. Parmi ces réponses, lesquelles sont des objectifs de la sécurité informatique en entreprise ? + +1. Maintenir l'intégrité des données +2. S'assurer du niveaux d'authentification et d'autorisation +3. Maintenir la disponibilité des services + +### C. Qu'est ce que la modélisation de menace ? + +1. Un processus permettant d'identifier les menaces mettant en péril un système et d'évaluer les risques et les impacts potentiels de celles ci. +2. Un document faisant un état des lieux des vulnérabilités d'une application +3. Un processus de simulation d'attaque organisé pendant un audit de sécurité + +### D. Quel est aujourd'hui le principal vecteur d'attaque sur les systèmes d'informations ? + +1. La méconnaissance humaine +2. Les failles "0-day" +3. La mauvaise sécurisation des environnements "intranet" + +### E. Quels sont les risques associés à une mauvaise définition du périmètre d'application de la politique de sécurité en entreprise ? + +1. L'application de règles non adaptées aux spécificités des différents contextes fonctionnels/techniques +2. Une mauvaise formation des collaborateurs face aux risques liés à la sécurité en entreprise +3. Une mauvaise évaluation des risques liés à chaque contexte de l'entreprise + +### F. Parmi ces acronymes, lesquels sont des catégories de failles impactant les applications Web ? + +1. SQLI +2. CSRF +3. AJAX + +### G. Une faille XSS... + +1. ...permet d'injecter du code HTML/Javascript dans une page d'une application Web tierce +2. ...permet d'exploiter les sessions HTTP de l'utilisateur en cours de validité +3. ...permet d'accéder à des fichiers du serveur en parcourant l'arborescence du système de fichier + +### H. Parmi ces pratiques, quelles sont celles qui sont des catalyseurs de risques ? + +1. La mauvaise gestion du cycle de vie des dépendances de l'application +2. Une mauvaise politique de journalisation des opérations de l'application +3. L'utilisation de plateformes SaaS + +### I. Dans le cadre du développement d'une application web, la sécurité de l'infrastructure devraient être abordée: + +1. Dès les premières itérations de développement +2. En conjugant le travail des équipes de développement et les équipes opérationnelles +3. Analysée par une entité externe à la fin de chaque cycle de développement + +### J. Quelles sont les différences fondamentales entre une requête HTTP "POST" et "GET" dans le cadre général des failles de type "Cross Site Request Forgery" (CSRF) ? + +1. Les requêtes POST sont chiffrées par défaut par les navigateurs +2. Une requête POST ne peut pas être automatiquement initiée par la simple inclusion d'une balise HTML +3. Il n'y a aucune différence diff --git a/diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/rapport_secu.odt b/diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/rapport_secu.odt new file mode 100644 index 0000000000000000000000000000000000000000..9087bb7ae33588a4a4bcba6e7edb24299fa884f4 GIT binary patch literal 92866 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 literal 0 HcmV?d00001 diff --git a/diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/tp.md b/diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/tp.md new file mode 100644 index 0000000..2a63133 --- /dev/null +++ b/diiage/C3-2_Sécurité_SI/Sécurité_Informatique_Entreprise/tp.md @@ -0,0 +1,21 @@ +# TP - Réaliser un audit de code + +## Objectifs + +- Découvrir les différents critères d'analyse d'une base de code tel que préconisés par l'OWASP +- S'initier à la démarche d'audit de code en reproduisant la démarche proposée par le référentiel ASVS sur une application open-source. + +## Contexte et contraintes + +- L'audit devra suivre la méthodologie et la classification préconisées par le référentiel [ASVS](https://www.owasp.org/images/3/33/OWASP_Application_Security_Verification_Standard_3.0.1.pdf). À vous d'en prendre connaissance +avant de vous lancer dans l'audit réel. +- Vous pouvez sélectionner n'importe qu'elle application Web à condition qu'elle soit open-source et/ou que vous pouvez fournir un lien vers le dépôt des sources (GIT, SVN, Mercurial...) avec le numéro de version que vous avez audité. +- Un exemple de rapport d'audit de code est disponible dans votre espace de partage afin de vous aider à construire votre document. + +## Production attendue + +_Il est bien entendu que je n'attend pas de vous un audit d'une application complète. Dans le temps alloué au TP ce serait impossible (sauf si vous êtes réellement des surdoués dans ce domaine...). Prenez le temps de lire le référentiel dans son ensemble et focalisez vous sur les points qui concernent des failles applicatives._ + +- Un rapport d'audit de sécurité calqué sur le modèle fourni avec le sujet de ce TP. Pensez bien à identifier l'application testée et sa version. Prenez le temps de rédiger, la qualité primera sur la quantité. + +_A l'issu de ce TP, nous ferons un debrief ensemble sur les difficultés que vous avez rencontré et sur les points d'incompréhension._ diff --git a/diiage/C3-4_Base_de_données_Big_Data_BI/API/img/cycle.png b/diiage/C3-4_Base_de_données_Big_Data_BI/API/img/cycle.png new file mode 100644 index 0000000000000000000000000000000000000000..64f9498f50336c471942de2c51e5f33d5c606b05 GIT binary patch literal 20684 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 F1OVw>%Af!M literal 0 HcmV?d00001 diff --git a/diiage/C3-4_Base_de_données_Big_Data_BI/API/img/request.png b/diiage/C3-4_Base_de_données_Big_Data_BI/API/img/request.png new file mode 100644 index 0000000000000000000000000000000000000000..bb55ccbd9e442986cddcbf4feccbffac4719e6ac GIT binary patch literal 24575 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 literal 0 HcmV?d00001 diff --git a/diiage/C3-4_Base_de_données_Big_Data_BI/API/prepa.md b/diiage/C3-4_Base_de_données_Big_Data_BI/API/prepa.md new file mode 100644 index 0000000..09442cd --- /dev/null +++ b/diiage/C3-4_Base_de_données_Big_Data_BI/API/prepa.md @@ -0,0 +1,8 @@ +# DIIAGE SysRes: préparation de la session du 17/11/2017 + +## Problématiques + +- Qu'est ce qu'une API ? +- Quelles sont aujourd'hui les différents types/schéma de conception/protocoles d'API sur le Web aujourd'hui ? +- Quels sont les modèles d'authentification utilisés aujourd'hui avec les API sur le Web ? +- Quels sont les risques associés à l'usage d'API pour la manipulation de services systèmes ? Quels sont les solutions de supervision et de détection des intrusions ? diff --git a/diiage/C3-4_Base_de_données_Big_Data_BI/API/qcm.md b/diiage/C3-4_Base_de_données_Big_Data_BI/API/qcm.md new file mode 100644 index 0000000..9cde2f0 --- /dev/null +++ b/diiage/C3-4_Base_de_données_Big_Data_BI/API/qcm.md @@ -0,0 +1,68 @@ +se + +# API Web pour les services systèmes et réseaux: QCM + +- **Nom** +- **Prénom** +- **Classe** +- **Date** + +## Consigne + +Pour chaque question, entourer **la ou les bonnes réponses, si il y en a**. + +**Attention**, certaines questions sont volontairement rédigées sous la forme plurielle. Cela n'implique pas forcément qu'il y a plusieurs bonnes réponses. + +## Questions + +### A. Que signifie API ? + +1. Acceptance Program Initialization +2. Applicative Product Injection +3. Application Programming Interface + +### B. Parmi ces acronymes, lesquels représentent des patrons de conception/protocoles d'API utilisés communément sur le Web aujourd'hui ? + +1. REST +2. SOAP +3. JS-RPC + +### C. Quels sont les risques majeurs induits par la bascule sur le modèle "administration par API" pour les services "système" ? + +1. Une surface d'attaque plus grande pour les services critiques +2. Une perte de stabilité du système +3. Une perte de traçabilité des acteurs modifiants l'état du système + +### D. Parmi ces mécanismes d'authentification, quels sont ceux communément utilisés pour authentifier les accès aux API sur le Web ? + +1. JSON Web Token +2. Certificats client/serveur +3. NTLM + +### E. Quels dynamiques récentes dans le monde de l'infrastructure ont poussé les développeurs de services systèmes et réseaux à se tourner vers le modèle "administration par API" ? + +1. La généralisation de la virtualisation et la conteneurisation +2. L'augmentation exponentielle de la taille des centres de données +3. La complexification des processus métiers dans le monde de l'entreprise + +### F. Dans une infrastructure pilotée par les API, quelles bonnes pratiques sont à appliquer quant à la gestion/génération de jetons d'identification ? + +1. Une rotation régulière et automatisée des jetons d'authentification +2. L'usage de générateurs de nombres aléatoires reposant sur des primitives cryptographiques normalisées et validées +3. Utiliser des algorithmes internes personnalisés et secrets pour la génération des jetons + +### G. Le stockage d'un "secret partagé", pour être sécurisé, doit: + +1. Être haché +2. Êtré salé +3. Être chiffré + +### H. Votre application communique avec une API JSON tierce à travers Internet. L'API est interrogée en utilisant HTTPS, utilisant un certificat auto-signé. La communication entre votre application et l'API est elle sécurisée ? + +1. Oui +2. Oui, si le certificat a pu être importé de manière sécurisée dans l'application. +3. Non, c'est impossible avec les certificats auto-signés. diff --git a/diiage/C3-4_Base_de_données_Big_Data_BI/API/slides.md b/diiage/C3-4_Base_de_données_Big_Data_BI/API/slides.md new file mode 100644 index 0000000..c055f05 --- /dev/null +++ b/diiage/C3-4_Base_de_données_Big_Data_BI/API/slides.md @@ -0,0 +1,71 @@ +# Le Web et les API + +--- + +# Qu'est-ce qu'une API ? + +--- + +# HTTP + +## Cycle requête/réponse +## URL +## Structure d'une requête +## Structure d'une réponse + +--- + +# Cycle requête/réponse + +
+ +
+ +--- + +# Structure d'une requête + + +
+ +
+ +--- + +# Structure d'une réponse + +
+ +
+ +--- + +# Le format des données + +--- + +# Les protocoles applicatifs + +--- + +# REST + +--- + +# JSON-RPC2 + +--- + +# SOAP + +--- + +# GraphQL + +--- + +# API et authentification + +## HTTP Basic +## API Key + Secret (Amazon Scheme) +## OAuth2 (OpenId Connect, JWT) diff --git a/diiage/C3-4_Base_de_données_Big_Data_BI/API/tp.md b/diiage/C3-4_Base_de_données_Big_Data_BI/API/tp.md new file mode 100644 index 0000000..61fa553 --- /dev/null +++ b/diiage/C3-4_Base_de_données_Big_Data_BI/API/tp.md @@ -0,0 +1,41 @@ +# TP - Concevoir une API REST de manipulation simpliste d'un système GNU/Linux + +## Objectifs + +- Comprendre les principes du patron de conception REST +- Savoir documenter une API +- Comprendre les risques associés à l'exécution d'opérations "système" via une API HTTP + +## Contexte et contraintes + +- La distribution cible est une Ubuntu Server 16.04.3 LTS (amd64) +- Votre API doit utiliser le format JSON +- Le langage de programmation est libre +- Votre API doit permettre: + - de lister l'espace disponible sur votre système (équivalent d'un `df -h`) + - de lister les services exécutés sur votre système (équivalent d'un `systemctl status`) + - de stopper un service sur votre système (équivalent d'un `systemctl stop `) + - de redémarrer votre serveur (équivalent d'un `reboot`) + +## Production attendue + +_Ceci est un TP de conception et pas d'implémentation. Vous devez vous focaliser sur le travail rédactionnel. Si ce TP est noté, c'est ce travail qui sera principalement pris en compte._ + +_Le fait d'implémenter une première version, si elle est fonctionnelle, vous apportera par contre un bonus non négligeable de points, SI ET SEULEMENT SI le travail rédactionnel préparatoire est de bonne qualité._ + +**Par ordre de priorité** + +1. Un document expliquant les différents "points d'entrée" de votre API (voir la section "Ressources" pour un modèle de document) +2. Un document expliquant les modifications apportées au système pour limiter le domaine d'impact de votre application. + + Toutes les opérations demandées requièrent les droits `root` par défaut. Comment limiteriez vous le "pouvoir" (au niveau système) de votre application pour mitiger l'impact en cas de compromission de celle ci ? + + Vous pouvez également fournir les fichiers de configuration pour appuyer votre argumentaire. +3. Le code source de votre prototype si vous arrivez à une première implémentation +4. Un document décrivant la procédure d'installation de votre prototype + +## Ressources + +- [ISO Ubuntu Server 16.04.3 LTS](https://www.ubuntu.com/download/server/thank-you?version=16.04.3&architecture=amd64) +- [Documenter une API REST avec Markdown](https://gist.github.com/iros/3426278) +- [Is it possible to give sudo access to only a particular command?](https://askubuntu.com/questions/90726/is-it-possible-to-give-sudo-access-to-only-a-particular-command)