On page 658 under the "Understandning Authentication and Authorization" in the last paragraph it states that ...
" The authorization policies that the report server uses to determine user rights are defined through role assignments that you create in Report Manager. When the user interacts with the report server, your authorization extension evaluates the role assignments adn grants or revokes user access."
I understand the authentication segment but I believe what I need is for the roles to be evaluated by the roles in the custom web application and not the Report Manger. Is this possible or am I missing somehting?
Even with custom security, you need to define role policies in Report Manager, such as assigning roles (groups) or invidual users to folders. The server will pass these definitions to the custom security extension you will write, and your extension has a final say if the role is indeed authorized to perform the action. An example is provided in 19.3.
My requirements are that any member of my custom data store should be able to CRUD reports.
How can I do this without having to add every user in my custom data store to Report Manager?
If I could add a group from my cusom application that would make it easier. Is that possible? How?
It's up to you to determine how the users will be authenticated and authorized. Typically, each user will have an user name and password. However, if your custom application will authenticate and authorize users, why use custom security at all instead of a trusted account between your application and SSRS? Also, if your web application uses ASP.NET Forms Authentication, you should be able to configure SSRS to use the same cookie it as I mention in the book.
I've come to the conclusion that for my application and customers, that I don't want SQL Server Reporting Services or Report Manager. I just want a way my users can create reports and save the report file to my custom application.
I simply want to create reports in the Report Builder that connect to my custom web service that returns DataSets. Then I want to be able to save that report and use it inside my custom application.
If I could do this and have a template that has everything a report needs to connect to my data web service and save that report to be run by the custom application I would be in business. Is this possible? Right now I don't see a way SSRS can help with this Use Case.
The report designer would have two sections. The top section would have a section for the username and password. Once the user logs in they would see other parameters they have access to pass to the report. The parameters that are variable in the report are things like personID and start date and end date. After logging in the report fields should show up on the right for the user to select from to be included in the design. The webservice returns multiple DataTables that contain these fields. After the user designs the report they will be able to select preview to view the report with live data returned from the web service. After the report is complete the user should be able to save the report and the report should be able to stand alone and run. For login; the web service accepts three login parameters. Username, password and sessionID. When in report builder mode the webservice uses username and password until a login is established. When the report is run stand alone it will use the sessionID.
Sure. You can use the ReportViewer ASP.NET control included in Visual Studio 2008/2010 to render the report in local processing mode. Chapter 15 covers this scenario pretty well I think. I am not sure what will be involved in the report design part, but it sounds like you will need also the RDL Object Model to generate the report definition. See section 7.4.5 about RDLOM.
From Chapter 15 running the Report Viewer in local processing mode.
“You might be curious about how you would author report definitions if you don’t have SQL Server 2008 and the Reporting Services report designers. As it turns out, Microsoft bundled a scaled down report designer In Visual Studio 2008, which I’ll refer to as Visual Studio Report Designer. “
"As it stands, this designer is capable of producing RDL 2005 format only, which is the only format supported by Report Viewer local mode. The unfortunate side effect is that your local reports cannot include any of the Reporting Services 2008 design enhancements, such as tablix, charts, and gauges. Essentially, you are stuck with Reporting Services 2005 design support until Microsoft updates the Visual Studio Designer.”
I would definetly need charts and I also need a designer that the user of the application could use to build reports(Designing reports in VS is not an option). It is my understanding that there isn't a designer to do this in local processing mode.
If you use Visual Studio 2010, the Visual Studio designer supports RDL 2008. Note that Visual Studio 2010 ReportViewer supports RDL 2008 in local processing mode so you won't be able to use the R2 RDL enhancements, such as mapping.