locked
Permissions on new SSRS users with REST API RRS feed

  • Question

  • Hi, 

    I'm currently trying to add permissions on new ssrs users with rest api.

    Currently, I can create new user but as soon as this user is connected to SSRS, I get an error message rsAccessDenied.

    I've searched on the REST API but I haven't found any solution to add permissions for a user to get access to specific report for example.

    Every informations about this will be very helpfull!

    Thanks.

    Monday, January 7, 2019 9:37 AM

All replies

  • Have not worked with Rest API so cannot comment much.

    But as per description provided i believe you have defined Authentication by creating a user but you also need to define Authorization i,e the permissions needs to be provided to that user to access the folders and reports in SSRS.

    ----------------------------

    Please Mark This As Answer if it solved your issue 
    Please Vote This As Helpful if it helps to solve your issue 
    Yuvraj Singh Bais 
    ----------------------------

    Monday, January 7, 2019 9:45 AM
  • Yes, I'm using custom authentication.

    To explain the full project, I'm working on a POC (proof of concept).

    I've an Angular application which have her own authentication module. So when a user is logging to the angular app, I'm trying to open a SSRS session.

    If the SSRS user doesn't exist, I'm creating his account.

    This part wis working fine.

    However, I have to add permissions to this user so that he can see some reports. And I can't find the api rest request to do that.

    Monday, January 7, 2019 9:52 AM
  • Then need to grant Browse on folders and or reports

    # Set Policy on Folder
    $NewFolderPolicyJSON=
    '
    {
        "InheritParentPolicy":  true,
        "Policies":  [
                        {
                        "GroupUserName":  "PF\\Steve.Rogers",
                        "Roles":  [
                            {
                                "Name":  "Browser",
                                "Description":  "May view folders, reports and subscribe to reports."
                            },
                            {
                                "Name":  "Content Manager",
                                "Description":  "May manage content in the Report Server.  This includes folders, reports and resources."
                            },
                            {
                                "Name":  "My Reports",
                                "Description":  "May publish reports and linked reports; manage folders, reports and resources in a users My Reports folder."
                            },
                            {
                                "Name":  "Publisher",
                                "Description":  "May publish reports and linked reports to the Report Server."
                            },
                            {
                                "Name":  "Report Builder",
                                "Description":  "May view report definitions."
                            }
                        ]
                        }
                    ]
    }
    '
    
    $myNewFolderPolicy = Invoke-RestMethod "https://reportserver01/Folders(Path='/Sales')/Policies" -Method put -UseDefaultCredentials -ContentType 'application/json' -Body $NewFolderPolicyJSON
    


    a splashy sig

    • Proposed as answer by Mitarai Queen Tuesday, January 8, 2019 8:04 AM
    Monday, January 7, 2019 2:15 PM