Définition des propriétés de paramètres d'un rapport publié

Un rapport paramétré est un rapport qui accepte des valeurs d'entrée utilisées dans le traitement du rapport. Les paramètres sont définis dans le Générateur de rapports lors de la création du rapport. Pour plus d'informations sur la définition des paramètres, consultez Paramètres (Générateur de rapports version 3.0 et SSRS).

Une fois un rapport publié, vous pouvez modifier les propriétés des paramètres à l'aide du Gestionnaire de rapports et effectuer les tâches ci-après :

  • Exécuter un rapport à l'aide de valeurs de paramètres prédéfinies qu'un utilisateur ne voit jamais.

  • Exécuter un rapport à l'aide d'une valeur de paramètre par défaut ou d'une valeur valide sélectionnée par l'utilisateur.

  • Exécuter un rapport sans valeur de paramètre spécifiée. Vous pouvez spécifier une valeur NULL pour retourner un jeu de résultats non filtrés.

  • Exécuter un rapport personnalisé qui extrait des informations spécifiques à un utilisateur sur la base d'une valeur qu'il fournit (par exemple, un numéro d'identification personnel afin d'obtenir le solde d'un compte ou un état de salaires).

Les propriétés de paramètres que vous définissez dans le Gestionnaire de rapports pour un rapport publié sont généralement conservées si vous republiez la définition de rapport à partir du Concepteur de rapports. Si la définition du rapport est republiée dans le même rapport, et si les noms des paramètres et les types de données restent les mêmes, vos valeurs de propriétés sont conservées. Si vous ajoutez ou supprimez des paramètres dans la définition de rapport, ou si vous modifiez le type de données ou le nom d'un paramètre existant, il peut être nécessaire de modifier les propriétés des paramètres dans le rapport publié.

Tous les paramètres ne peuvent pas être modifiés dans tous les cas. Si un paramètre de rapport obtient une valeur par défaut à partir d'une requête, cette valeur ne peut pas être modifiée dans le Gestionnaire de rapports. Les valeurs de paramètres par défaut qui sont désignées comme « basées sur une requête » sont spécifiées dans la définition du rapport et ne peuvent pas être modifiées dans le Gestionnaire de rapports. Une valeur de paramètre basée sur une requête n'est pas une valeur de constante. La valeur utilisée au moment de l'exécution est déterminée lorsque la requête est lancée ou, dans le cas des paramètres basés sur une expression, lorsque celle-ci est évaluée.

Les options d'exécution de rapport peuvent affecter le mode de traitement des paramètres. Un rapport qui s'exécute en tant qu'instantané ne peut pas utiliser les paramètres qui sont dérivés d'une requête sauf si cette requête inclut des valeurs par défaut pour les paramètres. Pour plus d'informations sur les paramètres de requête, consultez Procédure : associer un paramètre de requête à un paramètre de rapport (Générateur de rapports version 3.0 et SSRS).

Problèmes relatifs à la sécurité des rapports paramétrés

Soyez attentif lorsque vous distribuez des rapports paramétrés qui contiennent des informations confidentielles ou sensibles. Un utilisateur peut facilement remplacer un paramètre de rapport par une autre valeur, avec pour résultat une divulgation d'informations.

Pour sécuriser l'utilisation des paramètres des données personnelles ou des employés, vous pouvez sélectionner les données en fonction d'expressions qui comprennent le champ UserID de la collection Users. La collection Users permet d'obtenir l'identité de l'utilisateur qui exécute le rapport et d'utiliser cette identité pour extraire les données spécifiques à l'utilisateur. Pour plus d'informations, consultez Utilisation de références à des champs Globals et Users prédéfinis (Report Builder 3.0 et SSRS).

Remarque relative à la sécuritéRemarque relative à la sécurité

Dans un rapport qui inclut un paramètre de type String, veillez à utiliser une liste de valeurs disponibles (également appelée liste de valeurs valides) et assurez-vous que l'utilisateur qui exécute le rapport dispose uniquement des autorisations nécessaires à l'affichage des données du rapport. Lorsque vous définissez un paramètre de type String, la zone de texte qui apparaît vous permet d'entrer n'importe quelle valeur. Une liste de valeurs disponibles limite les valeurs susceptibles d'être entrées. Si le paramètre de rapport est lié à un paramètre de requête et vous n'utilisez pas une liste de valeurs disponibles, l'utilisateur d'un rapport peut taper la syntaxe SQL dans la zone de texte, ce qui peut exposer le rapport et votre serveur de rapports au risque d'une attaque par injection SQL. Si l'utilisateur dispose d'autorisations suffisantes pour exécuter la nouvelle instruction SQL, cela risque de générer des résultats indésirables sur le serveur.

Si un paramètre de rapport n'est pas lié à un paramètre de requête et les valeurs de paramètre sont incluses dans le rapport, l'utilisateur d'un rapport peut taper une URL ou la syntaxe de l'expression dans la valeur de paramètre et restituer le rapport au format Excel ou HTML. Si un autre utilisateur affiche ensuite le rapport et clique sur le contenu du paramètre rendu, l'utilisateur peut exécuter par inadvertance le lien ou le script malveillant.

Pour réduire le risque d'exécution accidentelle de scripts malveillants, ouvrez les rapports uniquement à partir de sources approuvées. Pour plus d'informations sur la sécurisation des rapports, consultez Sécurisation des rapports et des ressources.

Définition des propriétés des paramètres

Les propriétés de paramètres que vous pouvez modifier sur un rapport publié sont déterminées par le paramètre spécifié dans la définition de rapport initiale. Vous pouvez toujours modifier le texte affiché ainsi que la propriété Masquer qui détermine si le paramètre est visible pour les utilisateurs. Cependant, vous ne pouvez pas toujours modifier la valeur par défaut si la valeur dérive d'une requête. Dans ce cas, la chaîne de texte « QueryBased » apparaît en regard du paramètre.

Pour modifier les propriétés des paramètres, ouvrez la page des propriétés des paramètres du rapport. Vous pouvez modifier les propriétés suivantes :

  • La propriété Possède une valeur par défaut détermine si le rapport peut être traité sans entrée de l'utilisateur. Si un paramètre ne possède pas de valeur par défaut, un utilisateur doit en fournir une pour que le rapport soit traité.

  • La propriété Valeur par défaut peut être une constante ou être la valeur NULL (si le paramètre accepte une telle valeur). Elle ne peut pas être définie par une expression.

  • La propriété Masquer détermine si les champs d'affichage et les champs d'entrée sont visibles pour les utilisateurs. Activez cette case à cocher pour masquer le paramètre.

  • La propriété Demander à l'utilisateur détermine si l'utilisateur peut taper ou sélectionner une valeur valide différente pour le paramètre. Cette propriété est activée lorsque la propriété Masquer est désactivée.

  • La propriété Texte affiché spécifie le texte qui apparaît en regard du paramètre. Ce texte peut être un libellé ou une chaîne de texte plus longue qui fournit des instructions d'utilisation. Cette propriété est activée lorsque vous sélectionnez la propriété Demander à l'utilisateur.

Vous ne pouvez pas supprimer, renommer, réordonner ni modifier le type de données des paramètres dans un rapport publié. En outre, vous ne pouvez pas modifier le nom du paramètre. Pour modifier l'une de ces propriétés, vous devez modifier la définition du rapport.

Masquage des paramètres

Vous pouvez masquer les champs et les étiquettes de paramètre utilisés avec un rapport. Lorsque tous les paramètres sont masqués, la zone de paramètres d'un rapport à la demande est masquée. Si vous masquez un paramètre, vous devez fournir une valeur par défaut dans la définition du rapport ou sur la page Propriétés du paramètre. Si le rapport le permet, vous pouvez spécifier une valeur NULL.

Le masquage d'un paramètre ne rend pas celui-ci invisible dans toutes les situations. Les paramètres que vous masquez dans la barre d'outils du rapport peuvent être définis dans les abonnements et par le biais d'URL. Pour masquer un paramètre partout sauf dans la définition de rapport, sélectionnez Interne dans la boîte de dialogue Paramètres du rapport.

Pour masquer un paramètre :

  1. Sélectionnez Possède une valeur par défaut.

  2. Spécifiez Valeur par défaut.

  3. Sélectionnez Masquer.

Validation des valeurs des paramètres

Pour vérifier si une valeur que vous avez spécifiée est valide, exécutez le rapport. Les erreurs relatives au traitement des paramètres apparaissent dans la page d'erreur du Gestionnaire de rapports. Pour analyser davantage le problème, vous pouvez consulter les fichiers journaux. Pour plus d'informations, consultez Fichiers journaux de Reporting Services.

Définition des paramètres dans les abonnements

En plus d'utiliser la page des propriétés des paramètres, vous pouvez également définir des valeurs de paramètres lorsque vous créez un abonnement. Chaque utilisateur qui s'abonne à un rapport peut spécifier des valeurs de paramètres qui sont stockées et utilisées avec l'abonnement. Pour plus d'informations, consultez Définition des paramètres d'un abonnement.