Feature #13861
ferméUtilisateurs VIP
100%
Description
L’annuaire présente l’ensemble des utilisateurs de la plate-forme ainsi que certaines informations issues de l’annuaire d’entreprise AD. Ces informations sont définies dans le fichier de propriétés du domaine d’utilisateurs.
Dans certains cas il est souhaitable que certaines de ces informations ne soient pas consultables pour certains utilisateurs seulement (utilisateurs dits VIP).
Pour cela il faut apporter les modifications suivantes :
- Dans le fichier de propriétés du domaine, permettre d’identifier chaque information qui ne doit pas être affichée dans l’intranet grâce à une nouvelle propriété intitulée Information sensible.
- Dans la console d'administration, permettre d’identifier les utilisateurs pour lesquels les informations sensibles ne doivent pas apparaître dans l’annuaire et partout ailleurs. Pour cela, une nouvelle propriété (case à cocher)
- Masquer les informations sensibles viendra enrichir le compte de l’utilisateur.
- La plate-forme prendra en charge, de manière centralisée, la combinaison de ces deux nouveaux paramètres afin de ne pas afficher les informations sensibles pour les utilisateurs identifiés.
- Afin de faciliter la gestion, la liste des utilisateurs du domaine permettra d’être filtrée afin d’obtenir uniquement les utilisateurs concernés par les données sensibles. A cette occasion, ce filtre permettra également d’obtenir uniquement les utilisateurs bloqués ou les utilisateurs désactivés.
Fichiers
Mis à jour par Miguel Moquillon il y a environ un an
- Statut changé de New à In progress...
Mis à jour par Miguel Moquillon il y a environ un an
- dans le back office ?
- dans les annuaires ?
Mis à jour par Miguel Moquillon il y a environ un an · Edité
- Statut changé de In progress... à Resolved
L'objectif de la feature est de supporter la confidentialité de certaines données utilisateurs. Parce que confidentielles, ces données marquées comme sensibles, ne doivent pas être divulguées en dehors de l'utilisateur concerné, ainsi que des administrateurs de la plate-forme et des gestionnaires du domaine auquel appartient l'utilisateur.
Le mécanisme qui a été réalisé ici s'appuie sur plusieurs axes :- La confidentialité des données ne doit pas concerner uniquement les personnes importantes comme, par exemple, des managers sur des hauts postes, mais n'importe quelle personne qui demande à ce que ses données sensibles ne soient pas divulguées ; ce peut être des personnes pouvant faire l'objet de persécution.
- Pour l'instant, seules les domaines utilisateurs de type LDAP sont pris en compte.
- Les données utilisateurs pouvant être sensibles sont définis dans le descripteur du domaine (
org/silverpeas/domains/domain[NOM DU DOMAINE].properties
). Un exemple de déclaration d'une donnée utilisateur pouvant être sensible est donnée ici :property_6.Name = phone property_6.Type = STRING property_6.MapParameter = homePhone property_6.Sensitive = true
- Par défaut, les données déclarées comme pouvant être sensibles ne le sont pas. Ces données le deviennent à l'activation explicite de leur sensibilité par l'administrateur ou par le gestionnaire du domaine au niveau de chaque utilisateur dans le backoffice.
- Il est possible, dans le backoffice, de désactiver la sensibilité des données d'un utilisateur.
- En dehors des administrateurs de Silverpeas et du gestionnaire du domaine concerné, les données sensibles des utilisateurs ne sont pas divulguées.
- Définition d'un nouvel attribut pour chaque propriété utilisateur dans le descripteur du domaine :
Sensitive
(cf. l'exemple précédent). Cet attribut est un booléen et il indique si cette propriété peut être sensible. - L'activation et la désactivation de la sensibilité des données se fait sur la page de l'utilisateur sélectionné dans le module d'administration du domaine dans le backoffice (via une fonction du menu QVF).
- Une fonction dans le menu QVF du domaine dans le backoffice permet d'afficher la liste des utilisateurs pour lesquels la confidentialité des données marquées comme sensibles a été activée. Il est possible sur cette page de désactiver la sensibilité d'un ou plusieurs utilisateurs.
- En dehors des administrateurs de Silverpeas et du gestionnaire du domaine concerné, les données sensibles des utilisateurs sont retirées de ses informations. Ceci a été centralisé dans la classe
DefaultOrganizationController
: ce qui permet d'adresser aussi bien les demandes par web service que celles par la navigation utilisateur. Par conséquent, les données sensibles ne sont pas présentées dans les annuaires.
Mis à jour par Miguel Moquillon il y a environ un an
- Assigné à changé de Miguel Moquillon à Aurore Allibe
Aurore, je t'ai assigné cette feature pour tu puisses prendre la main.
L'objectif est d'indiquer visuellement les informations qui ont été définies comme potentiellement sensibles dans les fiches utilisateurs dans le backoffice. Seuls les utilisateurs des domaines LDAP sont pour l'instant concernés.
Actuellement, pour indiquer qu'une donnée est sensible dans la page d'administration d'un utilisateur, j'ai utilisé un picto à côté de l'information (à droite de celle-ci). Ce picto est l'icône important.gif
qui affiche un point d'exclamation rouge.
Mis à jour par Aurore Allibe il y a environ un an
- Fichier formulaire-admin-user.png formulaire-admin-user.png ajouté
- Fichier lecture-admin-user.png lecture-admin-user.png ajouté
- % réalisé changé de 0 à 50
Il s'agit de ces écrans ?
Est-ce qu'on a intégré également la possibilité de passer l'utilisateur avec l'option "Données sensibles activées" dans le formulaire de création / modification (ici appelé formulaire-admin-user.png)
Mis à jour par Sebastien Vuillet il y a environ un an
Aurore Allibe a écrit (#note-5):
Il s'agit de ces écrans ?
Est-ce qu'on a intégré également la possibilité de passer l'utilisateur avec l'option "Données sensibles activées" dans le formulaire de création / modification (ici appelé formulaire-admin-user.png)
Oui c'est bien ces écrans. Pour ta question, je pense qu'il faut rester cohérent avec d'autres statut, comme le statut "bloqué".
Mis à jour par Miguel Moquillon il y a environ un an
Il s'agit de ces écrans ?
Il s'agit du second écran (lecture-admin-user.png)
Est-ce qu'on a intégré également la possibilité de passer l'utilisateur avec l'option "Données sensibles activées" dans le formulaire de création / modification (ici appelé formulaire-admin-user.png)
Non. Seulement dans la fiche de l'utilisateur une fois celui-ci créé. En fait, seuls les domaines LDAP sont concernés pour l'instant par la feature. Ces derniers sont donc créés et mis à jours via la synchronisation avec le service d'annuaire distant et non par la page de création d'un utilisateur.
Mis à jour par Miguel Moquillon il y a environ un an
A noter que, dans les annuaires, les données sensibles des utilisateurs ne sont présentées qu'aux administrateurs de la plate-forme et gestionnaires du domaine.
Mis à jour par Miguel Moquillon il y a environ un an
- Fichier Données sensibles non activées d_un utilisateur LDAP.png Données sensibles non activées d_un utilisateur LDAP.png ajouté
- Fichier Données sensibles activées d_un utilisateur .png Données sensibles activées d_un utilisateur .png ajouté
Voici quelques captures d'écrans actuels en attendant tes ajustements.
Actuellement, les données potentiellement sensibles sont identifiées par un picto de point d'exclamation.
Mis à jour par David Lesimple il y a environ un an
- Lié à Feature #11353: Utilisateurs VIP ajouté
Mis à jour par Miguel Moquillon il y a environ un an
J'ai créer aussi des PR pour la branche master-jackrabbit :
https://github.com/Silverpeas/Silverpeas-Core/pull/1310
https://github.com/Silverpeas/Silverpeas-Components/pull/846
Mis à jour par Yohann Chastagnier il y a environ un an
- Version cible mis à Version 6.4
Question pour Sébastien
Considérons un client qui ne porte pas d'attention particulière à cette nouvelle fonctionnalité. De fait, il n'y aura aucune modification au niveau du paramétrage technique du domaine (fichier de propriétés) et aucune donnée ne sera considérée comme sensible.
Est-ce qu'il faut dans ce cas de figure (relativement général) afficher dans l'administration, pour un domaine LDAP, la colonne indiquant si un utilisateur a des données sensibles ou pas, plus les fonctions relatives à cette fonctionnalités dans le back-office ?
Pour aider à la réflexion dans ce contexte :- Miguel propose d'afficher dans tous les cas de paramétrage technique afin que les administrateurs aient connaissance de cette fonctionnalité
- Personnellement, je pense que sans plus d'explication dans l'interface, cette fonctionnalité ne devrait pas apparaître dans les écrans, notamment pour éviter d'ajouter des informations dans le tableau sans valeurs ajoutées
Mis à jour par Sebastien Vuillet il y a environ un an
Et bien sans avoir lu vos points de vues, je serais partisan d'afficher la fonctionnalité pour que les administrateurs se questionnent sur cette possibilité.
Après on peut ajouter une info bulles pour expliquer de quoi il relève
Mis à jour par Yohann Chastagnier il y a environ un an
Je suis assez surpris que nos réflexions ne soient pas prises en compte.
Donc, il faut afficher dans toutes les circonstances de paramétrage technique les informations de sensibilité dans l'administration qui sont inutiles mais qui peuvent faire se poser des questions aux administrateurs de toutes les instances Silverpeas. Il en va de même pour la fonctionnalité qui permet de lister tous les utilisateurs ayant des données sensibles (accessible depuis le menu QVVF de la liste des utilisateurs).
Que devrait indiquer l'infobulle concrètement ? (Du coup, je ne passe pas de temps à proposer quelque chose)
En faut-il une pour l'action dans le menu QVVF ?
Aussi, dans ce choix et l'éventualité que des administrateurs posent leurs questions à Silverpeas, il y a un potentiel souci de cohérence quant à la gestion de l'e-mail de l'utilisateur d'un domaine LDAP. Il n'est pas rare que l'e-mail d'un compte utilisateur soit également l'identifiant de ce dernier. De fait, il n'est par nature pas une donnée sensible puisque chaque utilisateur a une idée de comment il est structuré dans leur domaine. A cause de contraintes techniques, cependant, il a été fait le choix en accord avec l'entité à l'origine de la demande (en ne prenant donc pas en compte la situation de toutes les autres) que dès lors qu'une donnée est indiquée comme sensible dans le fichier de propriétés (autre que l'e-mail), alors l'e-mail l'est aussi.
Mis à jour par Aurore Allibe il y a environ un an
- Fichier lecture-admin-user-v2.png ajouté
- Fichier tableau-des-utilisateurs.png tableau-des-utilisateurs.png ajouté
- Fichier info-sensible.png info-sensible.png ajouté
On part sur une présentation comme ça?
L'intégration de l'icône doit inclure un title pour le survol : <img alt="donnée sensible" src="/silverpeas/util/icons/info-sensible.png" title="donnée sensible" />
Pour les fiches des utilisateurs pour lesquels données sensibles n'est pas activé, il ne faut pas que le symbole apparaisse.
Mis à jour par Sebastien Vuillet il y a environ un an
Yohann Chastagnier a écrit (#note-14):
Je suis assez surpris que nos réflexions ne soient pas prises en compte.
Donc, il faut afficher dans toutes les circonstances de paramétrage technique les informations de sensibilité dans l'administration qui sont inutiles mais qui peuvent faire se poser des questions aux administrateurs de toutes les instances Silverpeas. Il en va de même pour la fonctionnalité qui permet de lister tous les utilisateurs ayant des données sensibles (accessible depuis le menu QVVF de la liste des utilisateurs).
Que devrait indiquer l'infobulle concrètement ? (Du coup, je ne passe pas de temps à proposer quelque chose)
En faut-il une pour l'action dans le menu QVVF ?Aussi, dans ce choix et l'éventualité que des administrateurs posent leurs questions à Silverpeas, il y a un potentiel souci de cohérence quant à la gestion de l'e-mail de l'utilisateur d'un domaine LDAP. Il n'est pas rare que l'e-mail d'un compte utilisateur soit également l'identifiant de ce dernier. De fait, il n'est par nature pas une donnée sensible puisque chaque utilisateur a une idée de comment il est structuré dans leur domaine. A cause de contraintes techniques, cependant, il a été fait le choix en accord avec l'entité à l'origine de la demande (en ne prenant donc pas en compte la situation de toutes les autres) que dès lors qu'une donnée est indiquée comme sensible dans le fichier de propriétés (autre que l'e-mail), alors l'e-mail l'est aussi.
Je dis simplement que je suis du même avis que Miguel de manière impartial.
L'infobulle sur la colonne pourrait contenir : "Les informations sensibles ne seront pas affichés dans les annuaires".
Pas d'infobulle dans le menu QVF.
Pour l'email c'est en effet discutable. Si on rend sa sensibilité paramétrable qu'est est l'impacte sur le développement ?
Mis à jour par Sebastien Vuillet il y a environ un an
Aurore Allibe a écrit (#note-15):
On part sur une présentation comme ça?
L'intégration de l'icône doit inclure un title pour le survol : <img alt="donnée sensible" src="/silverpeas/util/icons/info-sensible.png" title="donnée sensible" />Pour les fiches des utilisateurs pour lesquels données sensibles n'est pas activé, il ne faut pas que le symbole apparaisse.
Très bien
Mis à jour par Aurore Allibe il y a environ un an
- Fichier lecture-admin-user-desactive.png ajouté
- Fichier lecture-admin-user-v4.png ajouté
Peut être comme ça ? c'est plus clair ?
Mis à jour par Miguel Moquillon il y a environ un an
Sebastien Vuillet a écrit (#note-16):
Pour l'email c'est en effet discutable. Si on rend sa sensibilité paramétrable qu'est est l'impacte sur le développement ?
Oui. Ce n'est pas pour rien que je t'ai demandé si, pour le client, l'adresse email est de-facto une donnée potentiellement sensible.
Mis à jour par Sebastien Vuillet il y a environ un an
Mis à jour par Sebastien Vuillet il y a environ un an
Sebastien Vuillet a écrit (#note-20):
Aurore Allibe a écrit (#note-18):
Peut être comme ça ? c'est plus clair ?
En effet, c'est mieux
Miguel Moquillon a écrit (#note-19):
Sebastien Vuillet a écrit (#note-16):
Pour l'email c'est en effet discutable. Si on rend sa sensibilité paramétrable qu'est est l'impacte sur le développement ?
Oui. Ce n'est pas pour rien que je t'ai demandé si, pour le client, l'adresse email est de-facto une donnée potentiellement sensible.
Et du coup ? Si on permet le masquage/non masquage de cette données, c'est quoi l'impacte en terme de développement ?
Mis à jour par Miguel Moquillon il y a environ un an
Aurore Allibe a écrit (#note-18):
Peut être comme ça ? c'est plus clair ?
Pour le premier écran, je trouve que le picto est trop accolé sur les intitulés de champs dans le panneau de droite.
Je le verrais comme celui des données sensibles. Mais ce n'est que mon impression et mon avis.
Pour le texte explicatif des pictos, en lieu est place de "Données potentiellement sensibles", je mettrais plutôt "Donnée pouvant être sensible" (au singulier parce que le picto est attachée à chaque donnée concernée). En effet, le "potentiellement" ajoute dans ma tête une alarme de type "attention ces données ont fuitées à l'extérieur". Qu'en est-il pour vous ?.
Et le texte "Données sensibles activées", je le remplacerai bien par quelque chose comme "La sensibilité de la donnée est activée". Le mot "sensibilité" est utilisée dans le texte initial comme qualificatif et le sens général signifie plus que la donnée même, qualifiée de sensible, a été activée.
Mis à jour par Miguel Moquillon il y a environ un an
Sebastien Vuillet a écrit (#note-21):
Et du coup ? Si on permet le masquage/non masquage de cette données, c'est quoi l'impacte en terme de développement ?
Seb, on en a déjà discuté au début et tu avais donné ton accord. On va peut être éviter de revenir là dessus. Je ne sais plus trop ce qui compliquait (le fait que c'est une propriété à part des autres). Pas envie d'y revenir dessus. Surtout pour 1 seul client. S'il y a une demande en ce sens, ce sera l'occasion d'une nouvelle commande.
Mis à jour par Aurore Allibe il y a environ un an
- Fichier lecture-admin-user-desactive-v5.png lecture-admin-user-desactive-v5.png ajouté
- Fichier lecture-admin-user-v5.png lecture-admin-user-v5.png ajouté
Voilà avec les petites corrections de texte
Mis à jour par Aurore Allibe il y a environ un an
- Fichier
lecture-admin-user-v4.pngsupprimé
Mis à jour par Aurore Allibe il y a environ un an
- Fichier
lecture-admin-user-v2.pngsupprimé
Mis à jour par Aurore Allibe il y a environ un an
- Fichier
lecture-admin-user-desactive.pngsupprimé
Mis à jour par Sebastien Vuillet il y a environ un an
Miguel Moquillon a écrit (#note-23):
Sebastien Vuillet a écrit (#note-21):
Et du coup ? Si on permet le masquage/non masquage de cette données, c'est quoi l'impacte en terme de développement ?
Seb, on en a déjà discuté au début et tu avais donné ton accord. On va peut être éviter de revenir là dessus. Je ne sais plus trop ce qui compliquait (le fait que c'est une propriété à part des autres). Pas envie d'y revenir dessus. Surtout pour 1 seul client. S'il y a une demande en ce sens, ce sera l'occasion d'une nouvelle commande.
Bon alors on acte ce fonctionnement et on fera évoluer cette fonctionnalité si cela est nécessaire ultérieurement.
Mis à jour par Aurore Allibe il y a environ un an
- Fichier bulle-attention.png bulle-attention.png ajouté
- Fichier code-et-css.txt code-et-css.txt ajouté
Pour l'intégration de l’icône "Donnée pouvant être sensible". Sinon on regarde demain
Mis à jour par Yohann Chastagnier il y a environ un an
Précisions :
L'information de l'e-mail est une donnée qui est considérée comme pouvant être sensible quel que soit le paramétrage d'un domaine LDAP via son fichier de propriétés.
Par conséquent, ce n'est plus la combinaison entre le paramétrage d'un domaine et l'information de sensibilité d'un utilisateur qui permet d'indiquer si les informations sensibles peuvent être affichées ou pas. Seule l'information de sensibilité d'un utilisateur le permet.
Mis à jour par Miguel Moquillon il y a environ un an
- Assigné à changé de Aurore Allibe à Miguel Moquillon
J'ai intégré le travail d'Aurore et corrigé les points relevés par Yohann lors de sa phase de validation du PR.
Mis à jour par Miguel Moquillon il y a environ un an
Concernant la fonctionnalité, en dehors du filtrage des utilisateurs selon leur état, dans la page du domaine des utilisateurs, voici les points adressés.
Objectif¶
L'objectif de la fonctionnalité, à l'heure du RGPD et des politiques de protection des données utilisateurs, est de pouvoir cacher des informations sur un utilisateur de Silverpeas. Autrement dit de rendre celles-ci confidentielles. Cet utilisateur peut être un VIP comme indiqué dans l'intitulé de ce ticket ou un simple utilisateur qui requière la confidentialité de certaines de ses informations (par exemple pour éviter des harcèlements)
Le client, derrière cette fonctionnalité, souhaite utilisé celle-ci pour des VIP. Mais, évidemment, comme dans toute fonctionnalité intégrée dans le produit, nous nous devons prendre du recul sur les fonctionnalités demandées et l'ouvrir pour des cas plus généraux, lorsque c'est pertinent.
Portée¶
La réalisation de cette fonctionnalité est une première ébauche qui peut être amenée à évoluer selon les besoins.Aussi, certains choix ont été faits :
- seul les domaines d'utilisateurs hébergées par un annuaire LDAP (Active Directory, OpenLDAP, ...) sont concernés
- pas de mécanisme de désactivation ou d'activation de la fonctionnalité ; la fonctionnalité est toujours active
- l'adresse email est automatiquement marquée comme potentiellement sensible
Fonctionnement¶
Deux étapes sont nécessaires pour profiter de la fonctionnalité :- définir dans le descripteur du domaine des utilisateurs de type LDAP les propriétés de l'utilisateur qui peuvent être sensibles
- dans la fiche de l'utilisateur, dans le Back Office de Silverpeas, activer la confidentialité des données qui ont été marquées précédemment comme potentiellement sensible, en sus de l'adresse email.
Une donnée de l'utilisateur, dans sa fiche, dans le Back Office, est identifiée comme pouvant être sensible par un picto d'un point d'exclamation. Une donnée marquée comme sensible n'est pas encore sensible. Il faut, pour cela, activer la sensibilité des données de l'utilisateur. Une fois activée, les données sensibles, autrement dit confidentielles, qui ne doivent pas être, par conséquent, divulguées, sont identifiées dans la fiche de l'utilisateur, dans le Back Office, par le picto d'un cadenas.
Conséquence¶
L'activation de la sensibilité des données pour un utilisateur conduit aux comportements suivants :- les données sensibles ne sont pas indexées avec les informations de l'utilisateur : il ne pourra pas être retrouvé par une recherche sur l'une d'elles
- la fiche de l'utilisateur, que ce soit dans l'annuaire générale ou dans l'annuaire des experts, ne contiendra aucune des données sensibles
- le profil de l'utilisateur ne contiendra aucune des données sensibles
- seul les administrateurs de la plate-forme, les gestionnaires du domaine de l'utilisateur, et l'utilisateur même pourront voir les informations sensibles.
Toutefois, même si l'adresse email est une donnée sensible et est cachée, l'utilisateur pourra être notifiée ou contactée via Silverpeas par un autre utilisateur. Le mécanisme d'envoi de la notification ou du message est assuré par Silverpeas ; si ces derniers doivent être communiqués par email à l'utilisateur, ils le seront. (Ceci ne nécessite pas la connaissance de l'adresse email par l'autre utilisateur.)
Mis à jour par Yohann Chastagnier il y a environ un an
Je n'ai pas encore réalisé tous mes tests.
Dans un premier temps, comme il restait des travaux au niveau de l'administration de Silverpeas, je me suis focalisé sur l'affichage des informations sensibles dans les différentes fonctionnalités de Silverpeas.
Un point sur l'indexation des utilisateurs avait été identifié et remonté au travers d'autres échanges. Il a été pris en compte et va être prochainement vérifié.
J'ai identifié 2 autres anomalies au niveau de l'application Newsletter.
Les pré-requis pour les reproduire sont les suivants :
- la sensibilité des données est activée pour tous les utilisateurs de la plateforme (pas d’ambiguïté)
UPDATE st_user SET sensitivedata = true;
- avoir une instance de ce composant avec des managers et des abonnées internes
- sélectionner Envoi par mail au niveau du paramètre d'instance Abonnés internes
- des newsletter en cours d'édition
- réaliser tous les cas de test avec un compte utilisateur n'ayant pas accès à l'administration de Silverpeas
Cas de test | Résultat obtenu | Résultat attendu |
---|---|---|
- se diriger vers une newsletter en cours d'édition - depuis le menu QVVF, sélectionner Envoyer la lettre aux gestionnaires |
Les gestionnaires ne reçoivent pas de mail | Chacun des gestionnaires reçoit la newsletter par mail |
- se diriger vers une newsletter en cours d'édition - depuis le menu QVVF, sélectionner Faire paraître la lettre |
Les abonnés internes ne reçoivent pas de mail | Chacun des abonnés internes reçoit la newsletter par mail |
Mis à jour par Yohann Chastagnier il y a environ un an
- Statut changé de Resolved à Closed
- % réalisé changé de 50 à 100
Les travaux réalisés pour le fonctionnel détaillé au travers des différentes notes de ce REDMINE sont validés et intégrés dans master et master-jackrabbit.
A noter qu'une réindexation des utilisateurs, des instances Whitepages et Yellowpages est souhaitable dans le cas où la sensibilité des données des utilisateurs est bien utilisée sur une plate-forme.
Au niveau technique, des signatures de méthode ont été modifiées et des projets dépendants peuvent être impactés.
C'est le cas de celui mobile qui a été pris en charge dans le cadre de cette intégration.
Mis à jour par David Lesimple il y a 12 mois · Edité
Sous Microsoft SQL Server niveau de compatibilité SQL Server 2017, le script de migration de la table ST_User ne passe pas :
10:03:30.2771805 [migrate] Upgrade of the module busCore from version 044 to version 045 10:03:30.3397258 [migrate] Upgrade of the module busCore to version 045: [FAILURE] 10:03:30.3397258 [migrate] Migration(s) of module busCore: [FAILURE] 10:03:30.3397258 [migrate] Nom de colonne non valide : 'sensitiveData'. java.sql.BatchUpdateException: Nom de colonne non valide : 'sensitiveData'. at net.sourceforge.jtds.jdbc.JtdsStatement.executeBatch(JtdsStatement.java:1069)
Mis à jour par Miguel Moquillon il y a 12 mois
J'ai corrigé le soucis. C'est un problème de gestion transactionnel dans MS-SQL server. Le script SQL de migration est exécuté dans une seule transaction sans commit intermédiaire et sans cache (ce qui fait qu'une modification par une instruction n'est pas vue par la suivante). Il a été donc nécessaire d'éclater le script en deux, chacun étant exécuté l'un à la suite de l'autre, avec un commit entre les deux.