Architecture de la sécurité

Microsoft SQL Server 2005 Analysis Services (SSAS) dépend de Microsoft pour authentifier les utilisateurs. Par défaut, seuls les utilisateurs authentifiés disposant de droits dans Analysis Services peuvent établir une connexion à Analysis Services. Lorsqu'un utilisateur se connecte à Analysis Services, les autorisations dont dispose l'utilisateur dans Analysis Services sont déterminées par les droits affectés aux rôles Analysis Services auxquels il appartient, directement ou via l'appartenance dans un rôle Windows.

  • Analysis Services contient un rôle de serveur fixe qui permet à ses membres d'exécuter n'importe quelle tâche dans l'ensemble de l'instance.
  • Les utilisateurs qui ne sont pas membres du rôle de serveur fixe peuvent devenir membres d'un ou de plusieurs rôles de base de données. Chaque rôle de base de données dispose d'un jeu d'autorisations personnalisé qui permet aux utilisateurs d'accéder aux données et d'exécuter des tâches dans une base de données.
  • Il est possible d'accorder à un rôle de base de données des autorisations d'administration, des autorisations de traitement des objets, des autorisations d'affichage des métadonnées des objets et des autorisations d'affichage ou de modification des données à plusieurs niveaux dans chaque base de données Analysis Services.
  • Les membres d'un rôle de base de données ayant des autorisations d'administration peuvent afficher ou mettre à jour toutes les données de la base de données. Les membres des autres rôles de base de données peuvent uniquement afficher ou mettre à jour les objets de données sur lesquels ils disposent des autorisations correspondantes.
  • Les autorisations dans une base de données Analysis Services sont accordées au début au niveau de la base de données. Si un rôle de base de données a des autorisations au niveau de la base de données, le rôle doit avoir des autorisations spécifiques pour chaque objet dans la base de données. Les objets sur lesquels un rôle peut recevoir des autorisations incluent les dimensions d'une base de données et d'un cube, les membres d'une dimension, les cubes, les cellules d'un cube, les structures d'exploration de données, les modèles d'exploration de données, les sources de données et les procédures stockées.
  • Outre ces composants d'architecture de sécurité, Analysis Services chiffre toutes les communications client/serveur pour réduire les risques d'accès à des informations non autorisées par des utilisateurs non autorisés. Enfin, les fonctions de Analysis Services qui compromettent la sécurité si elles ne sont pas correctement configurées ou utilisées dans un environnement approprié sont désactivées par défaut. Vous pouvez, par exemple, permettre aux utilisateurs de se connecter à Analysis Services sans authentification ou accepter l'authentification soumise en texte clair. Toutefois, étant donné que cette approche risque de compromettre la sécurité si elle n'est pas mise en œuvre correctement, l'activation de ces fonctions implique de modifier les paramètres par défaut.

Authentification Windows

L'accès à Analysis Services dépend de l'authentification Microsoft Windows. Ce modèle d'authentification implique que tous les utilisateurs soient authentifiés par le système d'exploitation Windows pour pouvoir accéder aux données stockées dans Analysis Services et administrer les objets Analysis Services. L'authentification par le système d'exploitation permet à Analysis Services de tirer parti des fonctions de sécurité Windows, notamment de la validation sécurisée et du chiffrement des mots de passe, de l'audit, de l'expiration des mots de passe, de la longueur minimale des mots de passe, et du verrouillage de compte après plusieurs demandes d'ouverture de session non valides.

ms174927.note(fr-fr,SQL.90).gifRemarque :
Si l'instance de Analysis Services est configurée pour autoriser les accès anonymes, Windows n'authentifie par l'utilisateur.

L'authentification Windows et Analysis Services fonctionnent conjointement de la manière suivante :

  1. Lorsqu'un utilisateur se connecte au réseau Windows, un contrôleur de domaine Windows valide le nom et le mot de passe de l'utilisateur et crée ainsi les informations d'identification de l'authentification réseau de l'utilisateur.
  2. Ensuite, lorsque l'utilisateur tente de se connecter à Analysis Services, Analysis Services valide les informations d'identification de l'authentification réseau de l'utilisateur avec un contrôleur de domaine Windows.

Autorisation

Après avoir authentifié un utilisateur, Analysis Services détermine si l'utilisateur est autorisé à afficher les données, mettre à jour les données, afficher les métadonnées ou exécuter des tâches d'administration. Si l'utilisateur, ou un groupe dont l'utilisateur est membre, dispose d'un certain type d'autorisation dans l'instance de Analysis Services, Analysis Services laisse l'utilisateur se connecter. Par défaut, Analysis Services ne permet pas à un utilisateur de se connecter si l'utilisateur ne dispose pas d'un certain type d'autorisation dans l'instance Analysis Services.

Toutefois, l'autorisation ne s'arrête pas une fois l'utilisateur connecté à Analysis Services. L'autorisation se poursuit pendant que l'utilisateur utilise Analysis Services, lorsqu'il exécute, par exemple, des procédures stockées serveur, des instructions DMX (Data Mining Extensions (DMX), des requêtes DMS (Multidimensional Expressions) ou des commandes AMO (Analysis Management Objects). Chaque fois que Analysis Services doit exécuter une action ou accéder à un objet, il vérifie l'autorité de l'utilisateur pour accéder aux objets ou exécuter la commande. Si l'utilisateur ne dispose pas des autorisations appropriées, Analysis Services retourne une erreur d'autorisation.

Rôle de serveur et rôles de base de données

Analysis Services comporte deux types de rôles : le rôle de serveur et les rôles de base de données. Les différences entre ces deux rôles sont expliqués brièvement ci-dessous :

  • Il n'existe qu'un seul rôle de serveur et les membres de ce rôle disposent des droits d'administration complets dans l'instance Analysis Services.
    ms174927.note(fr-fr,SQL.90).gifRemarque :
    Les membres du groupe local Administrateurs sur l'ordinateur local sont automatiquement membres du rôle de serveur dans une instance Analysis Services.
  • Il peut exister plusieurs rôles de base de données. Les membres du rôle de serveur créent ces rôles de base de données dans chaque base de données, accordent les autorisations administratives ou utilisateur à ces rôles de base de données, telles que des autorisations de lecture ou lecture/écriture sur des cubes, des dimensions, des cellules, des structures d'exploration de données, des modèles d'exploration de données et des objets de source de données, puis ajoutent les utilisateurs et les groupes Windows à ces rôles de base de données.
    ms174927.note(fr-fr,SQL.90).gifImportant :
    Les autorisations des rôles sont additives. Les autorisations dont dispose un utilisateur ou un groupe Windows via un rôle de base de données sont ajoutées aux autorisations dont l'utilisateur ou le groupe Windows dispose via d'autres rôles de base de données. Si un rôle interdit à un utilisateur ou un groupe d'exécuter des tâches ou d'afficher des données et qu'un autre rôle lui permet de le faire, l'utilisateur ou le groupe peut exécuter la tâche ou afficher les données.

Pour plus d'informations, consultezConfiguration des accès à Analysis Services

Droits d'administrateur

Les membres du rôle de serveur disposent automatiquement des droits d'administrateur complets contrairement aux membres d'un rôle de base de données. Un rôle de base de données peut recevoir des droits Contrôle total, ou Administrateur, ou d'un groupe limité de droits administrateur parmi les droits suivants :

  • Traitement de la base de données
  • Lecture des métadonnées de la base de données
  • Traitement d'une ou de plusieurs dimensions
  • Lecture de la définition d'une ou de plusieurs dimensions
  • Traitement d'un ou de plusieurs cubes
  • Lecture de la définition d'un ou de plusieurs cubes
  • Traitement d'une ou de plusieurs structures d'exploration de données
  • Traitement d'un ou de plusieurs modèles d'exploration de données
  • Lecture de la définition d'une ou de plusieurs structures d'exploration de données
  • Lecture de la définition d'un ou de plusieurs modèles d'exploration de données
  • Lecture de la définition d'une ou de plusieurs sources de données

Seuls les membres du rôle de serveur et les membres d'un rôle de base de données disposant des droits Contrôle total peuvent lire les données Analysis Services sans autres autorisations. Les autres utilisateurs peuvent lire uniquement les données Analysis Services si leur rôle de base de données leur accorde expressément des autorisations de lecture ou lecture/écriture sur les objets de données dans Analysis Services, tels que les dimensions, les cubes, les cellules et les modèles d'exploration.

Pour plus d'informations, consultezOctroi d'autorisations administratives sur l'ensemble du serveur

Sécurité des dimensions

Un rôle de base de données peut indiquer si ses membres sont autorisés à afficher ou mettre à jour les membres de dimensions spécifiques de la base de données. En outre, dans chacune des dimensions sur lesquelles un rôle de base de données dispose de droits, le rôle peut être autorisé à n'afficher ou ne mettre à jour que des membres spécifiques d'une dimension et non tous les membres de la dimension. Si un rôle de base de données n'est pas autorisé à afficher ou mettre à jour une dimension et des membres ou tous les membres de la dimension, les membres du rôle de base de données ne peuvent pas afficher la dimension ni aucun de ses membres.

ms174927.note(fr-fr,SQL.90).gifRemarque :
Les autorisations de dimension accordées à un rôle de base de données s'appliquent aux dimensions du cube de la dimension de base de données, à moins que des autorisations soient expressément accordées dans le cube qui utilise la dimension de base de données.

Pour plus d'informations, consultezOctroi d'accès à une dimension et Octroi d'accès personnalisés aux données d'une dimension.

Sécurité des cubes

Un rôle de base de données peut indiquer si ses membres disposent d'autorisations de lecture ou lecture/écriture sur un ou plusieurs cubes dans une base de données. Si un rôle de base de données n'est pas autorisé à lire ou lire/écrire dans au moins un cube, les membres du rôle de base de données ne peuvent pas afficher les cubes de la base de données en dépit des droits dont les membres peuvent disposer via le rôle pour afficher les membres de la dimension.

Pour plus d'informations, consultezOctroi d'accès à un cube.

Sécurité des cellules

Un rôle de base de données peut indiquer si ses membres disposent d'autorisations de lecture, de lecture du contingent ou de lecture/écriture sur des cellules ou toutes les cellules d'un cube. Si un rôle de base de données ne dispose pas d'autorisation sur les cellules d'un cube, les membres du rôle de base de données ne peuvent pas afficher les données du cube. Si un rôle de base de données n'est pas autorisé à afficher certaines dimensions en fonction de la sécurité des dimensions, la sécurité au niveau des cellules ne peut pas étendre les droits des membres du rôle de base de données pour inclure les membres des cellules de la dimension. En revanche, si un rôle de base de données est autorisé à afficher les membres d'une dimension, la sécurité au niveau des cellules peut être utilisée pour limiter les membres des cellules de la dimension que les membres du rôle de base de données peuvent afficher.

Pour plus d'informations, consultezOctroi d'accès personnalisés aux données des cellules.

Sécurité des structures d'exploration de données, des modèles d'exploration de données et des sources de données

Un rôle de base de données peut indiquer si ses membres ont des autorisations de lecture ou de lecture/écriture sur les structures d'exploration de données et les modèles d'exploration de données. Un rôle de base de données peut également être autorisé à extraire les données sources et à consulter un ou plusieurs modèles d'exploration de données. Enfin, un rôle de base de données peut avoir des autorisations de lecture/écriture sur les objets d'une source de données. Ces autorisations permettent au rôle de faire référence à la source de données dans la clause OPENQUERY et d'utiliser la chaîne de connexion définie dans l'objet de source de données.

Pour plus d'informations, consultezOctroi d'accès aux structures d'exploration de données et aux modèles d'exploration de données et Octroi d'accès aux sources de données.

Sécurité des procédures stockées

Dans Analysis Services, les procédures stockées sont des routines externes, écrites dans un langage de programmation Microsoft .NET, qui étend les fonctions d'Analysis Services. Les procédures stockées permettent au développeur de tirer parti de l'intégration inter-langage, de la gestion des exceptions, de la prise en charge du versioning, du déploiement et du débogage.

N'importe quel utilisateur peut appeler une procédure stockée. Selon la manière dont la procédure stockée a été configurée, la procédure peut s'exécuter dans le contexte de l'utilisateur qui appelle la procédure ou dans le contexte d'un utilisateur anonyme. Étant donné qu'un utilisateur anonyme n'a pas de contexte de sécurité, utilisez cette fonction avec la configuration de l'instance de Analysis Services pour autoriser les accès anonymes.

Entre le moment où l'utilisateur appelle une procédure stockée et l'exécution par Analysis Services de la procédure stockée, Analysis Services évalue les actions dans la procédure stockée. Analysis Services évalue les actions dans la procédure stockée en fonction de l'intersection des autorisations accordées à l'utilisateur et du jeu d'autorisations utilisé pour exécuter la procédure stockée. Si la procédure stockée contient une action qui ne peut pas être exécutée par le rôle de base de données de l'utilisateur, l'action n'est pas exécutée.

Les jeux d'autorisations utilisés pour exécuter les procédures stockées sont énumérés ci-dessous :

  • **Sûr   **Avec le jeu d'autorisations Sûr, une procédure stockée ne peut pas accéder aux ressources protégées dans le Microsoft .NET Framework. Ce jeu d'autorisations ne permet que les calculs. Il s'agit du jeu d'autorisations le plus sûr ; les informations ne sortent pas d'Analysis Services, les autorisations ne peuvent pas être augmentées et les risques de falsification des données sont réduits.
  • **Accès externe   **Avec le jeu d'autorisations Accès externe, une procédure stockée peut accéder aux ressources externes en utilisant du code managé. L'affectation à une procédure stockée de ce jeu d'autorisations ne provoque pas d'erreurs de programmation qui pourraient rendre le serveur instable. Toutefois, ce jeu d'autorisations peut générer une fuite d'informations sur le serveur et des risques d'augmentation des autorisations et de falsification des données.
  • **Illimité   **Avec le jeu d'autorisations Illimité, une procédure stockée peut accéder aux ressources externes en utilisant n'importe quel code. Avec ce jeu d'autorisations, il n'existe aucune garantie de sécurité ou de fiabilité pour les procédures stockées.

Pour plus d'informations, consultezUtilisation des procédures stockées (Analysis Services)

Chiffrement

Par défaut, Analysis Services nécessite que toutes les communications entre les clients et les instances Analysis Services soient chiffrées.

Pour plus d'informations, consultezProtection des communications des clients avec une instance Analysis Services

Désactivé par défaut

Une instance Analysis Services est sécurisée par défaut. Par conséquent, les fonctions qui pourraient compromettre la sécurité sont désactivées par défaut. Les fonctions suivantes sont désactivées par défaut et doivent être activées explicitement pour pouvoir les utiliser :

  • Connectivité HTTP
  • Trace
  • Procédures stockées
  • Partitions distantes
  • Objets liés (Vers)
  • Objets liés (De)
  • Agrégateur d'exploration de données
  • Niveau de protection du client
  • Niveau de protection Web
  • Authentification du client requise
  • Intégration à Active Directory
  • Requêtes OpenRowset ad hoc
  • Connectivité client 8.0
  • Rapports d'incident

Voir aussi

Concepts

Protection d'une instance Analysis Services

Autres ressources

Configuration des accès à Analysis Services

Aide et Informations

Assistance sur SQL Server 2005