Créer des utilisateurs SQL Server
Pour un accès sécurisé aux bases de données SEI, il est fortement recommandé de créer des comptes d'utilisateur SQL Server dédiés au lieu d'utiliser les identifiants par défaut sa ou d'autres comptes administratifs. Cette approche améliore la sécurité et offre un contrôle plus granulaire sur l'accès à la base de données.
SEI fournit des scripts SQL pour créer des utilisateurs avec des permissions administratives ou limitées. Ces scripts doivent être exécutés par un utilisateur ayant des droits administratifs sur le SQL Server. Après l'installation de SEI, exécutez le script approprié pour créer des comptes de service pour SEI. Les comptes dédiés simplifient la gestion des mots de passe et s'alignent sur les pratiques de sécurité recommandées, car ils ne sont pas soumis aux mêmes exigences que le compte sa ou les utilisateurs basés sur Windows.
Les utilisateurs SQL Server dédiés ne doivent avoir que les permissions nécessaires à leur usage prévu. Cela s'applique aux comptes pour Central Point, DataSync et tout utilisateur configuré via la page Environnements et Sources de données.
Exécutez tous les scripts avec un utilisateur qui dispose de permissions administratives sur SQL Server.
Étapes principales
| Étape | Description |
|---|---|
| Créer des utilisateurs administratifs | Les utilisateurs administratifs gèrent tous les composants système et bases de données SEI avec un accès complet. SEI fournit des scripts SQL pour automatiser la création de ces utilisateurs, garantissant ainsi les permissions appropriées. |
| Créer des utilisateurs avec permissions minimales | Les utilisateurs avec des droits restreints ne peuvent accéder qu'aux schémas et opérations nécessaires aux fins de reporting ou d'intégration. |
| Configuration d'accès supplémentaire | Ajustements de permissions à l'aide des instructions GRANT ou DENY pour affiner l'accès à des schémas ou tables spécifiques. |
Créer des utilisateurs administratifs
Le script crée des utilisateurs dédiés pour chaque base de données clé :
- Base de données de configuration SEI : Crée l'utilisateur SEI.
- Base de données BI License : Crée l'utilisateur BILicense si vous exécutez une version antérieure à la version 2026 Release 1.
- Entrepôt de données SEI (SEICube) : Crée l'utilisateur SEICube avec les autorisations nécessaires.
- Base de données ERP : Fournit le compte administratif avec accès aux schémas pertinents.
Le script est conçu pour des installations où les bases de données sont hébergées sur un seul serveur. Si votre environnement s'étend sur plusieurs serveurs (par exemple, bases de données d'application sur un serveur et données d'entrepôt sur un autre), exécutez uniquement les sections pertinentes du script sur chaque serveur respectif.
Exécutez le script Administrative_user.sql fourni en tant qu'administrateur sur SQL Server et suivez les instructions du script pour fournir les noms d'utilisateur, mots de passe et détails de schéma pour votre environnement.
Le script d'exemple est basé sur un environnement Sage X3. Ajustez les noms de schéma et les paramètres de dossier pour les adapter à votre propre configuration ERP.
/*
Script pour créer des utilisateurs SQL Server avec des permissions administratives.
Exécutez ce script en tant qu'utilisateur avec des privilèges administratifs sur le SQL Server.
Instructions :
- Remplacez "userWithAdministrativePermissions" par le nom d'utilisateur SQL souhaité.
- Spécifiez un mot de passe sécurisé pour la connexion.
- Remplacez "NECTARI_CUSTOM_SCHEMA" par le nom réel du schéma Nectari/SEI.
- Remplacez "X3FOLDER" par le nom correct du dossier ERP utilisé par Nectari/SEI.
- Ajustez les noms de base de données et de schéma pour votre environnement si nécessaire.
Remarque :
- Vous pouvez restreindre davantage les GRANT et l'appartenance aux rôles si une sécurité plus stricte est requise.
- Pour les environnements avec des composants distribués, exécutez uniquement les parties pertinentes aux bases de données locales.
*/
CREATE LOGIN userWithAdministrativePermissions WITH PASSWORD = '' -- Crée un login au niveau du serveur
-- Entrepôt de données Nectari
use [NectariCube]
CREATE USER userWithAdministrativePermissions FOR LOGIN userWithAdministrativePermissions
ALTER ROLE db_ddladmin add member userWithAdministrativePermissions DDL/admin rights --Droits DDL/admin
ALTER ROLE db_datareader add member userWithAdministrativePermissions -- Permissions SELECT sur toutes les tables
ALTER ROLE db_datawriter add member userWithAdministrativePermissions -- INSERT, UPDATE, DELETE sur toutes les tables
GRANT EXEC to userWithAdministrativePermissions -- Exécuter des procédures stockées
-- Base de données ERP (par exemple, Sage X3)
use [x3]
CREATE USER userWithAdministrativePermissions FOR LOGIN userWithAdministrativePermissions
GRANT ALTER on SCHEMA :: NECTARI_CUSTOM_SCHEMA to userWithAdministrativePermissions -- Droits FULL ALTER sur le schéma personnalisé
GRANT SELECT,INSERT,UPDATE,DELETE,EXEC on SCHEMA :: NECTARI_CUSTOM_SCHEMA to userWithAdministrativePermissions -- Droits FULL DML et EXEC sur le schéma personnalisé
GRANT SELECT on SCHEMA :: X3FOLDER to userWithAdministrativePermissions -- Accès en lecture seule à toutes les tables du dossier ERP
GRANT CREATE TABLE to userWithAdministrativePermissions -- Permet la création de table
GRANT ALTER on SCHEMA :: X3FOLDER to userWithAdministrativePermissions -- Permet la création de trigger
-- Base de données de configuration
use [NECTARI]
CREATE USER userWithAdministrativePermissions FOR LOGIN userWithAdministrativePermissions
ALTER ROLE db_ddladmin add member userWithAdministrativePermissions -- Droits DDL/admin
ALTER ROLE db_datareader add member userWithAdministrativePermissions -- Permissions SELECT
ALTER ROLE db_datawriter add member userWithAdministrativePermissions -- INSERT, UPDATE, DELETE
-- Base de données de licence (uniquement pour les versions antérieures à la version 2026 Release 1)
use [BILicense]
CREATE USER userWithAdministrativePermissions FOR LOGIN userWithAdministrativePermissions
ALTER ROLE db_ddladmin add member userWithAdministrativePermissions -- Droits DDL/admin
ALTER ROLE db_datareader add member userWithAdministrativePermissions -- Permissions SELECT
ALTER ROLE db_datawriter add member userWithAdministrativePermissions -- INSERT, UPDATE, DELETE
Créer des utilisateurs avec permissions minimales
Pour les scénarios où un accès complet à la base de données n'est pas requis, SEI prend en charge des utilisateurs SQL Server avec des privilèges restreints. Les utilisateurs avec des permissions minimales ont un accès en lecture (SELECT) à toutes les tables des bases de données requises et peuvent être restreints davantage si nécessaire. Cette configuration est utile pour les utilisateurs de reporting ou les intégrations qui nécessitent uniquement un accès limité aux données.
Le script fourni accorde à ces utilisateurs l'accès à l'Entrepôt de données SEI (NectariCube) et aux schémas de la base de données ERP (comme Sage X3). Le script peut être ajusté pour exclure l'accès à des tables spécifiques en appliquant une ou plusieurs instructions DENY.
Exécutez le script MinimumPermissions_user.sql avec un compte ayant des permissions administratives sur le SQL Server. Suivez les instructions du script pour fournir les noms d'utilisateur, mots de passe et détails de schéma corrects pour votre environnement.
Le script d'exemple fourni est basé sur un environnement Sage X3. Assurez-vous d'ajuster les noms de schéma et les paramètres de dossier pour les adapter à votre propre configuration de base de données ERP.
/*
Script pour créer des utilisateurs restreints avec des permissions minimales.
Exécutez ce script en tant qu'utilisateur avec des privilèges administratifs sur le SQL Server.
Instructions :
- Remplacez "userWithMinimumPermissions" par le nom d'utilisateur SQL souhaité.
- Spécifiez un mot de passe pour la connexion.
- Remplacez "NECTARI_CUSTOM_SCHEMA" par votre nom de schéma Nectari/SEI.
- Remplacez "X3FOLDER" par votre nom de dossier ERP utilisé par Nectari/SEI.
- Décommentez les instructions optionnelles si nécessaire.
- Ajoutez des instructions DENY à la fin pour bloquer l'accès à des tables spécifiques.
*/
CREATE LOGIN userWithMinimumPermissions WITH PASSWORD = '' -- Crée un login au niveau du serveur
-- Entrepôt de données
use [NectariCube]
CREATE USER userWithMinimumPermissions FOR LOGIN userWithMinimumPermissions
ALTER ROLE db_datareader add member userWithMinimumPermissions -- Permission SELECT
ALTER ROLE db_datawriter add member userWithMinimumPermissions -- INSERT/UPDATE/DELETE
GRANT EXEC to userWithMinimumPermissions -- Exécuter des procédures stockées
-- ALTER ROLE db_ddladmin ADD MEMBER userWithMinimumPermissions; -- Optionnel : Ajouter des droits DDL si nécessaire pour la création de tables via des procédures stockées
-- Base de données ERP (par exemple, Sage X3)
use [x3]
CREATE USER userWithMinimumPermissions FOR LOGIN userWithMinimumPermissions
GRANT SELECT,INSERT,UPDATE,DELETE,EXEC on SCHEMA :: NECTARI_CUSTOM_SCHEMA to userWithMinimumPermissions -- Full DML sur le schéma personnalisé
GRANT SELECT on SCHEMA :: X3FOLDER to userWithMinimumPermissions -- Accès en lecture seule à toutes les tables dans le dossier ERP
-- GRANT ALTER ON SCHEMA::NECTARI_CUSTOM_SCHEMA TO userWithMinimumPermissions; -- Optionnel : Full ALTER sur le schéma personnalisé (rarement nécessaire)
-- Ajoutez des instructions DENY ci-dessous pour bloquer l'accès à des tables sensibles :
DENY SELECT on X3FOLDER.TABLENAME to userWithMinimumPermissions -- Exemple : bloque l'accès SELECT à une table spécifique
Configuration d'accès supplémentaire
Accorder l'accès à un nouveau schéma de base de données
Lorsqu'un nouveau schéma de base de données est ajouté, les utilisateurs avec des permissions minimales auront besoin d'un accès explicite à celui-ci. Pour accorder cet accès, exécutez la commande GRANT SELECT on SCHEMA dans le contexte de la base de données ERP pour chaque nouveau schéma. Par exemple, pour donner à l'utilisateur produser1 un accès en lecture à un nouveau schéma appelé TEST :
GRANT SELECT on SCHEMA :: TEST to produser1
Refuser l'accès à un schéma ou une table de base de données
Pour restreindre l'accès et s'assurer qu'un utilisateur avec des permissions minimales ne peut pas lire certaines tables, utilisez la commande DENY SELECT dans le script de la base de données ERP. Par exemple, les instructions suivantes refusent à produser1 l'accès à trois tables spécifiques :
DENY SELECT on SEED.GACCENTRYD to produser1
DENY SELECT on SEED.GACACCOUNT to produser1
DENY SELECT on SEED.GACCDUDATE to produser1
Accorder l'accès à alter et les droits d'édition
Accorder des privilèges supplémentaires permet aux utilisateurs de modifier des objets spécifiques de SEI si nécessaire. Pour autoriser un utilisateur à modifier des objets de schéma SEI, utilisez la commande GRANT ALTER on SCHEMA. Par exemple, pour permettre à l'utilisateur administratif adminuser1 de modifier des objets de schéma personnalisés :
GRANT ALTER on SCHEMA :: NECTARI_CUSTOM_SCHEMA to adminuser1
Pour permettre à un utilisateur avec des permissions minimales d'insérer, de mettre à jour et de supprimer des enregistrements dans l'Entrepôt de données (Cube), utilisez la commande ALTER ROLE du script de l'Entrepôt de données SEI. Par exemple, pour fournir ces droits à produser1 :
ALTER ROLE db_datawriter add member produser1
Il est nécessaire d'ajouter des utilisateurs après que SEI a été installé en utilisant la page Env. & Sources données dans Administration.
Ajouter des utilisateurs à SEI
Créer l'environnement de production
- Connectez-vous à SEI.
- Dans le panneau de navigation, sélectionnez l'icône d'engrenage pour ouvrir Administration.
- Sélectionnez Env. & Sources de données dans le panneau de gauche.
- Dans le panneau Environnements, cliquez sur l'icône +.
- Dans Nom de l'environnement, entrez
Production. - Dans Nom abrégé, entrez
Prod. - Choisissez la couleur pour l'environnement. Utilisez le sélecteur de couleur et sélectionnez Appliquer, ou entrez manuellement un code HEX.
- Cliquez sur Confirmer.
Créer l'environnement d'administration
- Dans le panneau Environnements, cliquez à nouveau sur l'icône +.
- Dans Nom de l'environnement, entrez
Administration. - Dans Nom abrégé, entrez
Admin. - Choisissez la couleur pour l'environnement. Utilisez le sélecteur de couleur et sélectionnez Appliquer, ou entrez manuellement un code HEX.
- Cliquez sur Confirmer.
Définir les identifiants de la base de données dans le Configurateur de Central Point
- Connectez-vous au Configurateur de Central Point.
- Dans les sections Source de données et Source de données de licence, entrez le nom d'utilisateur et le mot de passe administratifs de la base de données.
- Cliquez sur Mettre à jour la configuration pour enregistrer vos modifications.