Développement sécurisé avec SAP Hana XSA


Avec Hana 1.0 SPS11, SAP Hana Extended Application Services, Advanced Model (SAP Hana XSA) a été introduit. Ce modèle est basé sur l'approche des microservices et permet de modulariser le développement de logiciels. Cela permet de réaliser différents déploiements (environnements de développement séparés les uns des autres) au sein d'une seule base de données Hana.
Chaque application est enregistrée dans son propre conteneur et dispose de son propre environnement d'exécution. Ainsi, les éventuels problèmes de l'application n'affectent pas les autres applications.
Lors de l'utilisation de SAP Hana XSA, différents critères de sécurité doivent être respectés afin que le développement de l'application puisse être autorisé conformément aux exigences.
La solution est gérée par le SAP Hana XSA Cockpit. Les utilisateurs et les autorisations y sont gérés, ainsi que la configuration de la sécurité. Cette dernière comprend par exemple les tenants, qui peuvent être gérés à partir d'ici, et la gestion des fournisseurs d'identité SAML.
Dans la gestion des utilisateurs, il est possible de créer de nouveaux utilisateurs ou de migrer des utilisateurs Hana existants vers des utilisateurs XSA. Les autorisations sont attribuées à l'aide de collections de rôles. Par exemple, la collection de rôles XS User Admin est nécessaire pour la gestion des utilisateurs et la collection de rôles XS Authorization Admin pour la gestion des rôles.
Pour l'affichage pur, les collections de rôles standard XS Authorization Display et XS User Display sont disponibles. La traçabilité de la gestion des utilisateurs et des autorisations est rendue possible par l'audit de la base de données Hana, les actions d'audit correspondantes doivent être activées ici.
La structure de base de SAP Hana XSA se compose d'organisations et d'espaces. Les applications sont développées au sein des Spaces. Les organisations sont des conteneurs qui structurent les espaces. Les développeurs sont affectés aux Spaces.
Ils doivent avoir été créés au préalable en tant que fiche utilisateur. Lors de l'affectation aux espaces, les autorisations sont attribuées aux utilisateurs. On distingue un Space Manager (gestion de l'affectation des utilisateurs à l'espace et affichage et évaluation des applications), un Space Developer (intégration, démarrage et arrêt des applications, affectation des applications aux services) et un Space Auditor (affichage et évaluation des applications et des affectations des utilisateurs à l'espace).
Cela permet de définir quels utilisateurs sont actifs en tant que développeurs au sein de l'espace. Au niveau des organisations, l'autorisation Organization Manager permet de gérer l'affectation des utilisateurs à l'organisation et de gérer les espaces dans l'organisation.
Les modifications apportées aux organisations et aux espaces sont consignées dans un fichier de suivi du système d'exploitation. Elles peuvent par exemple être analysées à l'aide de Hana Database Explorer.
La plate-forme de développement centrale pour les applications SAPUI5 est SAP WebIDE (Integrated Development Environment). Différents langages sont pris en charge, comme Java, Java Script, SAPUI5 HTML5, Node.js, etc. WebIDE peut être utilisé aussi bien pour des applications sur site (Hana XSA) que comme application centrale de développement pour la SAP Cloud Platform (Cloud Foundry).
Pour utiliser le WebIDE, les développeurs doivent se voir attribuer des autorisations dans SAP Hana XSA. Pour cela, il existe déjà deux rôles modèles, WebIDE Developer et WebIDE Administrator. Pour autoriser les utilisateurs à développer des applications, un rôle doit être dérivé du modèle WebIDE Developer.
Des directives internes à l'entreprise doivent être définies pour l'implémentation des autorisations dans les développements propres. Il est également possible d'intégrer des actions dans les développements propres, qui seront consignées via Hana Auditing.
Pour cela, il existe dans l'audit la catégorie Application Auditing, dans laquelle il est possible d'enregistrer entre autres des actions telles que Personal Data Access et Personal Data Modification. Pour l'utilisation de SAP Hana XSA, il convient d'établir un concept de sécurité et d'autorisation propre, qui sera également contrôlé régulièrement.