Comment fonctionne la plateforme d'intégration Alumio ?
Alumio est une « plateforme d'intégration en tant que service » (iPaaS) basée sur le cloud et à faible code. En tant que solution pilotée par API, Alumio permet de connecter plusieurs systèmes, logiciels, applications et sources de données, dans des environnements sur site et dans le cloud.
En tant que solution low-code, Alumio fournit une interface conviviale permettant aux développeurs et aux utilisateurs professionnels de créer, de surveiller et de gérer toutes les intégrations sur une seule interface visuelle : sans code personnalisé et avec de simples options de configuration en un clic. Alumio présente également des fonctionnalités conviviales pour les développeurs permettant de cartographier et de transformer les données de manière flexible, d'automatiser des flux de travail complexes, de résoudre des cas extrêmes et de mettre en œuvre (voire de créer) des packages de connecteurs afin de créer des connexions plus rapides et des intégrations personnalisées.
Centralisant toutes les intégrations et les données sur un espace cloud dédié et fournissant une infrastructure à locataire unique, la plateforme d'intégration Alumio est conçue pour aider les entreprises à développer, gouverner et orchestrer des écosystèmes informatiques sécurisés de manière évolutive. Il permet de synchroniser les données entre tous les systèmes intégrés, d'éviter les silos de données et de réduire les erreurs de duplication. Offrant une sécurité des données constamment améliorée et mise à jour, Alumio garantit un minimum de temps d'arrêt et est équipé de procédures de réactivation, de mise en cache des données et de capacités de mise en mémoire tampon, afin de garantir la continuité des activités à tout moment.
Bien que tout ce qui précède puisse suffire à expliquer Alumio d'un point de vue commercial, pour les professionnels techniques, il est important d'explorer l'architecture sur laquelle Alumio est construit, afin de comprendre comment il fonctionne réellement.
En quoi consistent l'architecture et l'infrastructure de sécurité Alumio ?
Afin de mieux comprendre ce qui fait de la plateforme d'intégration low-code Alumio une solution flexible, évolutive et pérenne, ce livre blanc propose une analyse technique approfondie des sujets suivants :
La sécurité de la plateforme Alumio
Les caractéristiques de performance de l'Alumio
1. L'architecture Alumio
Découvrez le fonctionnement interne de notre plateforme d'intégration pérenne
Alumio est conçu pour être un iPaaS (plateforme d'intégration en tant que service) d'entreprise de nouvelle génération, piloté par API, qui permet de créer, de surveiller et de gérer des intégrations et des écosystèmes informatiques pérennes. Pour réaliser et incarner cette vision, l'approche architecturale de la plateforme Alumio suit les principes de conception suivants :
1.1 L'interface d'intégration
L'interface Web conviviale d'Alumio est développée dans React et est découplée du backend. Cela permet au développement frontal d'être largement indépendant du développement backend au sein de la plateforme. L'interface utilisateur s'exécute localement dans le navigateur de l'utilisateur et communique directement avec le backend via OpenAPI via HTTPS. L'interface utilisateur implémente l'authentification proposée par le backend et lit la configuration, les schémas (UI), etc. depuis le backend.
Séparer la logique métier de l'interface utilisateur et du backend »
L'interface utilisateur Alumio interprète les données envoyées par le backend et les met en forme sous forme de vues, de formulaires, de validations, etc. Toutes les données échangées entre l'interface utilisateur et le backend sont formatées en JSON.
1.2 Injection de dépendance (DI)
Dans le développement logiciel traditionnel, l'injection de dépendances est utilisée pour séparer les préoccupations de l'utilisation des objets. Alumio applique l'approche d'injection de dépendances au développement et/ou à la configuration de composants spécifiques à la plateforme (clients HTTP/SOAP/Database/Filesystem, abonnés, transformateurs, éditeurs, etc.). Cela permet de réutiliser la configuration sans entraver le logiciel.
L'injection de dépendance Alumio garantit que la configuration peut être optimisée. »
Concrètement, cela signifie que, par exemple, un client HTTP peut être configuré pour de nombreuses connexions différentes, qu'il s'agisse de récupérer ou d'envoyer des données. L'injection de dépendances permet de réduire la configuration et la maintenance requises pour un projet Alumio.
1.3 Programmation orientée aspect (AOP)
Alumio implémente l'AOP (Aspect-Oriented Programming), ce qui signifie qu'il sépare les différents types de logique métier les uns des autres. La journalisation du traitement des applications est automatiquement implémentée grâce à l'AOP, ce qui signifie que la journalisation peut être activée pour chaque client, transformateur et autres objets sans qu'il soit nécessaire de développer une fonctionnalité de journalisation au sein de ces objets. Les pointcuts AOP sont également disponibles pour les utilisateurs finaux d'Alumio, qui peuvent ensuite ajouter des plugins DI aux pointcuts fournis.
1.4 Configuration des intégrations
Alumio possède plusieurs types de configuration qui sont décrits ci-dessous, à savoir :
Configuration de l'interface avec le système distant
Configuration spécifique à l'intégration
Configuration à usage général
1.5 Configuration pour interfacer avec des systèmes distants
Alumio propose plusieurs options génériques de configuration client pour s'interfacer avec des systèmes distants.
Configuration de l'interface avec le système distant
La communication entre les serveurs d'un réseau et les logiciels numériques peut être effectuée via HTTP, en envoyant des requêtes HTTP et en recevant des réponses HTTP.
Configurez les clients HTTP et utilisez-les pour interfacer avec les points de terminaison HTTP à l'aide de méthodes compatibles HTTP. Les demandes peuvent être étendues pour contenir des post-données. Les méthodes d'authentification telles que OAuth 2.0 peuvent être configurées sur un client HTTP à l'aide de DI.
PDO
PDO est une couche d'abstraction légère permettant d'accéder aux bases de données.
Configurez des clients de base de données allant de MySQL à Oracle pour récupérer et publier des données de base de données, exécuter des procédures stockées, etc.
SOAP
Le support SOAP est une extension des éléments HTTP d'Alumio et inclut l'authentification. Ce protocole n'est peut-être pas toujours le principal, mais il est toujours largement utilisé.
Configurez les clients pour qu'ils se connectent à un service SOAP afin de récupérer et de publier des données à l'aide des méthodes de requête couramment disponibles. Alumio propose une solution permettant de s'adapter aux différences inhérentes aux services SOAP, comme l'ajout d'une enveloppe d'authentification personnalisée ou la modification de la structure des messages.
Systèmes de fichiers
Les systèmes de fichiers sont interfacés à l'aide de « Filesystem », qui est une couche d'abstraction permettant de normaliser les interactions avec les systèmes de fichiers de manière agnostique.
Configurez les systèmes de fichiers pour lire et écrire des fichiers sur des services tels que FTP, SFTP, AWS S3, HTTP, etc. Les interactions avec les systèmes de fichiers sont effectuées sans état.
1.6 Configuration pour maintenir les intégrations
Les intégrations entre les systèmes distants sont maintenues à l'aide d'au moins une route, composée d'une configuration entrante et d'une configuration sortante. Les intégrations peuvent être étendues en utilisant des transformateurs, qui peuvent être appliqués aux itinéraires, aux configurations entrantes et sortantes. Les éléments sont décrits en détail ci-dessous :
Configuration de l'interface avec le système distant
Les itinéraires connectent des systèmes distants à l'aide d'une connexion entrante et d'une connexion sortante et éventuellement d'une liste de configurations de transformateurs.
Configuration entrante
Les configurations entrantes facilitent la récupération ou la réception de données pour la file d'attente Alumio.
Une configuration entrante utilise une configuration d'interface système à distance (SOAP, REST, FTP, etc.) pour produire des données pour la ou les parties suivantes de la ou des routes pour lesquelles elles sont configurées. Des transformateurs peuvent être connectés à une configuration entrante pour manipuler les données produites avant leur transmission.
Remarque : à ce stade, tous les formats de fichiers étrangers (XML, CSV, EDI) peuvent être convertis en JSON, car Alumio fonctionne avec le schéma JSON.
Il est possible d'utiliser une seule configuration entrante sur plusieurs itinéraires, ce qui permet d'améliorer l'efficacité du paysage informatique en recevant les données une seule fois et en les envoyant ensuite à plusieurs systèmes distants.
Configuration sortante
Les configurations sortantes facilitent l'envoi de données depuis la file d'attente Alumio. Une configuration sortante utilise une configuration d'interface système à distance (SOAP, REST, FTP, etc.) pour envoyer aux systèmes distants les données qu'elle reçoit de la ou des routes pour lesquelles elle est configurée.
Des transformateurs peuvent être connectés aux configurations sortantes pour manipuler les données reçues avant qu'elles ne soient envoyées à des systèmes distants.
Remarque : à ce stade, les données JSON peuvent être reconverties dans d'autres formats de fichiers (XML, CSV, EDI, etc.)
Configuration du transformateur
Les configurations des transformateurs facilitent la transformation des données disponibles à tout moment des itinéraires.
La transformation permet la sélection/la réduction des données, la traduction/le mappage, l'encodage, le calcul, le triage/l'ordonnancement, la fusion/la jointure/la recherche à partir d'autres sources, l'agrégation, la génération de clés de substitution, la transposation/le pivotement des clés et des valeurs des tableaux/objets et la validation.
Les transformateurs peuvent également être utilisés pour filtrer des points de données entiers produits par les configurations entrantes, évitant ainsi les éléments de file d'attente inutiles.
La plupart des transformateurs permettent d'utiliser une logique métier pour décider si le transformateur sera appliqué aux données données.
1.7 Configuration à usage général
Les intégrations entre les systèmes distants sont maintenues à l'aide d'au moins une route, composée d'une configuration entrante et d'une configuration sortante. Les intégrations peuvent être étendues en utilisant des transformateurs, qui peuvent être appliqués aux itinéraires, aux configurations entrantes et sortantes. Les éléments sont décrits en détail ci-dessous :
Variables d'environnement
Stockez les valeurs réutilisables et chiffrez les valeurs sensibles à l'aide de variables d'environnement (comme les mots de passe, les clés d'API, etc.) à l'échelle de la plateforme. Les données sensibles sont automatiquement supprimées des journaux des applications, tels que les journaux des éléments de la file d'attente, afin que les utilisateurs finaux ou d'autres utilisateurs non autorisés ne puissent pas accéder aux valeurs sécurisées utilisées sur la plateforme.
Rangement
Stockez les données pour optimiser les itinéraires, en récupérant uniquement les dernières entrées. Effectuez un différentiel pour réduire le nombre d'éléments de la file d'attente en cours de traitement. Gardez une trace pour vérifier si l'identifiant de dernière entrée, les données d'itinéraire agrégées, etc. sont pris en charge par la plateforme et peuvent être utilisés pour optimiser les itinéraires. Le stockage peut également être utilisé pour créer et implémenter votre propre mécanisme de mise en cache ou pour créer des tables de recherche.
Configurez des clients de base de données allant de MySQL à Oracle pour récupérer et publier des données de base de données, exécuter des procédures stockées, etc.
1.8 File d'attente
Toutes les données qui entrent dans la plateforme et qui sont prêtes à être traitées par une configuration sortante deviennent disponibles dans la file d'attente. Ces éléments de file d'attente garantissent que les itinéraires configurés sont inspectables et affichent l'état des tâches pour indiquer le travail effectué et ce qui ne l'a pas été.
Un élément de file d'attente peut apparaître de plusieurs manières : configurations entrantes planifiées, appels Webhook vers la plateforme et requêtes par proxy via la plateforme. Beaucoup d'entre eux sont en temps réel ou peuvent être configurés comme tels. Chaque élément de file d'attente contient des données de configuration : d'où proviennent les données et où elles vont.
Les éléments de la file d'attente affichent également les données qui y sont connectées. Enfin, les éléments de la file d'attente indiquent la journalisation qui a été effectuée du côté entrant et du côté sortant. Ces journaux peuvent contenir des erreurs et permettre d'accéder à des informations de débogage telles que des erreurs HTTP.
1.9 Journalisation
Alumio enregistre toutes les données et tous les événements pendant le traitement des données entrantes et sortantes. Les données sensibles telles que les mots de passe d'API sont automatiquement filtrées des données du journal et des variables d'environnement cryptées. Les données du journal sont collectées et synchronisées avec une Suite Elastic. Les informations du journal sont affichées pour chaque tâche créée et chaque action d'abonnement/publication dans Alumio.
Les déclencheurs peuvent être créés dans la Suite Elastic en fonction des données du journal. Cela peut être utilisé à des fins de surveillance. Par exemple, une alerte peut être envoyée lorsque plusieurs tâches échouent en une heure.
1.10 Surveillance
Configurez des déclencheurs pour informer les responsables de l'état des intégrations, savoir si les tâches (éléments de la file d'attente) sont bloquées, si la publication échoue, etc. Il est possible de recevoir des notifications de surveillance d'Alumio par e-mail.
1.11 Processeur
La plupart des intégrations s'exécutent dans le cadre de deux processus distincts, l'un pour les données entrantes et l'autre pour les traiter. Le traitement est généralement démarré à l'aide d'un planificateur, sinon, il est démarré dans le cadre d'une action en temps réel en raison des paramètres de configuration, qui est ensuite exécutée en même temps que le traitement des données entrantes.
Le processeur est un élément configurable qui permet à la plateforme de définir le nombre maximum de tâches (éléments de file d'attente) à traiter pour un itinéraire donné. La définition d'un nombre maximum de tâches permet à la plateforme d'éviter de surcharger les systèmes distants de réception. Cela garantit que les intégrations les plus importantes continuent de fonctionner pendant que les autres intégrations attendent.
1.12 Stockage des applications
Alumio utilise Elastic Stack et MySQL pour stocker les données et les journaux des applications. Les journaux produits lors de l'exécution d'Alumio sont envoyés à Elastic Stack et y sont indexés afin de garantir un accès rapide aux journaux depuis l'interface Alumio. Grâce à AOP, ces journaux sont très précis et peuvent être ajustés au fur et à mesure de l'évolution de la plateforme.
La configuration, les variables d'environnement, les tâches et les utilisateurs sont stockés dans MySQL. Au fur et à mesure de l'évolution d'Alumio, les structures de données MySQL sont maintenues avec des migrations pour permettre la mise à niveau des projets existants vers la dernière version de la plateforme.
1.13 Traitement de la connexion
Connexions entrantes déclenchées (Webhooks)
Alumio peut recevoir des déclencheurs pour démarrer des itinéraires à partir de points finaux externes.
Les Webhooks permettent aux systèmes d'envoyer des messages ou des informations automatisés à Alumio. Il s'agit d'un moyen puissant de transférer automatiquement des données d'une application à une autre.
Connexions transparentes en temps réel (proxy HTTP)
Alumio peut fonctionner comme un proxy HTTP entre deux points de terminaison pour les requêtes HTTP. Au lieu d'envoyer des messages HTTP directement à un terminal, les messages peuvent être envoyés via Alumio. Il transmettra les demandes au terminal et renverra la réponse qu'il reçoit comme si le point de terminaison avait été appelé directement. Cela donne à chaque connexion existante qui utilise le proxy HTTP Alumio les fonctionnalités de journalisation proposées par Alumio.
Connexions entrantes planifiées
Les connexions entrantes sont déclenchées par son calendrier (sauf si elles sont déclenchées par des webhooks). Les connexions entrantes se connectent aux terminaux en utilisant leur configuration pour récupérer les données des itinéraires connectés.
Connexions sortantes planifiées/en temps réel
Les connexions sortantes sont déclenchées par leur calendrier ou par le côté entrant lorsque l'itinéraire correspondant est configuré en tant qu'itinéraire en temps réel, à l'aide de l'option « Activer le traitement en temps réel ». Les connexions sortantes se connectent aux terminaux en utilisant leur configuration pour envoyer des données depuis la route associée vers le point de terminaison.
1.14 Authentification
L'authentification avec l'API Alumio est sécurisée avec Google OAuth. Une fois que les utilisateurs ont été créés dans Alumio, ils peuvent se connecter à Alumo de plusieurs manières :
1. Google compte Microsoft
2. Compte social (les comptes professionnels ne sont pas pris en charge)
3. Azure AD, SAML, Okta, ADFS, OpenID, LDAP, Google Workspace (licences Enterprise uniquement)
4. Création d'un nouveau compte Alumio
Pour plus de sécurité, l'authentification multifacteur (MFA) est requise pour se connecter à l'environnement Alumio.
Par défaut, un domaine client est ajouté à l'instance Alumio du client. Les utilisateurs auxquels un compte Google a été attribué seront automatiquement connectés à la plateforme. La configuration détermine si l'utilisateur dispose de droits de lecture seule ou de création et/ou de modification.
Schéma JSON 1.15
Alumio utilise des schémas JSON pour proposer un format de données clair avec lequel communiquer. Les schémas sont utilisés pour déterminer à quoi doit ressembler l'entrée utilisateur, comment les objets de configuration doivent être définis, comment les formulaires doivent être rendus, etc. Ces schémas constituent une interface d'application claire et cohérente.
1.16 Types d'entités de données
Les entités de données pour les éléments prédéfinis sont normalisées autant que possible. Cela signifie qu'Alumio dispose d'une norme intermédiaire pour de nombreux types d'entités de données (par exemple, les commandes, les produits, les notes de crédit, les personnes, etc.). Le fait de disposer de ces normes intermédiaires réduit la complexité de l'interface avec des systèmes (partiellement) connus, ce qui réduit les mutations nécessaires sur les données données et la complexité globale de la configuration des flux de données.
1.17 Symfony - Le cadre de développement d'Alumio
Le framework Alumio est développé sur Symfony, qui propose de nombreuses fonctionnalités génériques et prêtes à l'emploi qui ont été implémentées dans Alumio. L'injection de dépendances de Symfony connecte tous les principaux composants d'Alumio.
Les principaux composants Alumio sont essentiellement les fonctionnalités qui peuvent être étendues à l'aide de notre système modulaire. Cela inclut des composants tels que l'authentification, l'injection de dépendances Alumio, OpenAPI, la journalisation, les entrées, les sorties et bien d'autres encore. Symfony propose également des composants plus courants à implémenter comme Doctrine.
Ne réinventez pas la roue : Alumio utilise les bibliothèques Symfony pour les fonctionnalités génériques »
À propos de Symfony : Il s'agit du framework leader au monde avec un large ensemble de composants découplés et réutilisables sur lesquels certaines des meilleures applications sont construites. La communauté Symfony est composée de plus de 600 000 développeurs de plus de 120 pays qui adoptent et promeuvent les meilleures pratiques, la standardisation et l'interopérabilité des applications. Symfony offre tout ce que l'on peut attendre d'un framework : rapidité, flexibilité, composants réutilisables, etc.
1.18 OpenAPI/Swagger
Alumio expose ses fonctionnalités via OpenAPI, la définition d'API standard ouverte moderne. Chaque action est définie et mise à disposition via cette API avec des schémas clairs pour l'envoi et la récupération de données. Tous les éléments affichés/édités dans l'interface utilisateur d'Alumio sont analysés via cette API. Même le traitement des itinéraires peut être effectué via l'API, comme l'exécution d'une configuration entrante et l'exportation de données à partir d'un itinéraire donné.
2. La sécurité de la plateforme Alumio
Découvrez les normes de sécurité de haut niveau de notre plateforme d'intégration
Notre plateforme d'intégration déplace les données d'un système à un autre, qui peuvent contenir des informations critiques sur votre entreprise, des données financières et les informations personnelles et identifiables (PII) de vos clients. La sécurité de vos données doit être garantie.
La sécurité est inscrite dans notre ADN et intégrée d'un point de vue technique à chaque processus Alumio. La sécurité de nos produits, de notre infrastructure et de nos données est notre priorité absolue. Notre équipe de sécurité et de gestion des risques travaille conformément aux normes de l'industrie pour garantir la sécurité de vos données. Pour garantir que notre conformité et notre sécurité répondent aux normes les plus strictes, nous surveillons de près notre plateforme. Notre équipe produit travaille en permanence à l'amélioration et à la mise à jour de la plateforme afin de répondre aux normes de sécurité les plus récentes, afin de garantir la meilleure sécurité possible aux données de nos clients.
2.1 La sécurité dès la conception
La plateforme d'intégration Alumio est construite à l'aide de cadres technologiques de pointe et de pratiques de développement logiciel sécurisées. Tous les correctifs, nouvelles fonctionnalités et améliorations ne sont publiés qu'après plusieurs tests rigoureux et un processus de révision strict. Notre programme de tests comprend des tests de code automatisés concernant la qualité du code, ainsi que des tests manuels où chaque ligne de code est vérifiée et testée par au moins deux développeurs seniors.
Les ingénieurs d'Alumio développent l'application principale sur la base du concept de « sécurité dès la conception » :
Nos processus SDLC (Software Development Lifecycle) sécurisés comprennent des exigences de sécurité documentées, des révisions de la conception de la sécurité, des tests de sécurité des applications et des tests d'intrusion complets.
Les environnements de production et de test sont complètement séparés les uns des autres. Les données des clients ou d'autres informations sensibles à la confidentialité ne sont jamais transférées vers des environnements de test ou de test pour développeurs.
Des tests de sécurité sont effectués après chaque publication dans le top 10 de l'OWASP. Des tests de vulnérabilité et de pénétration approfondis sont effectués au moins une fois par an.
Nous utilisons des outils de sécurité DevOps automatisés tels que OWASP Zap et Sensiolabs pour tester les failles de sécurité tout au long de la phase de développement.
Les bogues connexes reçoivent toujours la priorité la plus élevée et une analyse des causes profondes est effectuée pour tous les bogues majeurs qui entrent en production. Chaque pull request vers une œuvre publiable nécessite une révision du code au cours de laquelle au moins deux autres développeurs (seniors) sont ajoutés.
L'équipe travaillant sur le cœur d'Alumio est très investie dans les pratiques de sécurité et sera en mesure de fournir des révisions et des commentaires appropriés sur le code écrit. Nous automatisons les tests de sécurité avec Sensiolabs Security Checker.
Les développeurs sont formés aux pratiques de codage sécurisé.
2.2 Conformité aux normes de sécurité
Alumio est fière de son engagement en faveur de la protection des informations sensibles. Pour en témoigner, Alumio a suivi un processus de mise en œuvre rigoureux et s'est conformée à la norme ISO 27001, une norme internationalement reconnue pour les systèmes de gestion de la sécurité de l'information. Cette norme définit les meilleures pratiques et directives pour la mise en place, la mise en œuvre, la maintenance et l'amélioration continue des systèmes de gestion de la sécurité de l'information afin de garantir la confidentialité, l'intégrité et la disponibilité des informations.
2.3 Accès à la plateforme d'intégration Alumio
L'accès expliquait :
Contrôle d'accès basé sur les rôles (RBAC)
Nos employés ont accès en fonction des rôles des utilisateurs avec le concept de moindre privilège, de sorte qu'aucun accès n'est accordé à un niveau qui n'est pas décrit comme nécessaire dans le « rôle ».
Sécurité de l'accès à distance
L'accès à distance à la base de code et à l'infrastructure d'Alumio n'est possible qu'après connexion au VPN de l'entreprise. La connexion à l'application Alumio peut être réalisée par une procédure de connexion par authentification à deux facteurs.
Liste blanche des adresses IP
L'accès à la base de code et à l'infrastructure d'Alumio n'est possible qu'après connexion au VPN de l'entreprise. Ces adresses IP sont statiques et sont mises sur liste blanche par nos administrateurs système.
Accès au support des fournisseurs
L'accès des fournisseurs est basé sur les mesures de sécurité d'Amazon Web Services.
Suivi des utilisateurs
Toutes les actions de connexion des utilisateurs sont enregistrées, comme les identifiants de connexion (nom d'utilisateur Fan ID), la date/heure de la dernière connexion, l'emplacement de connexion (par exemple : adresse IP), l'identifiant de l'appareil (par exemple : adresse MAC). Les journaux sont envoyés à un endroit soumis à des conditions d'accès spéciales pendant une période de 8 semaines.
Révisions d'accès régulières
Alumio a mis en place un processus qui garantit la tenue de contrôles d'accès réguliers. Ils informeront les responsables des problèmes liés à l'offboarding, ce qui permettra à Alumio de mettre à jour ses processus et de remédier à tout changement nécessaire.
Chiffrement du disque dur
Les employés d'Alumio sont tenus d'appliquer le cryptage du disque dur sur leurs machines locales, comme indiqué dans les politiques d'intégration des employés.
Configuration du pare-feu
Les employés d'Alumio sont tenus d'appliquer une configuration de pare-feu sur leurs machines locales, comme indiqué dans les politiques d'intégration des employés.
Les employés de l'ingénierie, des services, du support et des opérations (essentiellement toute personne ayant accès à tout ce qui est considéré comme sensible à la sécurité) sont tenus d'utiliser le VPN de l'entreprise avec l'authentification multifactorielle activée, pour stocker et générer toutes les informations d'identification utilisées pour effectuer leurs tâches.
Les ingénieurs ayant accès aux systèmes de production sont également tenus de suivre différents niveaux de formation en matière de sécurité au moins une fois par an. Tous nos employés n'ont toujours accès qu'au nombre minimal d'applications ou de systèmes nécessaires à l'exercice de leurs fonctions.
2.4 Sécurité du réseau et de l'infrastructure
Responsabilités :
Amazon Web Services est responsable de :
Elastic est responsable pour Able de :
Journalisation via la pile Elastic ELK (Elasticsearch, Logstash, Kibana)
Amazon Web Services est responsable de :
Gestion de la configuration
Alumio suit les directives et les meilleures pratiques des normes de sécurité suivantes :
NORME ISO 9001 | 27001 | 27002 | 27017 | 27018 | 22301 | 31000
2.5 Réseau : stockage et traitement des données
Toutes les communications depuis et vers le centre de données d'Amazon Web Services et d'Alumio utilisent un cryptage SSL 256 bits minimum et s'effectuent via HTTPS, port 443.
Paramètres par défaut :
Données au repos :
Aucun cryptage n'est appliqué et l'accès aux données au repos est limité aux utilisateurs autorisés.
Données en transit :
Sécurisé selon la situation, généralement par HTTPS, tunneling SSH, VPN, etc.
2.6 Stockage et traitement des données
L'intégration Alumio permet de stocker les données de trois manières :
Parcours de transformation
Dans certains cas, Alumio stocke ou traite des données personnelles sensibles comme indiqué dans la DPA ou le RGPD. Les types de données traitées ou stockées sont indiqués dans les itinéraires de données. Un rapport est disponible ou peut être créé avant de commencer le processus de mappage.
2.7 Communication automatique des données
Alumio transmet automatiquement les informations suivantes au centre de données Amazon Web Services :
État en ligne :
Le service de surveillance Alumio sait en temps quasi réel si les services d'intégration sont hors ligne.
Envois :
Alumio envoie des courriels médicaux, mais jamais au nom d'un client.
Informations de suivi :
La plateforme Alumio communique le nom de fichier et le répertoire des fichiers traités, ainsi que le nombre de réussites et d'échecs et les exécutions de processus.
Mises à jour du processus d'intégration :
La plateforme Alumio vérifie périodiquement toute mise à jour de l'état des tâches exécutées dans leurs configurations.
2.8 Communications de données initiées par l'utilisateur
À la demande d'un utilisateur autorisé, la plateforme Alumio communique les informations suivantes au centre de données Alumio :
Informations de journalisation et de surveillance
Informations relatives à l'exécution d'un processus d'intégration, notamment la durée totale d'exécution, la journalisation de chaque étape du processus et les messages d'erreur d'échec d'exécution. Les données d'API ou les journaux liés aux tâches (messages via des itinéraires = tâches) sont conservés pendant 2 semaines. Les journaux relatifs au serveur sont conservés pendant un mois. Les deux sont configurables selon les besoins en fonction de l'édition Alumio achetée.
Exportation de journaux :
Alumio offre la possibilité d'exporter les journaux du serveur. Tout utilisateur autorisé peut exporter les journaux relatifs aux tâches.
Alumio hors site effectue des sauvegardes des éléments suivants :
Databases : quotidiennes pendant une semaine au maximum
Détails de l'erreur : message d'erreur détaillé expliquant quelle erreur a provoqué l'échec de l'exécution d'un processus d'intégration.
Navigation dans les connecteurs
Lors de la création de processus pour des connecteurs spécifiques, les informations du schéma de base de données peuvent être transmises pour définir les règles de mappage des champs. Aucune donnée réelle n'est transmise.
2.9 Sécurité des communications de données sur site
Aucun port de pare-feu entrant n'a besoin d'être ouvert pour que la plateforme d'intégration Alumio puisse communiquer avec le centre de données. L'interface d'intégration Alumio initie toujours la connexion ; le centre de données d'Amazon Web Services ne transmet jamais automatiquement les données à la plateforme d'intégration Alumio (ou à une solution hébergée de manière privée). Lorsque la fonction Alumio initie une connexion, elle utilise un handshake SSL pour authentifier le centre de données avant de transmettre des données. Alumio utilise le certificat numérique créé automatiquement lors de l'enregistrement et de l'authentification.
3. L'infrastructure Alumio
Découvrez ce qui rend notre plateforme d'intégration évolutive, sécurisée et pérenne
La plateforme d'intégration Alumio est une solution basée sur le cloud, fournie dans une infrastructure à locataire unique dans la région de notre client. Que ce soit en Europe, en Asie ou aux États-Unis, Alumio assure le déploiement rapide, sécurisé et conforme de notre plateforme d'intégration. Le modèle de licence Alumio inclut l'hébergement/l'application (gestion) et les mises à jour. Alumio fournit les réseaux, les serveurs, le stockage, le système d'exploitation (OS), la base de données et d'autres services pour héberger l'édition Alumio achetée par le consommateur.
L'infrastructure d'hébergement est un aspect essentiel qui influence l'évolutivité de la plateforme. Alumio fournit des infrastructures d'hébergement hautes performances prêtes à être déployées dans le monde entier auprès des PME et des entreprises internationales.
3.1 Surveillance
Comparé aux ESB, l'iPaaS est une plateforme basée sur le cloud qui utilise une architecture relativement légère et ne nécessite aucune installation sur site. Alors que les ESB et l'iPaaS sont tous deux spécialisés dans l'intégration de systèmes existants, l'iPaaS peut se connecter de manière flexible à de nombreuses autres applications SaaS, applications cloud et sources de données, grandes ou petites, dans des environnements locaux et cloud.
Alors que les ESB mettent en œuvre une architecture de messagerie complexe pour connecter les applications, l'iPaaS adopte une approche axée sur les API. Cela permet à l'iPaaS de créer des intégrations plus rapides et plus flexibles, qui peuvent être facilement modifiées ou soumises à une transformation des données, sans perte d'intégrité des données ou de continuité des activités.
En outre, comme indiqué précédemment, un ESB doit être géré par du personnel informatique expérimenté, soigneusement formé et formé à sa mise en œuvre. En revanche, l'iPaaS fournit une interface Web basée sur le cloud sur laquelle les développeurs et les utilisateurs citoyens (directeurs techniques, chefs de projet, développeurs juniors) peuvent collaborer à distance pour développer, gérer et orchestrer des intégrations.
3.2 Sauvegardes
Pour éviter toute perte de données, il est nécessaire d'effectuer des sauvegardes régulières. Contrairement à de nombreux fournisseurs, Alumio opte pour des sauvegardes basées sur une technologie de sauvegarde basée sur des fichiers. Cela permet à Alumio de restaurer ne serait-ce qu'un seul fichier. Il permet de réduire considérablement le temps de restauration et offre plus de confort aux développeurs à la recherche de fichiers spécifiques.
Alumio utilise R1Soft, leader du marché des logiciels de sauvegarde haut de gamme. Par défaut, la sauvegarde suppose 1 point de restauration, qui est complété par les « modifications » apportées au moment de la restauration. Ces sauvegardes sont effectuées en dehors de votre environnement cloud et sont principalement destinées à accéder rapidement à une copie complète de votre environnement en cas de sinistre. La sauvegarde est complète et sera enregistrée chaque nuit sur un serveur NAS (Network Attached Storage) du réseau, mais en dehors de votre environnement cloud. Cette sauvegarde peut être utilisée si votre serveur tombe en panne de façon inattendue. Dans le cadre des niveaux de service standard d'Alumio, la sauvegarde est effectuée 1 fois par jour et stockée pendant 7 jours.
Alumio peut effectuer des restaurations tous les jours pendant cette période. En outre, il est possible d'étendre et d'intensifier le calendrier de sauvegarde, d'envoyer les sauvegardes vers votre emplacement physique et de créer plusieurs points de restauration.
3.3 Reprise après sinistre
Alumio veille à ce que le rétablissement puisse toujours avoir lieu en cas de dysfonctionnements graves. La reprise après sinistre prend du temps. Par conséquent, le temps prévu varie selon les variantes de SLA. Le SLA par défaut indique qu'Alumio a besoin de 1 à 2 heures pendant les heures de bureau pour commencer à récupérer vos données. Le temps nécessaire pour récupérer l'application dans son intégralité dépend de la taille de votre application (nombre de Go) mais est de +/- 1 heure pour 10 Go de données à récupérer. La gestion de l'infrastructure Alumio repose également sur les politiques et procédures Amazon Disaster Recovery et Elastic Disaster Recovery.
3.4 Régions de déploiement et stratégie
Lorsque votre instance de la plateforme Alumio est déployée, elle choisit une région de déploiement principale pour votre entreprise en fonction de votre choix. Votre région de déploiement principale contient toutes vos données Alumio et c'est là que se déroulent les principaux processus de votre organisation. Cela concerne l'infrastructure d'hébergement fournie sur Amazon Web Services et Elastic Stack.
3.5 Déploiement multirégional
Alumio recommande aux entreprises une solution en cluster pour une infrastructure haute performance prête à être déployée dans le monde entier.
L'infrastructure haute performance est un système basé sur Kubernetes qui permet d'automatiser le déploiement, la mise à l'échelle et la gestion des applications conteneurisées dans plusieurs régions.
3.6 Évolutivité
En termes d'hébergement, il est aussi évolutif qu'Amazon Web Services peut l'offrir. Les fonctionnalités développées dans Alumio sont conçues dans un souci d'évolutivité. Cependant, toute la logique peut être remplacée par une logique personnalisée pour améliorer les performances et ainsi augmenter la taille.
La mise à l'échelle peut être effectuée selon la configuration, et celles-ci peuvent être configurées par région (par exemple, un pays). Cependant, cela n'est probablement pas obligatoire.
L'évolutivité entraîne une certaine complexité en ce qui concerne la configuration de la configuration Alumio. Sinon, la seule restriction concerne les limites de l'hébergement.
4. La performance Alumio
Garantir la continuité des activités et une disponibilité optimale de la connectivité logicielle
La plateforme d'intégration Alumio comporte plusieurs autres aspects essentiels qui contribuent à améliorer considérablement ses performances, sa sécurité et sa fiabilité :
4.1 Système de stockage et de mise en file d'attente robuste
Les packages de données en tant que « données en cours de traitement » sont temporairement stockés dans notre système de file d'attente robuste, en fonction du type de transformation et du package Alumio choisi, vers MySQL, Elastic, Apache Spark, Google GCP ou Amazon Redshift.
Ils sont utilisés pour garantir un traitement à grande échelle pour toutes les pages individuelles de données en transit. Si un système est hors ligne, l'architecture ci-dessus permet de suspendre et de reprendre avec élégance les activités de traitement des flux sans perte de données.
4.2 Mégadonnées
Alumio est conçu comme une plate-forme d'intégration haute performance pour aider les applications externes à être connectées et à gérer le Big Data. Les données sont transformées en paquets plus petits appelés « tâches Alumio ». Ceux-ci peuvent être transmis de manière évolutive à notre système vers des applications connectées en externe via notre API, soutenue par notre robuste mécanisme de mise en file d'attente.
4.3 DevOps
Alumio dispose d'une équipe DevOps complète qui surveille la plateforme Alumio 24h/24 et 7j/7. L'équipe DevOps est composée de personnes réparties sur plusieurs sites et chaque membre de l'équipe est entièrement équipé pour travailler à distance ou depuis un bureau Alumio.
4,4. Utilisation de normes de code
L'équipe principale d'Alumio a défini un processus de développement logiciel pour garantir qu'Alumio conserve son évolutivité, sa fiabilité et sa disponibilité à 100 %. Le SDLC est le processus suivi pour chaque projet de logiciel (composant) Alumio. Chaque projet consiste en un plan détaillé décrivant comment développer, maintenir, remplacer et modifier ou améliorer un logiciel spécifique. Cette méthodologie garantit la qualité de la plateforme d'intégration Alumio.
Alumio développe et améliore ses applications en utilisant de bonnes pratiques de cycle de vie du développement logiciel (SDLC) telles que :
Identifier les vulnérabilités provenant de sources externes pour favoriser le changement et améliorer le code.
Fournir des fonctionnalités d'authentification et de journalisation sécurisées.
Suppression des comptes de développement, des identifiants et des mots de passe des environnements de production.
Adhérer à des pratiques strictes de gestion des modifications pour les mises à jour du code et les correctifs.
Séparer les environnements de test et de développement de ceux de production.
Maintenir la séparation des tâches entre le personnel de développement et le personnel de soutien.
S'assurer que les informations personnelles identifiables (PII) ne sont pas utilisées dans les environnements de test.
Suppression des identifiants de test et de développement avant de migrer le code vers la production.
Impliquer la contribution des développeurs seniors et leur approbation pour toutes les modifications de code.
Réalisation de tests de fonctionnalité et de régression avant la mise en production.
Réalisation d'un test de performance pour chaque composant du code.
Maintien des procédures de backout pour préserver la haute disponibilité et l'intégrité.
Évaluation des vulnérabilités sur chaque version.
Réalisation de tests de pénétration annuels.
Réaliser des révisions de code régulières.
Documentation des modifications de code.
Vérification des failles de sécurité prescrites par l'Open Web Application Security Project (OWASP), telles que les failles d'injection, les dépassements de mémoire tampon, les erreurs cryptographiques, la gestion des erreurs, etc.
Application de correctifs matériels et logiciels, Alumio étant responsable des modifications de code et Amazon Web Services (AWS) étant responsable de la fourniture des correctifs matériels ; notre environnement virtuel nous permet d'appliquer les modifications sans interruption de service.
Suivre des pratiques de codage sécurisé conformément à une politique SDLC et répondre aux besoins de formation en sécurité de l'équipe de développement.
Les résultats commerciaux de l'architecture et de la sécurité Alumio
Une plateforme d'intégration de nouvelle génération pour des intégrations rapides, flexibles et pérennes
Maintenant que nous avons exploré en profondeur l'architecture, la conception de la sécurité, l'infrastructure évolutive et les avantages en termes de performances d'Alumio, résumons comment tout cela contribue à alimenter les fonctionnalités de la plateforme d'intégration Alumio. Voici quelques-uns des principaux cas d'utilisation et avantages commerciaux que l'Alumio iPaaS (plateforme d'intégration en tant que service) est conçu pour fournir :
1. Visibilité complète de l'intégration
Tous les flux de données des systèmes intégrés sont rendus visibles et accessibles sur une interface conviviale, évitant ainsi les problèmes de boîte noire et facilitant les configurations.
2. Intégration en temps réel
Assurez-vous que les données sont synchronisées et traitées en temps réel, transformez-les de manière flexible et utilisez le mappage et le routage des données pour réduire la duplication et améliorer la précision.
3. Détection automatique des erreurs
Un système de surveillance et de journalisation robuste permet de détecter et de notifier rapidement les erreurs d'intégration et les conflits d'API, ce qui permet de gagner du temps et de l'argent en termes de dépannage.
4. Automatisation des processus métier
Réduisez le travail manuel et la saisie de données en automatisant des processus tels que l'optimisation des produits, le recrutement, la facturation, la gestion des stocks, le marketing, le support client, etc.
5. Migrer les systèmes et les données existants
Déplacez et unifiez les données des systèmes existants grâce à l'ETL, faites migrer des champs personnalisés et des objets personnalisés, et implémentez des connecteurs préconfigurés pour intégrer les systèmes existants aux applications cloud.
6. Créez un écosystème informatique évolutif
Organisez toutes les intégrations et les données à partir d'un tableau de bord intuitif. Ajoutez ou remplacez des intégrations logicielles de manière agile. Débloquez les silos de données et augmentez les ressources de la plateforme à mesure que vos intégrations se développent.
7. Connectez toutes les données B2B
Connectez les données et les systèmes de tous les partenaires, fournisseurs et clients à l'aide de protocoles et de formats personnalisés standard tels que JSON, Edifact, X12, CSV, XML, cXML.
8. Créez des informations sur les données pour la BI, le ML et l'IA
Créez des lacs de données ou collectez simplement toutes les données provenant de différents systèmes connectés pour devenir une entreprise hyperapprenante, « axée sur le numérique et axée sur les données ».
9. Sécurité des données et continuité des activités
Évitez les interruptions du système et garantissez la continuité des activités grâce à des fonctionnalités de mise en cache, à la mise en mémoire tampon des données et à des procédures de réactivation pour vos intégrations et votre écosystème informatique.
10. Respect de la confidentialité
Centralisez toutes vos données et systèmes connectés sur un espace cloud sécurisé, contrôlez totalement les données et respectez les principales législations en matière de confidentialité telles que le RGPD, SOC2, CCPA, FERPA, HIPAA, etc.