Tout d'abord, afin qu'un utilisateur puisse effectuer des opérations sur une base externe via FDA, ce dernier doit disposer d'un droit nommé spécifique dans Adobe Campaign.
Sélectionnez le noeud Administration > Gestion des accès > Droits nommés de l'explorateur Adobe Campaign.
Créez un nouveau droit en indiquant le libellé de votre choix.
Le champ Nom doit être de la forme suivante : user:base@server, où :
user correspond au nom de l'utilisateur sur la base de données externe.
base correspond au nom de la base de données externe.
server correspond au nom du serveur de la base de données externe.
La partie :base est optionnelle sur Oracle.
Enregistrez le droit nommé puis associez-le à l'utilisateur de votre choix à partir du noeud Administration > Gestion des accès > Opérateurs de l'explorateur Adobe Campaign.
Ensuite, pour exploiter les données contenues dans une base externe, l'utilisateur Adobe Campaign doit au minimum avoir les droits en 'Ecriture' sur cette base, afin de permettre la création des tables de travail. Ces tables sont automatiquement supprimées par Adobe Campaign.
En règle générale, les droits d'accès suivants sont nécessaires :
L’administrateur de la base de données doit mettre en correspondance ces droits avec les droits spécifiques à chaque moteur de base de données. Pour en savoir plus, voir la section ci-dessous.
Snowflake | Redshift | Oracle | SQLServer | PostgreSQL | MySQL | |
---|---|---|---|---|---|---|
Connexion à une base de données distante | Privilèges USAGE ON WAREHOUSE, USAGE ON DATABASE et USAGE ON SCHEMA | Création d’un utilisateur lié au compte AWS | Privilège CREATE SESSION | Permission CONNECT | Privilège CONNECT | Création d’un utilisateur lié à un hôte distant possédant tous les privilèges (ALL PRIVILEGES) |
Création de tables | Privilège CREATE TABLE ON SCHEMA | Privilège CREATE | Privilège CREATE TABLE | Permission CREATE TABLE | Privilège CREATE | Privilège CREATE |
Création d’index | N/A | Privilège CREATE | Privilège INDEX ou CREATE ANY INDEX | Permission ALTER | Privilège CREATE | Privilège INDEX |
Création de fonctions | Privilège CREATE FUNCTION ON SCHEMA | Privilège USAGE ON LANGUAGE plpythonu pour pouvoir appeler des scripts Python externes | Privilège CREATE PROCEDURE ou CREATE ANY PROCEDURE | Permission CREATE FUNCTION | Privilège USAGE | Privilège CREATE ROUTINE |
Création de procédures | N/A | Privilège USAGE ON LANGUAGE plpythonu pour pouvoir appeler des scripts Python externes | Privilège CREATE PROCEDURE ou CREATE ANY PROCEDURE | Permission CREATE PROCEDURE | Privilège USAGE (les procédures sont des fonctions) | Privilège CREATE ROUTINE |
Suppression d’objets (tables, index, fonctions, procédures) | Propriété de l’objet | Être propriétaire de l’objet ou être un super-utilisateur | Privilège DROP ANY < objet > | Permission ALTER | Table : propriété de la table Index : propriété de l’index Fonction : propriété de la fonction | Privilège DROP |
Surveillance des exécutions | Privilège MONITOR sur l’objet requis | Aucun privilège requis pour utiliser la commande EXPLAIN | Privilèges INSERT et SELECT et privilège nécessaire pour exécuter l’instruction sur laquelle repose la séquence des opérations EXPLAIN PLAN | Permission SHOWPLAN | Aucun privilège requis pour utiliser l’instruction EXPLAIN | Privilège SELECT |
Écriture de données | Privilèges INSERT et/ou UPDATE (selon l’opération d’écriture) | Privilèges INSERT et UPDATE | Privilèges INSERT et UPDATE ou INSERT et UPDATE ANY TABLE | Permissions INSERT et UPDATE | Privilèges INSERT et UPDATE | Privilèges INSERT et UPDATE |
Chargement de données dans des tables | Privilèges CREATE STAGE ON SCHEMA, SELECT et INSERT sur la table ciblée | Privilèges SELECT et INSERT | Privilèges SELECT et INSERT | Permissions INSERT, ADMINISTER BULK OPERATIONS et ALTER TABLE | Privilèges SELECT et INSERT | Privilège FILE |
Accès aux données clientes | Privilège(s) SELECT sur (FUTURE) TABLE(S) ou VIEW(S) | Privilège SELECT | Privilège SELECT ou SELECT ANY TABLE | Permission SELECT | Privilège SELECT | Privilège SELECT |
Accès aux métadonnées | Privilège SELECT sur INFORMATION_SCHEMA SCHEMA | Privilège SELECT | Aucun privilège requis pour utiliser l’instruction DESCRIBE | Permission VIEW DEFINITION | Aucun privilège requis pour utiliser la commande "\d table" | Privilège SELECT |
DB2 UDB | TeraData | InfiniDB | Sybase IQ / Sybase ASE | Netezza | Greenplum | AsterData | |
---|---|---|---|---|---|---|---|
Connexion à une base de données distante | Autorité CONNECT | Privilège CONNECT | Création d’un utilisateur lié à un hôte distant possédant tous les privilèges (ALL PRIVILEGES) | Aucune permission requise pour utiliser l’instruction CONNECT | Aucun privilège requis | Privilège CONNECT | Privilège CONNECT |
Création de tables | Autorité CREATETAB | Mot-clé CREATE TABLE ou TABLE | Privilège CREATE | Autorité RESOURCE et permission CREATE | Privilège TABLE | Privilège CREATE | Privilège CREATE |
Création d’index | Privilège INDEX | Mot-clé CREATE INDEX ou INDEX | Privilège INDEX | Autorité RESOURCE et permission CREATE | Privilège INDEX | Privilège CREATE | Privilège CREATE |
Création de fonctions | Autorité IMPLICIT_SCHEMA ou privilège CREATEIN | Mot-clé CREATE FUNCTION ou FUNCTION | Privilège CREATE ROUTINE | Autorité RESOURCE ou autorité DBA pour les fonctions Java | Privilège FUNCTION | Privilège USAGE | Privilège CREATE FUNCTION |
Création de procédures | Autorité IMPLICIT_SCHEMA ou privilège CREATEIN | Mot-clé CREATE PROCEDURE ou PROCEDURE | Privilège CREATE ROUTINE | Autorité RESOURCE | Privilège PROCEDURE | Privilège USAGE | Privilège CREATE FUNCTION |
Suppression d’objets (tables, index, fonctions, procédures) | Privilège DROPIN ou privilège CONTROL ou propriété de l’objet | DROP < objet > ou mot-clé associé à l’objet | Privilège DROP | Propriété de l’objet ou autorité DBA | Privilège DROP | Propriété de l’objet | Propriété de l’objet |
Surveillance des exécutions | Autorité EXPLAIN | Aucun privilège requis pour utiliser l’instruction EXPLAIN | Privilège SELECT | Seul un administrateur système peut exécuter sp_showplan | Aucun privilège requis pour utiliser l’instruction EXPLAIN | Aucun privilège requis pour utiliser l’instruction EXPLAIN | Aucun privilège requis pour utiliser l’instruction EXPLAIN |
Écriture de données | Privilèges INSERT et UPDATE ou autorité DATAACCESS | Privilèges INSERT et UPDATE | Privilèges INSERT et UPDATE | Permissions INSERT et UPDATE | Privilèges INSERT et UPDATE | Privilèges INSERT et UPDATE | Privilèges INSERT et UPDATE |
Chargement de données dans des tables | Autorité LOAD | Privilèges SELECT et INSERT pour utiliser respectivement les instructions COPY TO et COPY FROM | Privilège FILE | Être propriétaire de la table ou autorisation ALTER. Selon l’option -gl, LOAD TABLE ne peut être exécutée que si l’utilisateur dispose de l’autorité DBA | Privilèges SELECT et INSERT | Privilèges SELECT et INSERT | Privilèges SELECT et INSERT |
Accès aux données clientes | Privilèges INSERT/UPDATE ou autorité DATAACCESS | Privilège SELECT | Privilège SELECT | Permission SELECT | Privilège SELECT | Privilège SELECT | Privilège SELECT |
Accès aux métadonnées | Aucune autorisation requise pour utiliser l’instruction DESCRIBE | Privilège SHOW | Privilège SELECT | Aucune permission requise pour utiliser l’instruction DESCRIBE | Aucun privilège requis pour utiliser la commande "\d table" | Aucun privilège requis pour utiliser la commande "\d table" | Aucun privilège requis pour utiliser la commande SHOW |