Power BI: Recommendation about Privacy problem - reporting-services

Scenario: In my company, we have an SSAS Multidimensional Cube, and the future Power BI reports will be hosted on internal Report Server on-premise( using Live Connection to connect SSAS Cube ). These reports will be embedded in an internal Web Portal through Iframe.
My problem is: External clients will access these Reports through the Web Portal. And the 'client A' cannot see the measures, filters, data, etc..of 'client B'.
I would like a path/technology recommendation so that I can study to solve this problem in an elegantly and correctly way.
Row Level Security passing the Client ID in the iframe URL would be a good alternative? Other alternative?
Thank You

I would go this route,
Scenario 1:
Let's say you have client A and it has different users (Executives, Managers, Analyst) then would you be sharing all data to all employee!!
You need to introduce a level reporting and then it filter through client ID and level access.
Scenario 2:
You are just sharing it to certain people within client A which has same level access then RLS by client ID would do the job.
There might have more user case and the solution is solely depend on case by case.
I hope it helps!!

Related

Dynamic Report creation

I hope someone here can help.
I have a requirement from my client who is an ISV. They want to develop a solution whereby they want to offer their customer an ability to create any reports from the customer specific database.
What I mean is, we publish the dataset on a portal the customer can then drag and drop the tables they needed, create the joins to create the required report.
Is it possible to do this in PowerBi or SQL Server Reporting service?
Many Thanks
Service Content Pack
It is possible in Power BI by developing an online service content pack. This allows online services to give their customers insight into their own data via the PowerBI.com cloud service. The ISV pre-builds the data model (and some initial charts); the end user doesn't have to worry about joins at all. They can drag & drop the fields that the ISV makes available.
There are some base requirements (it has to be a SaaS application that has an API accessible via the public internet).
More information: https://powerbi.microsoft.com/en-us/documentation/powerbi-developer-content-pack-overview/
Embedding
If the ISV is building their own portal, they can embed SSRS reports on their own website (and use parameters that pass the customer ID from the website directly to each report). This looks like a good place to start: https://learn.microsoft.com/en-us/sql/reporting-services/application-integration/integrating-reporting-services-into-applications. One downside to this solution is that SSRS doesn't allow the end-user to change the reports themselves (no dragging or dropping fields).
You can also embed Power BI reports onto an externally facing website. More information here: https://powerbi.microsoft.com/en-us/power-bi-embedded/
There may be other solutions, such as tools that allow external access directly into SSAS, but I've limited the scope of my response to the two tools you've asked about (SSRS and Power BI).

Single Front-end for multiple SSRS/SQL instances

We have 3 plants all interconnected with high speed WAN. Each plant has it's own SQL server (for it's own applications), but people from all three plants need to run reports on each server. If we host reports locally at each site and point to remote DB's, performance is terrible. IF we logon to SSRS remotely, performance is acceptable as only the screen rendering is across the WAN link, but then employees have to go to three URL's
The most heavily used SSRS server (plant A) has a front-end that is part of 3rd party's product. It has good user access control and lets us control access at the report level. From what I understand, the native SSRS web UI can only control access at the folder level, so we'd end up with huge set of folders to get correct level of access control granularity.
I did think about building my own BI front end. This would present available reports to a user based on a UserID/EmployeeID tuple in a custom table. When the user clicks a report it would simply navigate to the relevant URL (at any site - e.g. http://PlantB.com/reports/report1) (had to put on the .com to satisfy editor.
This did get me thinking: does anyone know of a commercial product that gives a single front end to a farm of SSRS servers. It's nothing to do with load balancing, just a single UI to control access to, and provide a single launchpad for users. So when UserA logs in, they see reports that they are allowed to run. If they are at Plant A and running a report located at plant B, it would simple point to http://PlantB.com/reports/report1
I googled it a bit, but didn't turn up anything
Regards
Mark
I think SharePoint would do the job. You could link to Report Manager reports or folders, add Web Parts to show reports in a SharePoint page, or fully integrate a new SSRS instance with SharePoint.

SQL Server Reporting Services(SSRS) Dynamic Data Souce

I'm a very new user to SSRS. I learned the basic things and am able to make reports using VS 2008 and BIDS. But I can't move further. I want to use the dynamic data source. My issues are:
First the user should input four credentials: a)Server name b) database name c) user id 4) password. It will help to make the connection with database and make the data source. The credential should be stored in session or cookie.
Now the user will be able to see all the reports without giving the credential because he/she has already given them.
I made a dynamic data source but the credentials are asked for every time I open a report.
Any demo project or an articles will be highly appreciated.
It sounds like SSRS alone will not accomplish what you want. SSRS will not provide a good interface for end users to create new datasources, or change existing datasources. There are some potential workarounds that get some of the functionality you desire, such as a method to change servers found at:
http://blog.softartisans.com/2011/04/19/how-to-create-a-dynamic-reporting-services-shared-data-source-using-linked-servers/
(requires the ability to use linked servers.)
But to manage the user session or cookies, you will need more than SSRS. The easiest way to get at this will be with a .NET web site to manage the credentials. It might be able to use a ReportViewer control, or other method of accessing SSRS, such as URL access, to get reporting functionality.

Concerns with using SSAS as an end user ad hoc reporting solution

I am currently evaluating reporting solutions for use within my organization and one of the requirements of the solution must be 'ad hoc reporting' and is defined as 'given an existing report the user will be permitted to modify the data points of the report and, additionally, save the report for later viewing'.
I worked through a basic report using SSAS and SSRS; this certainly worked but I found it to be a little bit to involved with needing to open report builder, specify the cube that should be used, and so on not to mention that the Report Builder (SSRS2K5) is pretty vanilla. The people that will be looking at these reports are certainly not technical people and my concern is that this process will be completely overwhelming. I did find this component and it is much more user friendly since the data source can be set dynamically at runtime and all the user has to focus on is what data they want to see.
Does SSAS/SSRS offer any other methods for ad hoc reporting other than using Report Builder to connect to cubes and going from there? Does anyone know of, or used, any products similar to Active Analysis that they might recommend? Any help would be greatly appreciated!
Excel 2007 and 2010 actually has connection ability to adhoc query and analyze data from an SSAS cube. Excel have a host of features that allows interaction with the cube including using pivot tables and data mining plugins to analyze the data.
simple example here:
http://www.mssqltips.com/sqlservertutorial/2016/using-excel-and-creating-a-pivot-table-report/
SSRS2012 Power View in Sharepoint mode (soon in Excel) - overview is here: http://social.technet.microsoft.com/wiki/contents/articles/3726.power-view-overview-en-us.aspx
Not quite sure what is meant by "user can modify the data points of the report" but with Excel 2007 / 2010 you can use the What If Analysis feature to modify the data in a pivot table. You can also combine that with Analysis Services writeback feature to enable some pretty cool data modelling functionality.
If you're looking for what I call "exploratory analysis" (i.e. you don't know what you're looking for in the analysis) then a product like our ActiveAnalysis component, PowerPivot, or Tableau are all good tools (note that a key difference being that our ActiveAnalysis is a developer component that you can cheaply embed into applications, and the other two are strictly end user tools).
However, if you have users who want to be able to create an "operational report" or they might want to customize existing reports those are probably not ideal tools. We actually created ActiveReports Server specifically for this type of scenario. It is a drag & drop business-user-friendly ad-hoc reporting tool that sounds like it might be more appropriate for the "not technical people" that it sounds like you're dealing with. It does not depend on SSAS and works all inside of a web browser, so nothing to deploy.
Scott Willeke
Product Manager | ActiveReports Server
GrapeCity

Any tools availabe to display Microsoft Access reports on the web?

We're looking for an easy way to display Access reports on the web. These reports have been written and viewed internally for years. They are not simple tables, but more complex charts and graphs. But, now people outside the organization need to see them. All of the data is in access. And, except for reporting everything else is working fine.
We have a web server that has permissions to see the Access database. However, the Access database server cannot be the webserver itself. So, the question is how do we view these reports on the web? This excellent solution, which I reference in case it helps others, (https://web.archive.org/web/20211020135306/https://www.4guysfromrolla.com/webtech/042600-1.shtml) does not apply, as it requires you to be on a company intranet . (Although, it may be possible to implement the solution outside of an intranet, so many security holes would be opened up that the developer leading this project would surely be fired.) If possible, we also do not want a solution that expects every client to install code, for example, the access runtime.
Is there a tool that can read the
access reports when requested? OR
Is there a tool that can upload the
data from the Access database on a
periodic basis and based on the last
retrieved data - it can display the
report that was written in access?
Other solutions ...
Thanks!
print the reports to pdf and then copy the pdf files to the webserver
Options:
output to PDF.
output to Access snapshot format and force users to use the snapshot viewer.
wait for Access 2010 with Sharepoint 2010 and Access Services and you're home free (as long as you can rewrite your reports to be full web reports, i.e., not VBA and only using the capabilities of web reports in A2010).
We deliver an Access app (and reports therefore) over a Terminal Server as a WebApp.