web-dev-qa-db-fra.com

Les autorisations accordées à l'utilisateur 'sont insuffisantes pour effectuer cette opération. (rsAccessDenied) "}

J'ai créé un modèle de rapport à l'aide de SSRS (2005) et publié sur le serveur local. Mais lorsque j'ai essayé d'exécuter le rapport pour le modèle que j'ai publié à l'aide du générateur de rapports, l'erreur suivante s'est produite. 

Signaler une erreur d'exécution: Les autorisations accordées à l'utilisateur sont insuffisantes pour effectuer cette opération. (rsAccessDenied) 

83
jbcedge

C'est à cause d'un manque de privilège pour l'utilisateur que vous utilisez le générateur de rapports, accordez-lui simplement un privilège pour exécuter le générateur de rapports . Veuillez visiter cet article

Ou par raccourci:

  1. Démarrer Internet Explorer en utilisant "Exécuter en tant qu'administrateur"
  2. Ouvrez http: // localhost/reports
  3. Accéder à l'onglet Propriétés (SSRS 2008)
  4. Sécurité-> Nouvelle attribution de rôle
  5. Ajouter DOMAIN/USERNAME ou DOMAIN/USERGROUP
  6. Générateur de rapports de contrôle
85
Emad Mokhtar

Je sais que cela fait longtemps, mais vous (ou tout autre nouvel arrivant) pouvez résoudre ce problème en

  1. Ajoutez le [Domaine\Utilisateur] aux groupes Administrateur, IISUser, SQLReportingUser
  2. Supprimer la clé de cryptage dans les outils de configuration SSRS
  3. Relancez le changement de base de données dans les outils de configuration SSRS
  4. Ouvrez WebServiceUrl à partir des outils de configuration SSRS (http: // localhost/reportserver)
  5. création manuelle de rapports dossier
  6. allez dans Propriétés du dossier créé et ajoutez ces rôles à la sécurité (builtin\users, builtin\Administrateur, domaine\utilisateur)
  7. Déployez vos rapports et votre problème résolu
18
Nasser Hadjloo

Cliquez avec le bouton droit de la souris sur Microsoft BI -> Cliquez sur Exécuter en tant qu'administrateur -> ouvrez votre rapport SSRS existant ou créez votre nouveau rapport SSRS, puis déployez votre rapport après l'avoir rempli. Vous recevrez une URL Web pour afficher votre rapport. Copiez cette URL et collez-la dans le navigateur Web (Exécuter en tant qu’administrateur) pour obtenir l’affichage de votre rapport. Vous pouvez utiliser Internet Explorer, ce qui serait essentiel pour le service Web. 

Si cela est faux, pardonnez-moi s'il vous plaît car je l'ai fait comme ça, alors je viens d'écrire.

18
Robert Bosco

Assurez-vous que l'accès est configuré sur l'URL http: // localhost/reports à l'aide de la configuration de SQL Reporting Services. Pour faire ça:

  1. Ouvrez le Gestionnaire de configuration de Reporting Services -> puis connectez-vous à l'instance du serveur de rapports -> puis cliquez sur l'URL du Gestionnaire de rapports.
  2. Dans la page URL du gestionnaire de rapports, cliquez sur le bouton Avancé -> puis, dans la section Identités multiples pour le gestionnaire de rapports, cliquez sur Ajouter.
  3. Dans la zone contextuelle Ajouter une URL HTTP du Gestionnaire de rapports, sélectionnez En-tête d'hôte et entrez: localhost.
  4. Cliquez sur OK pour enregistrer vos modifications.
  5. Maintenant, démarrez/lancez Internet Explorer en utilisant Exécuter en tant qu’administrateur ... (REMARQUE: si le lien "Paramètres du site" ne s'affiche pas dans le coin supérieur gauche de http: // localhost/reports it Cela est probablement dû au fait que vous n’exécutez pas IE en tant qu’administrateur ou que vous n’avez pas attribué le rôle "domaine\nomutilisateur" de votre ordinateur aux rôles des services de génération de rapports, voir la procédure à suivre dans les prochaines étapes.)
  6. Ensuite, allez à: http: // localhost/reports (vous devrez peut-être vous connecter avec le nom d'utilisateur et le mot de passe de votre ordinateur)
  7. Vous devriez maintenant être dirigé vers la page d'accueil de SQL Server Reporting Services ici: http: //localhost/Reports/Pages/Folder.aspx
  8. Sur la page d'accueil, cliquez sur l'onglet Propriétés, puis sur Nouvelle attribution de rôle.
  9. Dans la zone de texte Nom du groupe ou de l'utilisateur, ajoutez le 'domaine\nom d'utilisateur' qui figurait dans le message d'erreur (dans mon cas, j'ai ajouté: DOUGDELL3-PC\DOUGDELL3 pour le 'domaine\nom d'utilisateur', dans votre cas, vous pouvez trouver le domaine.\nom d'utilisateur de votre ordinateur dans le message d'erreur rsAccessDenied).
  10. Maintenant, cochez toutes les cases à cocher; Navigateur, Gestionnaire de contenu, Mes rapports, Publisher, Générateur de rapports, puis cliquez sur OK.
  11. Votre domaine\nom d'utilisateur doit maintenant être attribué aux rôles qui vous permettront d'accéder au déploiement de vos rapports sur le serveur de rapports. Si vous utilisez Visual Studio ou SQL Server Business Intelligence Development Studio pour déployer vos rapports sur votre serveur de rapports local, vous devriez maintenant pouvoir le faire.
  12. J'espère que cela vous aidera à résoudre votre message d'erreur rsAccessDenied de Report Server ...

Pour que vous sachiez que ce didacticiel a été réalisé sur un ordinateur Windows 7 avec SQL Server Reporting Services 2008.

Article de référence: http://techasp.blogspot.co.uk/2013/06/how-to-fix-reporting-services.html

8
Soheila Hg

sous Paramètres du site, dans le Gestionnaire des rapports> Configurer les définitions de rôle au niveau du système> cochez l'option ExecuteReport Defination puis Créez un groupe d'utilisateurs système, donnez l'accès à ce groupe à l'adresse Connectez-vous à la base de données de vos services de rapports dans les propriétés du serveur, ajoutez un groupe et autorisez l'accès en tant qu'utilisateur système ... Cela devrait fonctionner

6
kamal

Vous pouvez également vous assurer que l'identité de votre pool d'applications dispose des autorisations appropriées. 

  1. Accédez au gestionnaire IIS.

  2. Cliquez sur les pools d'applications

  3. Identifiez le pool d'applications du site sur lequel vous déployez des rapports.

  4. Vérifiez que l'identité est définie sur un compte de service ou un compte d'utilisateur disposant d'autorisations d'administrateur

  5. Vous pouvez modifier l’identité en arrêtant le pool, en cliquant dessus, puis en sélectionnant Paramètres avancés.

Sous Modèle de processus se trouve le champ Identité.

5
Kasey Mohsen

J'ai SQL2008/Windows 2008 Enterprise et voici ce que je devais faire pour corriger les erreurs rs.accessdenied, 404, 401 et 503: 

  • Utilisateurs NT ajoutés aux utilisateurs SQL Report Server et au groupe IIS_USR
  • J'ai changé le service de génération de rapports SQL en compte local (il s'agissait d'un domaine avec administrateur local)
  • J'ai supprimé la clé de chiffrement dans la configuration de Reporting Services (dernier onglet de la liste)
  • et puis cela a fonctionné.
5
user162362

J'ai utilisé les étapes suivantes et cela fonctionne pour moi.

Ouvrez le Gestionnaire de configuration de Reporting Services -> puis connectez-vous à l'instance du serveur de rapports -> puis cliquez sur l'URL du Gestionnaire de rapports.

Dans la page URL du gestionnaire de rapports, cliquez sur le bouton Avancé -> puis, dans la section Identités multiples pour le gestionnaire de rapports, cliquez sur Ajouter.

Dans la zone contextuelle Ajouter une URL HTTP du gestionnaire de rapports, sélectionnez En-tête de l'hôte et entrez: localhost Cliquez sur OK pour enregistrer vos modifications.

Ensuite:

  1. copié l'URL du serveur de rapports
  2. Exécuter Google Chrome/Internet Explorer en tant qu'administrateur 
  3. Collez l'URL dans la barre d'adresse et appuyez sur Entrée.

cela fonctionne très bien pour moi sur Internet Explorer et Google Chrome, mais pas pour Mozilla Firefox.

Dans le cas où Firefox demande un nom d'utilisateur et un mot de passe, je le fournis mais cela ne fonctionne pas. Je suis administrateur et j'ai plein droit. 

J'ai effectué 1 autre modification en sélectionnant "Paramètres de contrôle de compte d'utilisateur" pour ne jamais notifier.

Si vous obtenez ce type d'exception lors du déploiement de ce rapport à partir de Visual Studio, procédez comme suit:

  1. Ouvrez Google Chrome/Internet Explorer avec les droits d'administrateur.
  2. ouvrez l'URL du serveur de rapports.

3.Cliquez sur "Nouvelle attribution de rôle", ajoutez le, entrez le nom d'utilisateur et sélectionnez les rôles .  enter image description here

  1. cliquez sur OK.
  2. Maintenant, déployez le rapport à partir de Visual studio, cela fonctionnera et déploiera les rapports sur le serveur spécifié.
4

Après avoir configuré SSRS 2016, je me suis connecté au serveur (Windows Server 2012 R2), j'ai accédé à l'URL des rapports ( https://reports.fakeserver.net/Reports/browse/ ) et créé un titre de dossier. FakeFolder; tout semblait bien fonctionner. Je me suis ensuite déconnecté du serveur, j'ai consulté la même URL, ouvert une session sous le même nom d'utilisateur et rencontré l'erreur ci-dessous.

Les autorisations accordées à l'utilisateur 'fakeserver\mitchs' sont insuffisantes pour effectuer cette opération.

Confus, j'ai essayé à peu près toutes les solutions suggérées sur cette page et je ne pouvais toujours pas créer le même comportement à la fois localement et en externe lors de la navigation vers l'URL et de l'authentification. J'ai ensuite cliqué sur Ellipsis of FakeFolder, sur Gestion, puis sur Sécurité (à gauche de l'écran), puis je me suis ajouté en tant qu'utilisateur disposant d'autorisations complètes. Une fois déconnecté du serveur, je suis allé sur https://reports.fakeserver.net/Reports/browse/FakeFolder et j'ai pu afficher le contenu du dossier sans rencontrer l'erreur d'autorisations. Cependant, lorsque j'ai cliqué sur mon pays, j'ai reçu l'erreur de permission.

C’était suffisant, car aucun autre utilisateur n’aura jamais besoin de naviguer vers l’URL racine; .

4
Mitch Stewart

Question ancienne mais pertinente. J'ai résolu pour 2012 en me connectant au serveur de rapports et:

  • naviguez jusqu'à http: // localhost/reports/
  • Cliquez sur "Paramètres du site" en haut à droite (n'était disponible que lors de la connexion au serveur de rapports).
  • Allez sur l'onglet 'Sécurité' et cliquez sur 'Nouvelle attribution de rôle'
  • Ajout de DOMAIN\USERNAME en tant qu'administrateur système

Je ne peux pas dire que je suis à l'aise avec cette solution, mais j'avais besoin de quelque chose qui fonctionne et qui fonctionne. J'espère que ceci aide quelqu'un d'autre.

4
user2051770

Problème:

Erreur rsAccessDenied: les autorisations accordées à l'utilisateur 'Utilisateur\Utilisateur' sont insuffisantes pour effectuer cette opération.

Solution:

Cliquez sur "Paramètres des dossiers"> "Nouvelle attribution de rôle" Tapez ensuite "Utilisateur\Utilisateur" dans la zone de texte "Nom de groupe ou d'utilisateur" ..... Cochez les cases correspondant aux rôles que vous souhaitez que l'utilisateur ait.

3
Vicky

Cela a fonctionné pour moi -- allez dans le gestionnaire de rapports, vérifiez les paramètres du site-> Sécurité -> Nouvelle attribution de rôle-> Ajouter l'utilisateur

-Also, accédez à Jeux de données dans le gestionnaire de rapports -> votre jeu de données de rapport -> Sécurité -> Nouvelle attribution de rôle -> ajoutez l'utilisateur avec le rôle requis.

Merci!

2

Ouvrez Internet Explorer en tant qu'administrateur.

Ouvrez l'URL des rapports http://machinename/reportservername

puis dans 'Paramètres du dossier', donnez l'autorisation aux groupes d'utilisateurs requis. 

2
atur

Ce qui a fonctionné pour moi a été:

Open localhost/reports
Go to properties tab (SSRS 2008)
Security->New Role Assignment
Add DOMAIN/USERNAME or DOMAIN/USERGROUP
Check Report builder
2
Ajay

Merci d'avoir partagé. Après 1,5 jours de difficultés, nous avons constaté que Report Server était configuré avec une adresse IP de domaine incorrecte. Il a été configuré avec le domaine de sauvegarde IP qui est hors ligne. Je l'ai identifié dans la configuration du groupe d'utilisateurs où le nom de domaine n'était pas répertorié. IP modifiée et redémarrez le serveur de rapports. Problème résolu.

1
Vijay

Pour SQL Reporting Services 2012 - SP1 et SharePoint 2013.

J'ai le même problème: Les autorisations accordées à l'utilisateur '[AppPoolAccount]' sont insuffisantes pour effectuer cette opération.

Je suis entré dans les paramètres de l'application de service, j'ai cliqué sur Gestion des clés, puis sur Changer de clé et je l'ai fait régénérer.

1
Kevin Cole -MCM-

Je sais que cela fait longtemps, mais cela peut être utile pour les nouveaux venus,

J'ai décidé de transmettre le nom d'utilisateur, le mot de passe et le domaine lors de la demande de rapports SSRS. J'ai donc créé une classe qui implémente IReportServerCredentials.

 public class ReportServerCredentials : IReportServerCredentials   
{
    #region  Class Members
        private string username;
        private string password;
        private string domain;
    #endregion

    #region Constructor
        public ReportServerCredentials()
        {}
        public ReportServerCredentials(string username)
        {
            this.Username = username;
        }
        public ReportServerCredentials(string username, string password)
        {
            this.Username = username;
            this.Password = password;
        }
        public ReportServerCredentials(string username, string password, string domain)
        {
            this.Username = username;
            this.Password = password;
            this.Domain = domain;
        }
    #endregion

    #region Properties
        public string Username
        {
            get { return this.username; }
            set { this.username = value; }
        }
        public string Password
        {
            get { return this.password; }
            set { this.password = value; }
        }
        public string Domain
        {
            get { return this.domain; }
            set { this.domain = value; }
        }
        public WindowsIdentity ImpersonationUser
        {
            get { return null; }
        }
        public ICredentials NetworkCredentials
        {
            get
            {
                return new NetworkCredential(Username, Password, Domain);
            }
        }
    #endregion

    bool IReportServerCredentials.GetFormsCredentials(out System.Net.Cookie authCookie, out string userName, out string password, out string authority)
    {
        authCookie = null;
        userName = password = authority = null;
        return false;
    }
}

tout en appelant SSRS Reprots, mettez le code suivant 

 ReportViewer rptViewer = new ReportViewer();
 string RptUserName = Convert.ToString(ConfigurationManager.AppSettings["SSRSReportUser"]);
        string RptUserPassword = Convert.ToString(ConfigurationManager.AppSettings["SSRSReportUserPassword"]);
        string RptUserDomain = Convert.ToString(ConfigurationManager.AppSettings["SSRSReportUserDomain"]);
        string SSRSReportURL = Convert.ToString(ConfigurationManager.AppSettings["SSRSReportURL"]);
        string SSRSReportFolder = Convert.ToString(ConfigurationManager.AppSettings["SSRSReportFolder"]);

        IReportServerCredentials reportCredentials = new ReportServerCredentials(RptUserName, RptUserPassword, RptUserDomain);
        rptViewer.ServerReport.ReportServerCredentials = reportCredentials;
        rptViewer.ServerReport.ReportServerUrl = new Uri(SSRSReportURL);

SSRSReportUser, SSRSReportUserPassword, SSRSReportUserDomain, SSRSReportFolder sont définis dans les fichiers web.config.

1
Dhruv Patel

Tout comme Nasser, je sais que c'était il y a un certain temps, mais je voulais publier ma solution pour tous ceux qui ont ce problème à l'avenir. 

J'avais configuré mon rapport pour qu'il utilise une connexion de données dans une bibliothèque de connexions de données hébergée sur SharePoint. Mon problème était que je n'avais pas la connexion de données «approuvée» afin qu'elle soit utilisable par d'autres utilisateurs. 

Une autre chose à rechercher serait de s'assurer que les autorisations sur cette bibliothèque de connexions de données permettent également la lecture aux utilisateurs sélectionnés. 

J'espère que cela aidera quelqu'un tôt ou tard!

1
T0t3sMcG0t3s

Le rapport peut vouloir accéder à une source de données ou à un DataView où l'utilisateur AD (ou le groupe AD) dispose de droits d'accès insuffisants. 

Assurez-vous de vérifier les URL suivantes: 

  • http://REPORTSERVERNAME/Reports/Pages/Folder.aspx?ItemPath=%2fDataSources
  • http://REPORTSERVERNAME/Reports/Pages/Folder.aspx?ItemPath=%2fDataSets

Puis choisissez Folder Settings

 Folder Settings

(ou l'individu approprié DataSource ou DataSet) et sélectionnez Security. Le groupe d'utilisateurs doit disposer de l'autorisation Browser

 enter image description here

0
MovGP0

Ce qui a fonctionné pour moi a été:

  • Accéder au site 
  • Cliquez sur "Configurer la sécurité du site"
  • Cliquez sur le bouton "Nouvelle attribution de rôle" dans la barre supérieure.
  • Nommez le nouveau rôle "Tout le monde".
  • Parmi les rôles disponibles, accordez-le uniquement "Utilisateur système"
  • Cliquez sur "Appliquer"

Ça devrait le faire,

Bonne chance!

0
CT

Exécutez BIDS en tant qu'administrateur malgré l'appartenance existante au groupe Administrateurs.