Accueil Blog Mardi technique : Chiffrer les champs dans la base de données Acumatica

Mardi technique : Chiffrer des champs dans la base de données Acumatica

Doug Johnson | 21 juillet 2022

Le modèle de sécurité d'Acumatica prend en compte plusieurs niveaux de vulnérabilité. L'article du mardi technique d'aujourd'hui décrit comment les données de la base de données de l'ERP en nuage Acumatica peuvent être cryptées pour garantir la confidentialité et la sécurité si un intrus obtient un accès direct à la base de données.

Mardi technique : Chiffrer des champs dans la base de données Acumatica

Couches de sécurité Acumatica

Sécurité physique

Tout le code de l'application est exécuté sur le serveur, qui peut être déployé sur place ou dans un centre de données sécurisé.

Sécurité des transmissions

Chaque session est authentifiée, toutes les communications sont cryptées sans qu'il soit nécessaire de recourir à un VPN.

Sécurité du stockage

Les données sont stockées sur le serveur et cryptées. Le seul accès aux données sensibles se fait par le biais de la logique d'entreprise.

Sécurité d'accès

Les contrôles d'accès au niveau de l'objet fournissent un accès basé sur le rôle à des écrans, des requêtes, des champs et des rapports spécifiques. Acumatica fournit une sécurité fédérée (support SSO avec Azure AD / ADFS / Google) et une authentification à deux facteurs.

Sécurité des données

Les autorisations d'accès s'étendent à des comptes, sous-comptes, clients et autres objets spécifiques pour tous les écrans, requêtes et rapports.

Sécurité des applications

L'ensemble du code de l'application et de la logique de vérification est géré sur le serveur afin d'éliminer la manipulation des données côté client.

Le modèle de sécurité d'Acumatica protège les données à travers toutes les couches de sécurité (voir l'encadré de droite). Les données sont ainsi protégées lors de leur saisie, de leur transmission, de leur récupération et lorsqu'elles sont au repos.

Cet article met l'accent sur sécurité du stockage pour protéger vos données Acumatica lorsqu'elles résident dans la base de données.

Cryptage des champs dans la base de données Acumatica

Le cryptage des données au repos garantit la confidentialité et la sécurité si un intrus accède à votre base de données. L'accès non autorisé comprend l'accès physique à votre matériel de stockage ou une connexion non autorisée à votre serveur de base de données.

L'inconvénient du cryptage au repos réside dans les exigences de traitement supplémentaires pour votre base de données et votre serveur d'application. Pour cette raison, Acumatica fournit un mécanisme qui vous permet de crypter sélectivement les champs de données.

Par défaut, Acumatica crypte les données sensibles telles que les numéros de carte de crédit, les informations de compte e-mail, les informations de compte SMS et les mots de passe. Aujourd'hui, vous apprendrez à crypter des champs supplémentaires.

Stratégie Acumatica

Acumatica tire parti de l'algorithme RSA qui fait partie de .NET. Toutes les clés sont gérées dans les coulisses, de sorte qu'il est assez facile à mettre en œuvre.

Les données sont cryptées avant d'être écrites sur le disque et décryptées lorsqu'elles sont relues en mémoire. Comme de plus en plus de champs sont cryptés, le serveur d'application a plus de travail.

Certains clients d'Acumatica ont crypté l'ensemble de la base de données à l'aide d'outils du serveur SQL. Cependant, ce type de cryptage n'a pas été testé et Acumatica ne garantit donc pas son fonctionnement. Cela n'est possible que si les clients travaillent dans un environnement de cloud privé.

Mise en œuvre d'Acumatica

Pour réduire la charge du serveur, Acumatica ne crypte pas tous les champs de la base de données. En utilisant un projet de personnalisation, je peux ajouter l'attribut PXRSACryptString à n'importe quel champ texte dans l'application et il sera crypté.

Étape 1 : Créer un projet de personnalisation

Mardi de la technologie

Étape 2 : Ouvrez le projet et ajoutez les écrans contenant les champs que vous souhaitez crypter.

Mardi de la technologie

Étape 3 : Ouvrez l'écran et trouvez le champ que vous souhaitez crypter

Dans cet exemple, je sélectionne le nom du compte commercial dans l'écran Compte commercial.

Mardi de la technologie

Étape 4 : Personnaliser les attributs des champs

Pour crypter le champ, remplacez l'attribut PXDBString par l'attribut PXRSACryptString comme indiqué ci-dessous. J'ai également ajouté le paramètre IsViewDecrypted et lui ai attribué la valeur True. Si vous n'ajoutez pas IsViewDecrypted, vous ne verrez que ****** dans le champ de l'interface utilisateur.

Mardi de la technologie

La déclaration peut être différente selon les objets. Par exemple, dans la description de l'article en stock, j'ai remplacé l'attribut PXDBLocalizableString par l'attribut PXRSACryptString.

Étape 5 : Publier votre projet de personnalisation

En suivant les procédures habituelles, j'ai publié mon projet de personnalisation.

La publication de la personnalisation ne crypte pas les données existantes. La personnalisation entraîne le cryptage des données lorsque de nouvelles données sont ajoutées ou lorsque des données existantes sont modifiées et sauvegardées.

Une fois cette opération effectuée, tous les nouveaux enregistrements que vous ajoutez ou tous les anciens champs que vous modifiez seront cryptés dans la base de données.

Tester les résultats

Pour tester mes résultats, j'ai ouvert l'écran Compte d'entreprise et j'ai ajouté un nouveau compte d'entreprise.

Mardi de la technologie

J'ai également changé le nom du compte d'entreprise sur Alta Ace en Alta Ace Secure.

Ensuite, j'ai ouvert SQL Server Management Studio et créé une requête pour visualiser mes données.

Mardi de la technologie

Notez que le nom du compte est crypté, de sorte que si je n'accède pas aux informations via l'application, je ne pourrai pas voir les données.

Conclusion : Chiffrer les données au repos dans Acumatica

Acumatica offre la possibilité de crypter les données lorsqu'elles résident dans votre base de données. Par défaut, les données sensibles sont cryptées, mais vous pouvez facilement modifier Acumatica pour crypter des champs supplémentaires. Cette implémentation vous permet de crypter sélectivement les champs de données textuelles afin de minimiser la charge du serveur.

Certains clients du cloud privé ont crypté l'ensemble de la base de données à l'aide d'outils de cryptage SQL, mais ce scénario n'est pas régulièrement testé par Acumatica.

Le cryptage des données au repos fait partie de la sécurité du stockage, qui est un élément d'un modèle de sécurité des données plus large qu'Acumatica a mis en place pour garantir la confidentialité, la protection et la sécurité des données.

Si cet article vous a été utile, la série Technical Tuesday d'Acumatica propose des modes d'emploi encore plus détaillés, tels que l'impression d'un chèque MICR ou la modification de la page d'accueil d'Acumatica Portal. Contactez notre équipe pour toute question ou pour planifier une démonstration du logiciel ERP d'Acumatica.

Lire d'autres articles du mardi technique

Articles populaires

Messages récents

Auteur du blog

Vice-président de la gestion des produits chez Acumatica.
Catégories : Produit, Formation

Recevez les mises à jour du blog dans votre boîte de réception.

S'abonner