Sur la piste des risques liés au code client
![[shutterstock.com:558399481, alphaspirit]](https://e3mag.com/wp-content/uploads/2017/09/shutterstock_558399481.jpg.webp)

Si le système SAP s'arrête, de nombreux processus s'arrêtent dans l'entreprise. C'est ainsi que l'on peut décrire la situation chez Trumpf, un leader mondial dans le domaine des machines-outils, du laser et de l'électronique pour les applications industrielles.
En effet, le groupe de haute technologie dont le siège social se trouve à Ditzingen, près de Stuttgart, exploite son système SAP ERP central avec un seul mandant - et ce, pour tous ses sites de production et de développement internationaux ainsi que pour une grande partie de ses organisations de vente.
Plusieurs initiatives internes
Afin d'obtenir une grande fiabilité de l'exploitation du système SAP, Trumpf a lancé plusieurs initiatives internes, notamment pour harmoniser les rôles d'autorisation SAP (SAP SafeT) et pour professionnaliser le développement des logiciels.
Le développement d'applications informatiques a été regroupé et standardisé au sein d'une unité organisationnelle propre à l'entreprise.
Pour ce faire, Trumpf a renforcé ses capacités de développement internes, qui sont soutenues à long terme par des partenaires stratégiques dans différents projets de développement.
Une troisième initiative a consisté à mettre en place la solution de gestion des changements Conigma CCM de Galileo, afin de répondre à la demande des auditeurs d'améliorer la traçabilité des modifications apportées au système SAP.
Dans le cadre de ces projets, il est apparu clairement qu'un outil d'analyse automatique du code source était indispensable. Les responsables informatiques de Trumpf ont opté pour Virtual Forge CodeProfiler, dont ils avaient déjà constaté la qualité lors d'un scan initial du code.
L'outil d'analyse avait détecté des failles hautement critiques dans le code client du système SAP central. Celles-ci pouvaient offrir des portes d'entrée à des attaquants potentiels pour, dans le pire des cas, immobiliser complètement l'application. L'introduction du CodeProfiler s'est déroulée selon une feuille de route clairement structurée et n'a duré que quatre jours.
Autorisations SAP vérifiées
Dans le cadre du projet SAP-SafeT d'harmonisation des rôles d'autorisation SAP, Trumpf a utilisé CodeProfiler pour vérifier automatiquement si les développements internes Abap contenaient également les contrôles d'autorisation nécessaires.
Grâce à cet outil d'analyse, cela peut être réalisé beaucoup plus rapidement, plus facilement et de manière plus approfondie qu'avec des contrôles manuels. Il garantit qu'aucun collaborateur non autorisé n'a accès aux données SAP et ne peut donc éventuellement en abuser.
Lors du développement de logiciels, le CodeProfiler sert à vérifier la qualité et la sécurité du code Abap propre au client. Il se base sur des directives de développement que Trumpf a en grande partie dérivées des cas de test du CodeProfiler. En effet, cela n'a pas beaucoup de sens de donner certaines directives aux programmeurs s'il n'est pas possible de contrôler de manière automatisée si elles sont effectivement respectées.
Validation technique des modifications
Utilisé avec l'outil de gestion des changements Conigma CCM de Galileo, CodeProfiler permet de vérifier que les modifications apportées au système SAP sont techniquement correctes.
Trumpf utilise Conigma pour pouvoir contrôler et gérer de bout en bout les modifications lors du transport du système de développement vers le système de test et de production.
L'objectif est de rendre les processus de gestion des changements sûrs en matière d'audit. Conigma propose ainsi un workflow de validation qui va des exigences aux modifications et aux fonctions déployées.
Le CodeProfiler de Virtual Forge a été intégré dans Conigma afin de pouvoir contrôler automatiquement si les directives de développement ont été respectées lors des modifications du code source.
Bien que Conigma propose une intégration CodeProfiler prête à l'emploi, les responsables informatiques de Trumpf ont opté pour une intégration indirecte via l'Abap Test Cockpit (ATC) de SAP.
Il s'agit d'une suite de tests livrée dans le standard SAP, qui met à disposition différents outils d'analyse de code statique. L'utilisation d'ATC a été motivée par le fait que Trumpf ne voulait pas entraver les futurs développements SAP dans ce domaine - un choix judicieux au vu des nouvelles fonctions de NetWeaver 7.5x.
Grâce à l'intégration ATC dans Conigma, il est possible d'effectuer un contrôle ATC dans le cadre du processus de demande de modification et de piloter la suite du processus en fonction du résultat.
Si des Prio-1-Findings sont contenus, le transport du système de développement vers le système de test peut d'abord être empêché. Actuellement, les développeurs ont la possibilité d'intervenir manuellement et de libérer également les Prio-1-Findings.
A l'avenir, Trumpf souhaite toutefois utiliser le navigateur d'exemption ATC. Celui-ci permet de vérifier automatiquement s'il y a des trouvailles Prio 1 qui doivent être soit supprimées, soit approuvées via le navigateur de libération ATC. L'étape de validation manuelle en aval doit alors se limiter à des questions organisationnelles et formelles.
Moins de temps, plus de sécurité
En utilisant CodeProfiler pour la réception technique des modifications du code client Abap, Trumpf économise un temps considérable. Alors que les développeurs avaient besoin de cinq à dix minutes pour visualiser une modification, il ne leur faut aujourd'hui qu'environ 30 secondes pour afficher un résultat de contrôle ATC.
Comme entre dix et quinze modifications doivent être vérifiées et validées chaque jour, le gain de temps est immense. De plus, l'utilisation de l'outil d'analyse de code donne aux développeurs de Trumpf le sentiment agréable de n'avoir négligé aucune erreur dans le domaine de la sécurité et de la conformité lors de leurs validations.
Comme toutes les modifications apportées aux développements internes d'Abap sont systématiquement contrôlées, les responsables informatiques peuvent être sûrs que le nombre de points de code critiques n'augmentera pas.
Dans la prochaine étape, Trumpf veut intégrer d'autres cas de test dans les analyses de code, en premier lieu les Hana-Findings. L'objectif est de s'assurer que le nouveau code n'intègre pas de constructions qui fonctionnent certes sur une base de données classique, mais pas avec la technologie d'avenir Hana.