Introduction
Quand on parle de sécurité et de Reporting Services, on s'aperçoit qu'il y en a un petit peu partout, c'est ce que je vais essayer de clarifier dans ce post.
En réalité, il faut distinguer deux types de connexions fondamentaux :
. Les connexions au serveur d'états, c'et à dire aux bases de données système qui sont habituellement ReportServer et ReportServerTempbd : ces bases de données contiennent notamment le catalogue des rapports, des sources de données, des modèles,etc...
. Les connexions aux bases de données 'utilisateur', c'est à dire les sources de données de vos états
Connexion aux bases ReportServer et ReportServerTempdb
Ces accès sont faits principalement avec les comptes du service NT d'une part, du service Web d'autre part.
Vous configurez ces deux comptes dans l'outil de configuration de Reporting Services.
Ci dessous le compte du service Windows :
et ici le compte de service WEB :
On voit clairement que , selon les versions de IIS, la connexion utilisée est celle du compte ASP. Net ou (ce qui est mon cas) celle des pools d'applications associés aux deux répertoires virtuels de Reporting Services.
Ces pools se configurent avec l'outil d'administration dit 'Gestionnaire des services Internet'
On voit ici la configuration de mon pool d'applications avec un utilisateur particulier de la machine.
ATTENTION : tout changement dans ces configurations peut entrainer une perte des éléments cryptés dans ReportServer : en particulier les sources de données pour lesquelles des mots de passe ont ét stockés dans le serveur de rapports.
Connexions aux bases de données utilisateur :
Ceci vient essentiellement des deux répertoires virtuels de IIS :
. Reports (le mal nommé..) qui accède au Report Manager, c'ets à dire l'application ASP.Net de configuration
. ReportServer qui est le serveur d'états proprement dit
On peut configurer ces deux répertoires en accès anonymes, Windows ou authentifié par mot de passe (entre autres).
Le Report Manager opérant en frontal de Report Server, je vais vous montrer différents scénarios de ces configurations et leur effet sur les bases de données utilisateur.
Dans cet exemple, seul l'accès Windows est positionné, ce qui conviendra bien à un réseau Intranet.
Conclusion :
Bien sûr, à tout cela s'ajoutent les différents rôles sur les composants :
. Rôle d'administration du serveur d'états
. Rôles sur les éléments du serveur d'états
. Rôles sur les connexions aux bases de données système Reportserver et ReportServerTempdb
. Rôles sur les connexions aux données utilisateur....
Bref, de quoi s'amuser quelques instants...